SobiPro Templating How To…

Posted on Monday, June 20th, 2011 at 11:51 am

I am not against anyone making money from their great work and the developers of SobiPro are no exception.  However I do believe that if you are providing a solution that is supposedly for free that it comes with some basic documentation on how to use the product.  However to access this basic documentation a ‘club’ membership is required which I feel is wrong, but that is only my view, yours may be different.  During my use of SobiPro I have been compiling a list of how to references on using the SobiPro Template framework and the template language (XSL) used.

UPDATE: Yesterday I decided to trial a Club Membership and bought a 1 month membership to see what the documentation was like, and to be honest I was pleasantly surprised and really do believe that a 1 or 3 month membership is worth it as the documentation is very good.  It fills the gap between what I already knew and what I have been trying to work out.  So if you can afford a single months membership I suggest you get it, or better yet a 3 month membership.  The only thing that they need to consider adding is an upgrade path from a Bronze to Silver to Gold which I think will assure ongoing payments by users as they notice the true value of the documentation. 

Anyone that has previously used Sobi2 prior to SobiPro would have seen the great documentation provided on the Sigsiu website of which, through the use of that documentation, many were able to make their sobi2 site look, work and play as they wanted it to, it was what made sobi2 so great.  That documentation gave quite detailed descriptions, guides and examples on how to create, edit and customise the templates used for the front end of the Sobi2 system.  Unfortunately that information is not being provided for SobiPro unless you obtain a SobiPro Club Membership with a minimum cost of 30 Euro for a single months access.  The developers have decided that any and all documentation is only provided via a Club Membership. that is fine and that is their choice, but I feel the basic documentation should be provided freely with SobiPro just like it was for Sobi2.  Please do not take me the wrong way of not supporting developers for their work, I have bought quite a few add-ons for the previous sobi2 solution and would have again with SobiPro if it went down that same path.

So anyway while starting to use SobiPro I have been compiling my own set of ‘template’ guide notes for SobiPro so that I can refer to them when I need to for any other future SobiPro sites.  This list is not exhaustive and only covers those template functions I have needed so far and therefore is not a complete list of template functions and how to’s.  I am also not an XSL expert by any stretch of the imagination but I am learning thanks to SobiPro.  I also need to point out that all of the information has been gathered from actually using SobiPro with some trial and error to see the end results.  Much of the detail is actually freely available from within the included templates (vehicle section template) of the base SobiPro install, you just need to know where to look.  I have not yet purchased a Club Membership so I have no access to any of that documentation, even if I did I would not divulge the content that is beyond the basics of SobiPro core as that would not be right.  I need to be clear that I am not seeking to take anything away from the SobiPro developers, but rather help other SobiPro users too understand how the template system works and hopefully it will enable them to better utilise SobiPro, just as we were able to do with Sobi2.  If of course the SobiPro developers decide to make the core documentation that contains what I have below and more public, then that is great and is in my view what should have been done in the first place..

Please also note the following is from my own use and testing, there may be more efficient ways of doing some of the below which I have yet to discover and test.  If you are a SobiPro user feel free to submit additions to this post, but please if you have bought a membership do not provide any non core documentation content as that is what you (and others) should be paying for to support the ongoing development of sobi* in general.

Please, I need to be clear here that I am not out to be destructive or negative towards SobiPro or Neo and Trinity at Sigsiu.net.  Far from it, I would like to support it more if I could and I hope by helping others that I am doing just that and not simply seen as being ‘destructive’ as Neo has mentioned here.  I would be very happy to buy a Club Membership ‘IF’ the price for that membership was more reasonable.

The Basics:

Differences between Vcard and Details view

When looking to insert fields into the vcard and the details view there is two small differences between the two.

For vcard view the fields are added by simply prefixing the field you want with field/

For the Details view you need to prefix the fields with entry/field

Some of this is shown below in the examples provided.

Getting a field label:

On the Card view;

  <xsl:value-of select="fields/field_NAME/label" />

On the Details view;

  <xsl:value-of select="entry/fields/field_NAME/label" />

The field_NAME is the actual field name that you wish to have the label for.

Adding text within a field area:

Surround the text with the following code

  <xsl:text>YOUR TEXT</xsl:text>

Where YOUR TEXT is any text you want displayed in or around the field label or field data.

Displaying a fields data:

On the Card view;

  <xsl:value-of select="fields/field_NAME/data" />

On the Details view;

  <xsl:value-of select="entry/fields/field_NAME/data" />

field_NAME is the field to which you want the data displayed

Displaying an Image field:

For a single image in the vcard use the code

  <xsl:copy-of select="fields/field_item_main_image/data" />

For a single image in the detail sview use the code

  <xsl:copy-of select="entry/fields/field_item_main_image/data" />

Where field_item_main_image is the name of the image field you want displayed.

Display a web site URL field as a link (updated).

The field label is of course optional.

For the Card view

  <xsl:value-of select="fields/field_web_site/label" /><xsl:text>: </xsl:text>
  <a>
    <xsl:attribute name="href">
      <xsl:value-of select="fields/field_web_site/data/a/@href" />
    </xsl:attribute>
    <xsl:value-of select="fields/field_web_site/data" />
  </a>

For the Details View

  <xsl:value-of select="entry/fields/field_web_site/label" /><xsl:text>: </xsl:text>
  <a>
    <xsl:attribute name="href">
      <xsl:value-of select="entry/fields/field_web_site/data/a/@href" />
    </xsl:attribute>
    <xsl:value-of select="entry/fields/field_web_site/data" />
  </a>

Where field_web_site is your web site field.

Conditional Publish Statement:

If you wish to check a value and if correct publish or if not then not publish the code is simply

For vcard;

  <xsl:if test="fields/YOURFIELD/data = 'THEVALUE'">
    <xsl:value-of select="fields/YOURFIELD/data" />
  </xsl:if>

For Details;

  <xsl:if test="entry/fields/YOURFIELD/data = 'THEVALUE'">
    <xsl:value-of select="entry/fields/YOURFIELD/data" />
  </xsl:if>

The value is whatever you want to check if something is equal to it, for example is the field equal to 100, you would add 100 in the THEVALUE location.  Take note also that there is no elseif in XSL, you can use otherwise (shown in next how to example) or you can nest additional if statements if you want it to check for more values.

Outputting content without html being shown:

In the xsl value section add the following after the field data

  disable-output-escaping="yes"

so for example on the card view use

  <xsl:value-of select="fields/field_item_detail/data" disable-output-escaping="yes"/>

Or on the details view use (though I do not think you need to for the details view, but here it is anyway)

  <xsl:value-of select="entry/fields/field_item_detail/data" disable-output-escaping="yes"/>

Truncating a fields output:

  <xsl:choose>
  <!-- if YOURFIELD is greater than the MAXLENGTH -->
    <xsl:when test="string-length( YOURFIELD ) &gt; MAXLENGTH ">
      <!-- print out the truncated value followed by "..." -->
      <xsl:value-of select="substring( YOURFIELD ,0, MAXLENGTH )"/>...
    </xsl:when>
    <xsl:otherwise>
    <!-- otherwise print out the whole, un-truncated string -->
    <xsl:value-of select=" YOURFIELD "/>
    </xsl:otherwise>
  </xsl:choose>

Replace YOURFIELD with the field name that you want to have truncated, e.g. fields/field_item_detail/data

Replace MAXLENGTH with the maximum length of the output you want, e.g. 80.

Show more than 15 sub-categories:

If you want to show more than the max subcategories set by the sections General Configuration simply open up the your SobiPro template folder and locate the common/category.xsl file and edit line 28

Change the +1

  <xsl:if test="position() &lt; ( $subcatsNumber + 1 )">

to whatever number you want it to be, e.g. + 30

  <xsl:if test="position() &lt; ( $subcatsNumber + 30 )">

Now up to 45 sub category items will display (if you selected 15 in the General Configuration)

Choosing one value over another, conditional result

This is useful if you want to test a value to have a value and if not then use an alternative value.  For example if I want to check to see if the listing is in a US State I can have two fields, one for US States (field_state) and one for Non US States (field_non_us_state).  I have a select drop down box for all US states, but also one for Non US State. When a user enters their record they can enter either the US State or they can select Non US State and then enter the non US State in the field provided (field_non_us_state).  Now I want to show the correct data for that record, being either the US state or the Non US State, to do this and to cover both options I can have something like this.  Remember the field display differences between Card view and Details view shown above.

  <xsl:choose>
    <xsl:when test="fields/field_state/data = 'Non-US-State'">
      <xsl:text>, </xsl:text><xsl:value-of select="fields/field_non_us_state/data" />
    </xsl:when>
    <xsl:otherwise>
      <xsl:text>, </xsl:text><xsl:value-of select="fields/field_state/data" />
    </xsl:otherwise>
  </xsl:choose>

The above will check via a choose command to see if the first value is correct and if so it will apply that data, if not it will then move to the next option and that being the US State. It is kind of like an IF statement but less messy as it will choose the correct result.

Adding the Category Name to the page heading (content).

When you view a page within your SobiPro front end you will see the section name as the component heading name on all pages, while this is good I wanted to also add the category name to that title as well.  So instead of just having Business Directory at the top of the page I can now have Business Directory – Category Name.  It is very simple to do.

In your template folder and the category folder select the view.xsl file and add

   - <xsl:value-of select="name" />

after

  <xsl:value-of select="section" />

to end up with

  <xsl:value-of select="section" /> - <xsl:value-of select="name" />

The Result will be your SobiPro Section name and then the Category name.

If you want the same also added to an entries details page (entry/details.xsl), the code for that is slightly different, add

   - <xsl:value-of select="entry/categories/category" />

after

  <xsl:value-of select="section" />

so you end up with

  <xsl:value-of select="section" /> - <xsl:value-of select="entry/categories/category" />

Now you will have the Section and category name displayed on the top of the page.

Outputting the date of entry or date of update in a format you want.

I wanted to display the date an entry was added and last updated which is easily done by using the following (for details page)

  <xsl:value-of select="php:function( 'SobiPro::Txt', 'Date added' )" />:<xsl:text> </xsl:text>
  <xsl:value-of select="entry/created_time"/><xsl:text> | </xsl:text>
  <xsl:value-of select="php:function( 'SobiPro::Txt', 'Last time updated' )" />:<xsl:text> </xsl:text>
  <xsl:value-of select="entry/updated_time"/>

However the output of the date comes out like this 2011-08-09 00:00:00

I wanted it to only show the date and as date/month/year, to do this I was able to change the date format by using the built in FormatDate function, like this

  <xsl:value-of select="php:function( 'SobiPro::FormatDate', 'd/M/Y', string(entry/updated_time) )" />

You can use different date formats by using the correct date codes for php found at http://php.net/manual/en/function.date.php.

Note if you want to add the dates to your vcard you will need to change;

  string(entry/updated_time)

to

  string(updated_time)

Replace the jquery modal box with mootools slimbox.

For unknown (and quite frankly a poor decision) reasons Sigsiu has implemented jQuery for its javascript requirements over mootools which is the preferred javascript framework for Joomla.  Having jquery also as part of your site on top of mootools can cause conflicts and result in unpredictable outcomes and output to your web site.  So I am on a path to remove jquery from SobiPro completely, but this is the start, the thumbnail to full size image view in the entries details page.

The example provided to start me off is what is provided in the ‘vehicles’ template, the code for the modal jquery pop up image is written as

  <div style="float: right;" id="SPGallery">
    <a class="modal" >
      <xsl:attribute name="href">
        <xsl:value-of select="entry/fields/field_image/data/@original"/>
      </xsl:attribute>
      <xsl:copy-of select="entry/fields/field_image/data/*" />
    </a>

You will need to edit the details.ini file and replace

  js_files = "jquery,details,box"

with

  js_files = "slimbox"

and replace

  css_files = "default,details,box"

with

  css_files = "default"

Now the code I am using in my details.xsl file to replace the modal one (shown above) is the following, you can style it differently if you want;

  <div style="float: right;">
    <a rel="lightbox">
      <xsl:attribute name="href">
        <xsl:value-of select="entry/fields/field_entry_image/data/@original"/>
      </xsl:attribute>
      <xsl:copy-of select="entry/fields/field_entry_image/data/*" />
    </a>
  </div>

The @original is what is used to create the link to the original file. this is what is shown when the user clicks on the thumbnail image.  Ensure that in your SobiPro field for your image that you have set the thumbnail to be shown as default in the details view.

You will also need to obtain slimbox – get it from http://www.digitalia.be/software/slimbox but remember that slimbox2 uses jquery, so get slimbox 1.7x.

I then copied all of the slimbox css and placed it into the default.css file for my Sobipro template, and likewise copied the images into the css folder as well.  I copied the slimbox.js file to the js directory of the template I am using, which you referenced already above.  Save it all.

That should be it, test your SobiPro front end and details view to check that it is working for you.

Setting a Default Category for those sections with only one category

Thanks to KST for help in working out this solution

First identify the ID of the category you will use as your default.

Add this line just after the last div in the default template / entry / edit.xsl file, where XX is your default category.

<input type="hidden" name="entry.parent" value="62" id="entry.parent"  />

Then delete lines 26 to 46

<div>
  <div>
  <label for="entry.parent">
    <xsl:value-of select="php:function( 'SobiPro::Txt' , 'TP.CAT_BOX' )" />
  </label>
  </div>
  <div>
  <xsl:copy-of select="entry/category_chooser/path/*"/>
  <div style="clear:both;"/>
  <div style="float:left; display:none;">
  <xsl:copy-of select="entry/category_chooser/selected/*"/>
  </div>
  <div style="float:left;">
  <button type="button" name="parent_path" id="entry_parent_path">
  <xsl:value-of select="php:function( 'SobiPro::Txt' , 'EN.SELECT_CAT_PATH' )" />
  </button>
  </div>
  <div style="clear:both;"/>
  </div>
  </div>
  <div style="clear:both;"/>

Save and test.

Adding alt and title text to an image

When developing your site you should always ensure that you use an ‘alt’ and ‘title’ tag for all of your images.  SobiPro however does not provide this by default so you need to build that into your template;

Lets say for example you want to have a main image on your entries details page, first you need to create the image field, lets just call it ‘field_my_image’ for this example, here is how the code needs to look to enable it to use an alt and title tag

<img class="spFieldsData">
  <xsl:attribute name="title">
    <xsl:value-of select="entry/name" />
  </xsl:attribute>
  <xsl:attribute name="alt">
    <xsl:value-of select="entry/name" />
  </xsl:attribute>
  <xsl:attribute name="src">
    <xsl:value-of select="entry/fields/field_my_image/data/img/@src" />
  </xsl:attribute>
</img>

What we have done here is split up the img src code into segments so we can control what is used and how it is displayed. For the ‘alt’ and ‘title’ tags I have chosen to use the entry name field, you can of course use another specific field if you want.  As can be seen I have set a value for the title, the alt and of course the image itself,  The end result is your image is displayed and now includes alt and title in its source.

The same can also be done for the vcard view, you simply need to remove the entry/ part of the fields code, so that would look like this;

<img>
  <xsl:attribute name="title">
    <xsl:value-of select="name" />
  </xsl:attribute>
  <xsl:attribute name="alt">
    <xsl:value-of select="name" />
  </xsl:attribute>
  <xsl:attribute name="src">
    <xsl:value-of select="fields/field_my_image/data/img/@src" />
  </xsl:attribute>
</img>

Nice and Easy :)

Showing a field only if it contains data.

This is a variation of the check for specific data as I have provided above, but since this was asked for specifically here is the way to do it.

Basically what you are about to do is simply check that the field contains data, if it does then show the field (and other data linked to it) otherwise do not show that field at all.  This is a basic IF statement that checks for a null value.  This example uses a filed named ‘field_name’ just substitute that for your field.

In the vcard view

<xsl:if test="fields/field_name/data != ''">
  <div>
    <span><xsl:text>Field Name: </xsl:text></span>
    <span><xsl:value-of select="fields/field_name/data" /></span>
  </div>
</xsl:if>

In the Details view

<xsl:if test="entry/fields/field_name/data != ''">
  <div class="spField">
    <span class="label"><xsl:text>Field Name: </xsl:text></span>
    <span><xsl:value-of select="entry/fields/field_name/data" /></span>
  </div>
</xsl:if>

Simple hey :)

… more to come as I use SobiPro more and more

Oh if you want to post some code for me to see what issues you are having use the code button and then use ‘&lt;‘ in place of  ’<’ and ‘&gt;‘ in place of ‘>’

Share

Tags: , , ,

139 Responses to “SobiPro Templating How To…”

  1. Jansen Says:

    Thanks for this. I payed for the documentation and yours has more useful info than theirs does. Their business model is stupid :(

  2. Greg Says:

    Thanks for that, my how to is still in its initial development as I am still learning how to use SobiPro, as I identify other tips and tricks I will add them to this post, probably end up making it a page so it is easier to find too once I have a longer list of helpful hints.

  3. Jansen Says:

    Found out some additional info that I couldn’t find anywhere.. I hate having to literally guess and check over and over to get this to work.

    Display a single image:

    Display a single field also needs entry/ in the select or it wont work

  4. Greg Says:

    Thanks for the comment, if you have any tips yourself then add them here as a comment and I will expand on this blog post so everyone can benefit from them.

    GW

  5. Anita Says:

    Hi, thanks for putting this out. Would like to know how to display the description along with the label? Which file do I need to modify?
    I created the fields through Field Manager and filled in the description of each. I’d like this to display.
    Also – what is the Notice box for?

  6. Greg Says:

    In the Field Manager there is an option to select where you want the field displayed by using the ‘Available In’ drop down select, the choices are Both, Details, V-Card and Hidden. Under that there is also the select box to show the label or not. Notices I am not sure yet, I have not used it…. I’ll update here when I figure it out :)

  7. komir Says:

    I try to create some template for sobipro by my needs.
    I just started so I still testing.
    In my basic template I try to add custom field what I created in “field manager” name is “field_slika”.

    I try to add t in my detail.xls template

    Slika


    But it is not showing in fronted

  8. komir Says:

    I forgot to say I put that field Available in both

  9. komir Says:

    I create wrong first post
    correct is
    I try to create some template for sobipro by my needs.
    I just started so I still testing.
    In my basic template I try to add custom field what I created in “field manager” name is “field_slika”.

    I try to add t in my detail.xls template

    Slika


    But it is not showing in fronted?
    I put that field Available in both

  10. Greg Says:

    Hi

    Sorry I don’t have an answer yet but I will try and take a look and get back to you, have you posted your request on the SobiPro Community forums?

  11. Greg Says:

    Hi, you will have to enter the filed as it is in the fields manager, so something like ‘field_Slika’. you then add the field to your template using something like

    <xsl:value-of select=”fields/field_NAME/data” />

    Where the field_Name is the full field name of your field, maybe field_Slika

  12. Chris Says:

    Hi,
    I am a little bit sad what’s going on here. I read your posts in Sigsiu.NET Forum and I see, what you are doing here. The thing is, generally I agree to what you are saying, at least to your basic statements: The business model can be considered, a better documentation for non-members can be given and so on. But is it the right time to demand this right now?

    SobiPro is a Release Canditate. Everyone who’s using SobiPro is doing this in one’s own responsibility. Everyone who is willing to pay for a membership at this point of time do this because he’s full of good intentions. That is the meaning of the “RC” at the end of SobiPro 1.0. I think, we all CAN be full of good intentions. Sobi2 is quite good, SobiPro will be very much better.

    SobiPro ist new. That means, the community and the help from it can’t be as big as for Sobi2. And it means, we can’t expect to much. If we are unsatisfied with the features or whatever, the only way can be to wait for it. At least it is in my opinion no good idea, to waste the developers time with unneccessary discussions. I know, that neo works the whole day to create this component line by line. That is the best he can do for me. So let him, please.

    I see, you are a fan of Sobi, otherwise you would not make such effort. what you are publishing here is nothing spectacular. Everybody with some basically technical skills should be able it to figure out by itself. So in my opinion is nothing against to publish it in the Sigsiu.Net Forum – so far asked for (!).

    And if you think, a better documentation is neccessary, why not, sit down and write one. But in this case you should start with the basics. 1.) What is SobiPro ?, 2.) For what can it be used, 3.) How to install, 4.) System requirements, 5.) What to do, if an installation failes, 6.)Overview, 7.) Fields, 8.) Applikations, 9.) Templates and so on and so on.

    That would be great!

    Kind Regards
    Chris

  13. Greg Says:

    I thank you for your comments, and I do agree with them, however I do believe also that what I have done here does not detract or show any negative view of SobiPro. My aim is to support and help others that use SobiPro, which is also my aim on the Sigsiu forums, while also providing feedback to the Sigsiu team. While some of that feedback might not be liked by them it is still feedback and should be taken solely as that.

    I do realise my how to guide is not a complete set of documentation for SobiPro, it was never meant to be and was not my goal to do so. What I have done is to simply try and provide something similar on how to use the templates similar to what was done for Sobi2 here. While you may not think it is spectacular or of added value, I can say that many others have greatly appreciated the guide I have provided, simply because they do not have the necessary skills to find what I have done easily. You will also note I do mention that what I have provided is available already within the existing templates, there is nothing new in what I have provided, just in the way I have provided it.

    I am not sure what you mean by the ‘right time’ as when is the ‘right time’? People like myself are using SobiPro now so now is when many are wanting some help with the basics for template designs. I can say this as I have had a significant number of thanks for providing what I have, far more than what I would have expected.

    I do realise it is an RC and I do wish to support SobiPro, however the cost for membership, in ‘my opinion’, is simply too high. I have as I mentioned before supported Sigsiu via purchasing multiple add-ons for Sobi2 and also providing support when I had the time on the Sigsiu forums as well as write good feedback on Joomla JED. I can hold my head up and say yes I have supported Neo and Trinity. I can also confidently say I will support them again with help on the forums and I will most probably will get a membership eventually, unless of course a third party provides alternative add-ons at a fixed price per add-on.

    What I am negative about is the ‘requirement’ to get a Club Membership for core documentation. I would also prefer to have seen a buy the add-ons separately too like it was for Sobi2. Maybe they can reconsider and offer both options.

    My posts on the Sigsiu forums are not wasteful, in fact they I feel have been helpful. Yes I have said I again do not like the Club Membership set-up but that is provided in good faith as feedback and that is all. The fact that some are sensitive to the discussions simply shows an inability to look at the topic of that discussion with no emotion and without looking at it from all sides.

    I also need to be clear that I thank and fully support and fully appreciate the work Neo and Trinity do, I have always done that and have done so repeatedly.

  14. Chris Says:

    Greg,
    all I wanted to say is: be patient. That’s all.

    Regards
    Chris

  15. Greg Says:

    Thanks Chris, but be patient about what, the final release of SobiPro, what will change when that is done, the Club Membership requirements will still exist correct?

  16. Chris Says:

    …maybe, maybe not.

    But I am sure that the number of available extensions/fields/applications in less than one year will be much bigger. So far I know is Sigsiu.NET planning to stagger the availability for Bronze-, Silver- Gold-Members. In my opinion makes this sense. When I’m not wrong, currently are all available extensions accessible for all Club -Members. The number of the extensions is of course at the moment not high, but the price for a Bronze-Membership is 30 €, and this is not really much. This includes a basically support (for example installation) a first small but indead useful dokumentation, also some tips and tricks.

    We can be in two minds about the Club Membership requirements. But I am also sure, that the Sigsiu.NET will change their concept by themselfes, when they see, that the users will not agree with it and are not prepaired to pay.

    Last but not least: An update from a RC to a stable version or later to a higher version is everytime possible without a Club Membership. Especially security releases will be given for free for all users. I don’t know how to make an update for J1.5, but it’s easy with J1.6 and higher, without data lost.

    But let us stop this discussion know. Let us simply wait and see.

    Kind regards
    Chris

  17. Greg Says:

    Chris, not all extensions are available to all Club Members, Bronze membership does not get one of the add-ons as far as I know, I am guessing that list of not available for bronze will grow. While 30 Euro may not seem much as an Aussie that is closer to $50 which in my opinion for a single months access is way too high, if it was 6 months then I would say OK.

    I do hope that Sigsiu do change their model for selling SobiPro add-ons and support. I would have thought a Club Membership for more detailed Documentation, Tips and Tricks and also Priority forum support, and then the add-ons to be purchase individually with valid renewal for at least 6 months, prefer 12. Patches for the core SobiPro should be freely available as should the basic documentation to use SobiPro.

    Again cheers for your discussion, it is good to get a view point that is balanced.

  18. Kathy Says:

    I need to impliment an if statement in the xml vcard template file that will show the “TITLE” field only to users that are registered on the website. Not to the Public. Reasoning is that I don’t want the public to click to the details display page. Only registered users can do this.

    Thanks for your post. I have paid twice for the Bronze Club Membership and found this info very helpful.

  19. Greg Says:

    I have not had to do what you are asking but I am sure there is a way to do it, but sorry at this stage I do not know. I think your first thing to do it take a look at the SobiPro access Control section and trial different settings to see if you get any results. Otherwise I am sure there is a way that you can do check to see if a person is logged in, is the owner and then display or not display the fields specifically. If I find out how I will post back here, otherwise your best bet is that if you have a Club Membership that you ask for help on the Club Membership forums.

  20. Kathy Says:

    Thanks. I’ll post when I figure it out.

  21. steve Says:

    i dont normally leave feedback etc just as i dont have enought time as it is! but what you have done here has saved me hours of work and would just like to say thanks ! also i am a member of the sobi club but am using this page as a guide !

  22. Greg Says:

    Thanks for the feedback, I hope to keep adding to my guide to help anyone that needs it. Can I ask though if you have a Club Membership has it been worth the cost to have it? I ask as I am considering getting a single months membership just to be able to access the full documentation to fill the gap between what I do already know and what I don’t. How complete is the real documentation?

  23. steve Says:

    if i was you yes prob would pay for the month personally me not that good with code and still miss how easy it was to edit sobi2 with php! sobi pro is taking me alot longer to work out but the protential for what you can do with it is very good . Also if you did become a member of the sobi pro club there are also more applications you can download.
    my problem at the mo is working on one template but would also liike to add some fetures from another tabs on the resarant template if anyone can help me add tabs would save me some time!

  24. Greg Says:

    You are right, the Membership was worth it, well at least the 1 month was, though I may consider an upgrade to a 3 month membership if they had an upgrade path from 1 month to 3 months.
    For anyone considering a membership I will say this, the documentation is very good, albeit still some parts to be done for the most [part it is well written and easy enough to follow and does fill the gap between what I do know and what I needed to know.

  25. Chris Says:

    I am happy to hear that you became a club member, and more happy I am, that you are satisfied with the things you found there. This way I can support you. And I really hope, that Sigsiu.Net will honor your efforts at any time and will give you a free membership (at least for a time). The SobiPro Club needs people like you, without them it would be a poor club. Keep it up!
    Chris

  26. Bernie Says:

    I am now in the second silver-Clubmembership. it’s me not succeeded in building a robust website using sobiPro. My profitably site is still under sobi2.
    I think I have paid for beeing a betatester. With sobiPro we come from one problem to an other. We have to wait for sobiPro stable.
    Bernie

  27. Greg Says:

    Bernie what issues are you having and have you used the Sigsiu forums to ask for help?

  28. Bernie Says:

    Hi Greg, some of my dont-likes of sobiPro:

    There is no possibility to choose the entries, you want to display in Entries Module. You can only display the hole section. “featured listing” is not possible.

    It is not possible to use different templates in different categories, sobi2 can do this.

    It is not possible to find quickly the new entries they are waiting to be approved.

    The filter in “all entries”-view in Backend disappears when you select a category.
    The backend is very slow.

    and

    SobiPro is very slow.

    And every new feature gives new problems. I have over 100 posts in Forum. Some Problems I have had are solved, and some are still alive.
    But is was very hard work and many trouble with my customers, because the start for my new site was planned for may/June2011 :-)

  29. steve Says:

    this has nothing to do with sobi pro but wondered if anyone could help

    what i am trying to do is get a user to choose a predifined group on registration eg employer jobseaker etc all belong to registered so when they login they can ony see bits of the site entended for them is this somthing you can help me with or even do for me at cost of cause!

    thanks for your time steve

  30. Greg Says:

    I have yet to test the entries module for SobiPro but you may also want to take a look at the Joomla JED as I recall there is another third party add-on that does similar things that might be better for your needs.

    In relation to speed, all I can say is that compared to sobi2, SobiPro is so much faster for me, probably because we had 9 clones of sobi2 which caused resource issues for us, while SobiPro has none of these issues.

    Do you have a Club Membership, better support is provided for membership, even if it is only for a month. Many try and help in the community side of SobiPro help forums but like me we have to be careful not to just copy and paste answers from the paid for manual and documentation…. not an easy thing to do :)

  31. Greg Says:

    Steve sorry I do not have an answer for you, nor can I help with the project, I would suggest you post a job request on the Sigsiu forms and hopefully someone can help you.

  32. steve Says:

    Hi wondered if you could help i am a beginer and stuck on making somthing show in v card i have made it show in details




    images/.gif


    i understand i had to change
    to

    but its the bit where it needs to put an image i am stuck with

    images/<xsl:value-of

    if you could have a quick look at this code and tell me where i am going wrong would help me pulling my hair out!

  33. steve Says:

    sorry code didnt show in my lat post so dont make any sence!

  34. Wise Says:

    Hello there, im trying to display data from a sobipro field but the field want to contains or some script codes (like facebook fanpage etc..). When i use the in details view i get the script like pure code, and no the result! If i use the default “xsl:for-each select =”entry/fileds/*” the script works, but i cannot add custom css to every field as i would like! Is there another xsl code to display the result of script and no the code?

    Thanks for your time guys, hope to find a solution asap!

  35. Greg Says:

    Hi, to help I would really need to see the code you are trying to use. If you are wanting to add a class to a field use the CS Class field in the field parameter of each field.

  36. Greg Says:

    Yes sorry for site protection code is not allowed in comments, you are welcome to use the contact form and send me the code to have a look at. Cheers

  37. aam Says:

    Hello, nice help you are offering.. How do I edit the entry form, for example so I can have two fields on the same line, or specify a if filled in, display, else hide rule please?

  38. Rudi Roux - web designer Says:

    Hi there i am trying to add a calendar field to entries ……….any help is appreciated…thanks

  39. nai Says:

    Hello

    thanks of you.

    if maybe please take several description about php template for sobipro.because i saw that we could also use of php for template.but how?

    xls is very limit for me.i need to call php template for sobipro.

  40. Greg Says:

    You may wish to look at the Pro Membership for one month as there is an add-on that does exactly what you want, plus this will give you access to most other add-ons and also the full documentation. What you do with the documentation access and how you make it available to yourself beyond that first month is your choice :)

  41. Greg Says:

    I am not sure really what you are asking, are you saying how do you implement php in the xsl template? If so I cannot help. While I think the use of xsl was a backward step for sobipro I am getting more familiar with it and it does actually have quite a bit of flexibility once you know how it works. Again getting a single months membership will give you access to the full documentation which will help you further. If you need the documentation longer than one month but do not need anything else there are ways in which to make that happen :)

  42. Greg Says:

    To edit the entry form have a look at your template folder and in the ENTRY folder and take a look at the edit.xsl file. You can create your own edit.xsl file to replace the original one and then add each form element as you want into that page.

  43. Ronald Says:

    Thanks for a super useful guide! As a novice xml user I just have one basic question… how do I stop the fields being loaded automatically by the template? With your guide I have managed to display the fields successfully, even do some layout but then underneath it still loads the fields from the original template? Which lines should/can I remove to get this done without getting a 500 error? :)
    Hope anyone can help.

    Thanks,
    Ron

  44. Greg Says:

    Ron, first if you are using the ‘default’ template stop and create your own template, to do this just make a copy of the default template and then use that. To remove the default output of the fields you will want to remove the part that starts with <xsl:for-each select=”entry/fields/*”> for the details template and <xsl:for-each select=”fields/*”> for the vcard template, that section of the templates ends with </xsl:for-each>. See how you go :)

  45. Kim Says:

    Thanks for the useful info. Do you know if Sobipro listings can be fed out by rss?

  46. Pet Says:

    I have subscribed to the club. It is good but gosh hard to find how to login because it is on the shop site not the main site.

  47. Greg Says:

    Now that you have subscribed to the SobiPro you can see in the documentation how to use RSS, if not get back to me and I will help you further :)

  48. Greg Says:

    Yes, I guess it was the only way for them to separate the two and control who does and who does not have access to that part of their site. I still think that the price to get a membership is too high but they are not listening to that feedback at all.

  49. Rene Says:

    Great web page Greg. I happen to agree with you about the membership for SobiPro being too high. I downloaded their RC and I could not make heads or tails of it. But the worst part was that it was riddled with bugs. So I tried to go to a forum but I had to pay. When I went to the community forums I was not able to post because I have a Hotmail account (which is not allowed). When I clicked on documentation I was directed to a membership page.

    My first impression was: here is an extremely expensive product that does not work and there is little hope of getting it to work. I think that the developers can get away with their business model because there are no other multi-directory components that I am aware of (in the JoomlaVerse).

    I commend you for putting together this page and I hope you expand into in-depth tutorials. I think that people will get a subscription to SobiPro simply for the updates. Holding back the documentation does not make much business sense (to me anyway).

    I am looking for other alternatives to SobiPro.

  50. Greg Says:

    Thanks Rene for your kind words. I am planning to make some more edits to that page soon with a few more tips and tricks, the problem is however I need to make sure it is not seen as me giving free access to the SobiPro documentation, which I have not done and will not do since it is not freely available. That said I will be making some added guides on specific elements and use of SobiPro, these would have been available with or without access to the documentation…. so stay tuned, I will be making some updates soon.

    Oh and as for alternatives there are a few if you do not need a multi directory component. Some work out cheaper for 12 montsh if you cmpare the SobiPro 12 month membership cost, even though there is an upfront cost for the core component. That said though the core SobiPro is free and for many that is more than sufficient to fill the directory needs for most, or get a 1 month membership to get the add-ons as well.

    The next BIGGER issue however is that SobiPro is a massive resource hog and can be very slow to respond, DB queries for example if you use a SobiPro module can go from 30 DB queries without the module to over 430 DB queries with a module, I have yet to test speed and optimsation on its other components as well. Unfortunately SobiPro has not been built for optimised speed at all which if you have a large directory could make it unusable, I am still testing that myself.

  51. Rabideagle Says:

    Hello,

    I stumbled across your site while I spend hours searching for help with tweaks to SobiPro. Thank you for all the helpful hints! I spent money for the club membership once already simply to ask a question about this programs abilities. Essentially my $42 answer was “thats not supported at this time”.

    I have no issue paying for this program, but a re-curring expense for the documentation? Really? Why not just charge for the program itself?

    Anyway, of course 3 days after my bronze membership expires I find another question. I hate to pay $42 for an answer of “nope” so I was hoping someone here could help.

    Is it possible for the CATEGORY to be included somehow in the search feature? I’ll explain. My site is a business directory with a main section and multiple categories and subcategories. Lets choose Lawyers. I have Legal Services as a CAT with sub-CATS divorce lawyer, civil lawyer, business lawyer, etc……

    Heres the problem. You go to my site and search simply “Lawyer” and get ZERO results! Only way results show is if they are any part of the field data. What is the sense of creating categories and subcategories with descriptions if that description text and CAT title isn’t searchable?

    Thanks for any thoughts on this…..

  52. ole Says:

    Hello guys,
    I have been using SOBIPRO for 2 weeks (i am quite new then…) and I am encoutering a basic problem… I made some spelling mistakes in my categories titles and I changed them but when I publish the changes they do not appear on the website, I refreshed everything and I cleaned all possible caches everywhere but the changes are not published….. does anyone know what is the trick here???

    thank you very much!!!!!!

  53. Greg Says:

    Not sure at the moment, when I get a chance I will try a few tests and if I figure out what you are asking for I will certainly post back. Access to that documentation can be easily done post expiry… you just need to make it accessible yourself… if you know what I mean (without me actually saying it).

  54. Greg Says:

    Hmm, interesting, never seen that happen as I have not had to fix a type in a category (yet), but I will certainly try it out and get back to you in a day or two :)

  55. ole Says:

    Thanks Greg,
    I will wait for your answer…. just to add, that changes do not reflect either on sub-categories.. if I add new things the “new things” (categories, subcategories, whatever) do appear, but not the modifications in something already existing…..

  56. Rene Says:

    Hi Greg,

    I think you should expand the documentation on SobiPro into a book. Authors have been doing this since the dawn of computers. SobiPro is charging for updates, forum support, and the ability to look at their documentation. But maybe their documentation is poorly written or does not make sense to me. Maybe your documentation is much better and would save me time and frustration. As an author you could legitimately write tutorials (tips and tricks) explaining how to better use SobiPro. There is nothing wrong or illegal about this. Besides, if you don’t do it, someone else will. I am sure you can even charge for the info.

    I have heard that SobiPro is a resource hog. So I am looking at using Mosets Tree (with different templates) as a multi-directory.

  57. Greg Says:

    I have done some testing and I was able to change the spelling of a category, sub category and also entry and in all cases the front end showed the correct path and the correct changes made, I could even change them back to being miss-spelt., Q. Did you also change the ‘alias’ spelling too for the category you corrected the spelling for?

  58. Greg Says:

    You are welcome to write a book yourself, just remember to give credit when you use another authors content. I neither have the health or the time to invest into writing a book and hence I have done what I have done, if you need more in depth help I suggest you purchase a membership at Sigsiu.

    Yes SobiPro is a resource hog, and quite a bit too, I agree, but mosets is not a whole lot better, plus it is not multi directory like SobiPro is.

  59. ole Says:

    Hello Greg,
    thank you very much for your quick repply. Indeed I changed the alias as well but it has not effect on the website. The changes are taken into account in the backend but not in the website…. strange isn’t it??

  60. Greg Says:

    Check your email :)

  61. ole Says:

    Hi Greg, sorry I did not get you message “check your email”…
    what does my email has to do with this!?? ( I am completely lost now…)

  62. Greg Says:

    Sorry ole I have been unable to answer comments etc due to illness. I said email as I sent you an email message with possible further help I may be able to provide. I note however yo have this being discussed on the SobiPro forums, which is probably a better place anyway.

  63. Aaron Says:

    Ok, so my only question is how do I test if a field is blank and not display? I’ve tried quite a few things that other xsl websites suggest but it just makes the page error out :\

  64. Greg Says:

    Ah an easy one, I like easy ones :) , here is an example, lets say you want to display the contents of a towncity field in your v-card only if it has data, what I am doing here is saying if not empty then display the results, otherwise do nothing.

    <xsl:if test="fields/field_towncity/data != ''">
    <xsl:value-of select="fields/field_towncity/data" />
    </xsl:if>

    If you want this to work in your details entry just add ‘entry/’ before the fields part of the code.

  65. Aaron Says:

    Ha! that did it. I also had a damn typo that probably led me astray hours ago. I’m in your debt

  66. Greg Says:

    Happy I could help :)

  67. Amy Says:

    How do I tell it to open a data link in a new window? I have the link showing and working properly, but when it is clicked, it opens in the current window. I want it to open in a new window. In regular HTML, I use the target=”_blank” tag, but I don’t know what to do in this case. Thanks!

  68. Greg Says:

    Which link do you want this applied to?

  69. Angel Says:

    Hi…
    Thanks for your work Is great…. I worked with sobi2 and it was easy to edit with some help I could have my wesit well done. Now I try to use SOBIPRO but is much more difficult to understand how its estructure and code Works. I was a silvermember this summer but I couldn’t install the templates It was a wast of time and money trying to take help that is clearly adapted to persons that are experts or have skills in XML and its not my case… I have some skills in HTML and php and i can understand the changes that its need it do for to have the directory and templates I need but with the sobipro templates is more difficult and the support is not what is need it. I would like to install correctly the sobirestara template but somebody tell me that this template it was only for test `?“ So between the problems linked to the RC versions and the bugs I just lost the oportunity to have my website working and after the bad experience with the silver membership I stop the proyect waiting foe somebody that can help…
    Do You know if its posible to install and use sobirestara ?? Ihave it but with a bad install.
    I need a good doc or a help. I can pay for help if need it But I will not return to the sobi forum until they have a version that works and offers a real support.
    Sobi needs to make a reflexion… Are they selling a product or a support… and whats means support.
    Thanks in advance

  70. Amy Says:

    For the displaying website field as a link. When the link is clicked, I want it to open in a new browser window. Right now, it opens in the current window causing the person to leave my site.

  71. Greg Says:

    Hi Angel

    Sorry to hear the issues you are having still exist even after a silver Membership. I assume you have read through the documentation, (and made a local copy for future reference). The manual does actually provide some help, but as yo have said unless you understand the workings of XML even the manual can be confusing. The manual and the forum replies as you say are not helpful for anyone without more detailed knowledge of the framework used by sigsiu. I suspect the reason for xml was to ensure a requirement of support. They have also implemented the use of jquery while it is VERY clear that Joomla uses and recommends that developers use mootools when available,m which for all aspects of SobiPro there is a mootools alternative… anyway I am rambling :)

    Yes it is possible to install the sobirestara template, you will need to install it via the sobipro Template Installer, select the Template Manager button on the front SobiPro admin page, and to the top right is an button to ‘install new’. That is how to install new templates.

    Learning xsl is time consuming yes, but the rewards are worth it, w3c schools have some helpful learning tools as do other sites on the net. Having said that though if sigsiu stayed with php/html it would have been much easler to manage, modify and maintain, but they have not done that so we must learn some xsl.

    To learn a little about how SobiPro templates work may I suggest you extract all the templates you have and take a look at the templates code in each one, that is a great way to see how to call, create and modify fields for your own template. I suggest you do not use one of the default templates but instead duplicate the one you want to use or install a completely new one. I have plans post New years to start providing some SobiPro templates free for use, keeping them simple will be the key.

    Re support from the focums, the key here is to ask the question and if you do not understand the answer say so, as in sorry I am not sure how to edit X file to do Y result, and hopefully someone can guide you further. I have plans to write a shorter more plain english SobiPro manual in the new year, but as for when it will be complete I am not going to set a date, it depends on my health and also time etc. The fact as you have highlighted is that the existing documentation is too technical for many that would like to use SobiPro.

    Sorry if my reply does not answer your questions, but feel free to use my Contact form for specific help.

  72. russel Says:

    hi, nice documentation sir!
    i would like to ask if anyone can show me how to make the add entry category as drop down not the annoying tree like category.. please help thanks!

  73. Greg Says:

    This option is explained in the sobipro documentation under ‘Create an Alternative Category Chooser’, however I am sorry I cannot provide it here as that would be in violation to the Sigsiu copyright of the documentation as you must be a member to get access to that. I suggest you purchase at least a single months membership so you can access and retain a copy of the documentation for later use.

  74. Jill Says:

    Hi! I paid for a membership as well. I am using the sobirestara template. You saved me hours of work.

    I paid for a silver membership, had a delay in starting the website, and now my membership is expired :) Murphy’s law, huh?

    Anyway, do you know the syntax for to put “No listings were found in the category (CAT NAME) at this time” or something along those lines for cats or subcats that are empty? It seems very weird to just return nothing at all.

  75. Jill Says:

    Also, when browsing a category, if there are no listings in the category, but there ARE listings in its subcategory, it isn’t showing it at all, with no way to navigate towards it.

    to be honest, I wish I would have investigated this further. I assumed that sobipro was an improvement upon sobi2. I didn’t realize it was an RC. my bad.

  76. Jill Says:

    Just a followup to my last comment…after much digging around, that problem seems to be limited to the sobirestara template. It won’t show the subcategories in the Category View. It will do it in the Section View. I posted a new topic on the free section of the forum for sobipro troubleshooting. It looks like a bug in the template.

  77. Samy Says:

    I need to know how to sort the entries on entry list on 2 fields

  78. Greg Says:

    Unfortunately that is how there membership works and if you don’t use it you lose it. I have always been against their membership system but that is just my opinion. Sorry I don;t use the sobirestara template at all, I have tested it yes but I am not proficient in how it works. I will have a look at it later and see if I can see anything.

  79. Greg Says:

    I did not think SobiPro was an RC anymore, v 1.0.4 is out which is set as stable. There should be a setting in the general config where you can have it display subcategory items. I will take a look at it later to confirm this and post back.

    SobiPro is in fact a new solution and not an update from sobi2. I guess it depends on how you look at it and what you need it to do, for me it is a big improvement over sobi2, especially cpu resources of which sobi2 was a shocking resource hog.

  80. Greg Says:

    Ah I thought as much, cheers for posting back with that info.

  81. Greg Says:

    Hmm, not sure if this is what you are asking, so if not get back to me. In the sections General Configuration under Template Data at the bottom you can choose how the Alpha is sorted, you can choose by more than one field.

  82. Tom Says:

    Greg – I’m sure you remember me from working on Sobi2 in USAHorseSource.com and, well, other parts of the project.
    First, let me state I only stumbled upon this site/page as a result of looking for xls aid on SobiPro. I’ve had 2 memberships within the SobiPro Club and “only” to download necessary software. I’ve had little to no help from Sigsiu and I hope that Chris reads this. I’ve been very unhappy with the costs surrounding SobiPro. I’m not opposed to pay for something. But for what are they charging? Certainly not the support because it’s not there.

    …enough of that…

    Question. I have multitudes of fields in the entry form. I’m trying to add a javascript window.open (I have the code and it works well) to “each” of the fields. Each field would have a different document it opens – all for help files. I know where and how to add a field that does similar if I only want to open 1 window for each of the links found that say “Help”.
    But I want to have each field name be a link that opens a help box for just that field.
    I know it can be done but I don’t know enough about xsl to figure out the attribute and whatever else needs to be added to the template, which is certainly where the code will go. I’m thinking that, somehow, the xls that inputs the name has to go into the link…but I’m clueless on how.

    Do you think you’d be able to aid in this?
    By the way – KUDOS for you to have this information outside Sigsiu.NET. I think Sobi2 was a great product and the documentation was extensive. But they fell down on SobiPro. It’s a year after the stable release and still no method of migration. As you know, I used a simple php script that another user created and successfully migrated more than 6,000 entries from Sobi2 to SobiPro. Why can Sigsiu.NET come up with a script that works that well? If they made it free to all users I’d send the script so they could make a mod from that. I don’t understand their philosophy.

    Thanks.
    Tom

  83. Greg Says:

    Tom, I am not 100% sure I understand what you want but is this correct? You want to have the label of each filed to be a click-able link to either a new page or popup box?

    When creating form fields you have an option to add a description of that field, have you tried that? I am sure you have but maybe that is just not enough for you. OK lets look at the entry form which I think you will need to create a custom form for what you want. If you are not already doing so make sure you are using a template of your own and not just the default one. YOu can do this by simply duplicating the default template and calling it whatever you want, i.e. directory1.

    Before I go into this to far have you seen this post on the Sigsiu forms, is this similar to what you want – http://www.sigsiu.net/forum/community-board-for-sobipro-discussions/does-any-one-knows-if-there-a-custom-text-field-for-sobipro/msg125458/?highlight#msg125458

    The form itself resides in the components/SobiPro/usr/templates/directory1/entry folder with the file name being edit.xsl. You will need to create each field with its own label, which you can then make the label click-able if need be.

    Example for a text field you can use something like

    <span class="label"><a href="your link or javascript">Lable Name</a>:</span><xsl:copy-of select="entry/fields/field_name/data/*" />

    The above can also be edited for text areas, check boxes and other field types as needed. You will just need to remove the default field layout in the edit.xsl file., remove everything from between

    <xsl:for-each select="entry/fields/*">

    and

    </xsl:for-each>

    If I have misunderstood what you wanted get back to me and I can give some further help.

  84. Tiffany Says:

    Hello There,

    What a useful page. Anybody should be able to write about their findings and to share them is a bonus. Thank you. I have downloaded SobiPro and will eventually buy a months subscription, but rather join with some knowledge behind me so I can build on that knowledge, rather than plod through the documentation as a newbie.

    I have completed categories and fields. I have followed your guides, but I am stuck with the cars template and any adjustments are not showing front end?

    I do not suppose you know how to sort this problem out.

    Tiffany :o )

  85. Tiffany Says:

    Sorry I must elaborate, last message a little confusing.

    I have a property listing website with just two categories.

    I am using the SobiPro default template.

    I cannot find a way to show a thumbnail picture on the category lists page, which I believe to be the V Card.

    I have added the code, have also tried to add further fields but nothing showing on V Card.

    This is the code, for example, but I input my own field names.

    I hope somebody may be able to help.

    Tiffany

  86. jose Says:

    hi, thanks for info but I still have a problem trying to show url as link, does not work for me, instead the original details view works correctly while showing the url as link

    any idea please?

  87. jose Says:

    I wrote yesterday for same thing, I´ve realised that the problem comeswhen user are able to put name to their website URLs, then the http exit is like that for an entry with this data

    name testname
    url http://www.google.com

    tha exit is testname

    wich results in a link that leads me to http://mysitedomain/google

    and I don´t understand why, because the default template shows it nice

  88. Greg Says:

    Thanks for the support :)

  89. Greg Says:

    Are your entries displaying on the category page at all? I am going to assume yes, but just that the image/thumbnail is not showing?

    Are you using the default template or a copy of the default template? Recommend you use a copy or duplicate of the default template and call it something else.

    To add an image to the vcard check that the image field is set to display on the vcard or both, unless that is done it will not show on the card, also check it is published/enabled.
    If you are inputting your own field names then the default template might conflict, the default template auto shows all fields that have been assigned to the vcard or both on the vcard display.

    Adding the image to a vcard is simple, that code being;

    For a single image in the vcard use the code

    <xsl:copy-of select="fields/field_item_main_image/data" />

    For a single image in the detail sview use the code

    <xsl:copy-of select="entry/fields/field_item_main_image/data" />

    Where field_item_main_image is the name of the image field you want displayed.

    Get back to me if I have misunderstood your request with a little more info, if you need to paste code replace < with < and > with > for it to show up in the comments, wrap that in

    
    

    . (you can do a search and replace within most txt editors, try notepad++)

  90. Greg Says:

    Hi again, sorry my suggestion did not help, may I ask you to send me the file so I can see the code via my contact form please at http://thatnetsite.com/contact-me/

  91. Greg Says:

    Jose, as per my other reply can you send me your code/file via my contact page. I can then take a look and see what you have and why it’s not working.

  92. Tom Says:

    Greg – Just wondered if you got my last post. I don’t see it here, but I had posted some specific code and questions.
    Tom

  93. jose Says:

    ok, I´d just sent it

  94. Greg Says:

    Tom I did do a reply to your post, have a look further up in these comments to see it, it was not that long enough. If it was an additional question feel free to post it again.

  95. Greg Says:

    Ok, I will take a look at it as soon as I can :)

  96. Greg Says:

    Thanks and got it, a fix has been sent to you via email. though for everyone else here is the answer.

    Code used by you for the website field was

    <div class="website">
      <img style="height:24px; width:24px; float:left;" src="../../../../../../images/icons/website.png" />
        <a target="_blank" rel="nofollow">    						
        <xsl:attribute name="href">
          <xsl:value-of select="entry/fields/field_website/data" />
        </xsl:attribute>
        <xsl:value-of select="entry/fields/field_website/data" />    
      </a>
    </div>

    This results in being provided the url as being http://yoursite.com/the-entry-name, but what is wanted is http://the-entry-site.com

    Error is the use of the data in the field which then uses the title provided or added or the URL after the local url, i.e. your url.

    The fix (see the Changed Line)

    <div class="website">
      <img style="height:24px; width:24px; float:left;" src="../../../../../../images/icons/website.png" />
        <a target="_blank" rel="nofollow">   						
          <xsl:attribute name="href">
            <xsl:value-of select="entry/fields/field_website/data/a/@href" />   (Changed Line)
          </xsl:attribute>
        <xsl:value-of select="entry/fields/field_website/data" />    
      </a>
    </div>

    And it now works as it should being the url of http://the-entry-site.com with the correct title being what it has been entered to be.

  97. Allen Says:

    Good article thanks for the useful tips : )

    Has anyone found a way to include paragraph breaks in the entry display view? The field data is all bunched up. I’d like to include a paragraph (or line break) between some field info that is displayed to make it more presentable and readable eg. name and adressmore info…, etc.

    All and any help appreciated.

  98. Tom Says:

    Hi Greg,
    Thank you for your response back 02/01. But that was only close to what I needed. Apparently my response to that post never posted – for whatever reason.

    What I need is to figure out how to have “each” different field have a separate pop-up using the javascript code. For example:
    field_name would use a pop-up for help on entering a name.
    field_description would use a different pop-up for how to enter a description and where that will appear.
    field_intro would use yet another pop-up for help on where the text would appear and how much the user can write.

    Each field_? would have a different link to an independent html with text instructions for that one field name.

    Does that make sense?
    The default fields in the admin side of SobiPro don’t provide anything that grabs the users attention.

    Can javascript be added to the “Suffix”, “Notices” (not sure where that appears or how to use that field) or “Description”?

    Thanks.
    Tom

  99. SashaO Says:

    Hello, I am new user of Sobi Pro, and I have the same question like Rabideagle :”Is it possible for the CATEGORY to be included somehow in the search feature? “. I have the “solution”, it is ugly but working solution.
    First thing is that admin must to create its own select field (“Category” or “Section” label) , and in that field write/put names of all categories (no need for sub categories, only parent categories). That field have to make searchable like list. And, than in all entries admin have to do clone/copy of entri default category. After that step, category select field will be in a search view.

    Second step is to make extended search to be default open (add comment at line 33 in usr/templates/default/js/search.js …or if you want you can delete that small js file).

    Third step is to remove extended search button (usr/templates/default/search/view.xsl from line 29…, or another option is in CSS).

    Fourth step is to remove default search field, radio buttons and top submit search button. I have done that with editing com_sobipro/lib/views/search.php lines 63, 81,99 (from true to false), and 152 (from false to true). After that we will have bottom submit search button.

    And five step (not important), add a part of lines from usr/templates/default/entry/details.xsl (from line 56…:if test=”count(categories)…) to usr/templates/default/common/vcard.xsl (allmost at the end…). After that in search result will be written and path to entry (just like in details view “Located in:…”).

    After all five steps you will have category selectable search options, and good visual results (for all who wants to create bussines directory).

    Thats it, sorry for my bad english, and this bad tutorial. BR

  100. Cutback Says:

    Hi
    In the General Configuration part of my section I am trying to change the Number of Entries per Page from 15 to show all.
    Can anyone indicate which file / code I should change.
    This is to overcome the issue of non page indexing due to page 2 of a list of entries being a canonical url which references your first category page.
    Thanks

  101. dglite Says:

    this had been very useful, thanks!

  102. Greg Says:

    There is a way to do this within the template code, have a look at my post and the code provided above in my post for clues. My count is used for categories but the same can be applied to entries. I will get the code for you later and edit this reply and my post above with the answer :) . Stay tuned :)

  103. Greg Says:

    Sorry I have not replied sooner as I have been ill and this often takes days to recover from. I will take a look at your request soon and reply with a solution if I find one.

  104. Greg Says:

    Sorry I have not replied sooner as I have been ill and this often takes days to recover from. I will take a look at your request soon and hopefully have a reply for you soon

  105. Greg Says:

    Hi take a look at the code that SobiPro generates and utilise the classes provided to adjust how the details look. like spfield for example you can apply a specific css for that to style it the way you want. This is far better than adding paragraph tags in the front end code for the output. To view the code and the styles used may I suggest you use Firefox with Firebug installed to see the code for any and all elements on your site.

  106. jose Says:

    hi, is there possibilitie to show a field if it has data and don´t show it (even it´s label) if it does not exist?

  107. jose Says:

    hi again, how can I add an alt text and title to an image a sobi pro entry image?

  108. Greg Says:

    See the post above, I have now included the answer to your question in my post :)

  109. Greg Says:

    Simple enough, I have now included that answer in my post that has been updated above.

  110. jose Says:

    hi again, I´ve written sometimes because I´m looking for something

    Once I asked to have a listing of items listed by image, being the key field the name field) I´ve got it

    take a look http://www.opticos-optometristas.com/foro/memberlist.php?mode=viewprofile&u=1805

    simply configuring the field to be shown in vcard and details

    now I want to have an alt and title with the image, the answer you provide, does not work for me, sorry

    any other way to achieve this

    thanks in advance

  111. jose Says:

    sorry the URL is incorrect, this is the correct one

    http://www.opticos-optometristas.com/index.php?option=com_sobipro&sid=65&Itemid=196

  112. speedy Says:

    Hi, Greg

    Thank you for this great site! I think we should start a “unofficial support forum” for all “non-sobiproclub-members”. What do you think?

    Cheers

  113. Liam Says:

    Hi Greg,

    Great work here, found some of the things useful. I do have a query though. I am not too technically minded, I am more of a designer but I have been tasked with building a directory. I am using SobiPro’s Business Directory with Packages template. My issue is that I want to style the vCard however the elements I edit in the vCard are affecting those same elements in the Detailed View.

    I am editing the default class of “spField” but obviously this is the class for fields in both vCard and Detailed View.

    How do I go about changing the class names within the vCard view so I can style this differently?

    Any help here would be greatly appreciated.

  114. Greg Says:

    Hmm, not sure why yours does not work with the code I have provided. I have this working on a SobiPro install with 10 sections and all are working properly. It may be a conflict with another plugin or similar. Have you tried the code within a copy of the default template?

  115. Greg Says:

    Sorry no about the forum, it is better to keep forum discussions at sigsiu.

  116. Greg Says:

    Yes the style sheet classes affect both the vcard and the details view. For the css you can prefix every style for the details view with #SPDetails so for the spField for the details use #SPDetails .spField {} in your css file. Just remember to use the #SPDetails .spField {} after the default spField entries.

    To edit the actual vcard template you will need to have a look at the /common/vcard.tpl file, likewise for the details view have a look at the file entry/details.tpl. Both are located in the \components\com_sobipro\usr\templates\templatenmame directory.

    Hope that makes it clearer

    GW

  117. Greg Says:

    Can you send me your template as a zip file so I can take a look and maybe see the code that is causing the issues? Use my contact form on this site.

  118. Liam Says:

    Hi Greg,

    Thanks for the tip on styling vcard separate.

    I’ve encountered another problem that I just can’t get my head around and was wondering if you or anyone else had encountered it.

    When I use the default template, the edit entry button on the front end works perfectly fine. However when I switched to the business template with packages the edit entry link appears in the url bar however the page is blank…..

    It’s got me tearing my hair out.

  119. Losa Posta Says:

    Is this posible when in section let say hotels we have categories 3* 4* 5*

    and when i get in3* i gel list of hotels, click on name we get detailed info, and in some template
    Start Prev 1 2 3 Next End like a pagination

    but can we below that have rest of the entries from that category as a table of content (no pagination needed), we want to have it built in template not as a module. Can sobipro achieve that not sobi 2

    Please someone

  120. Sergey Says:

    Could You please answer me how I can show Icon of image field?
    @original – is for original image. What query need using for Icon of this field?

    Thanks!

  121. Maria Says:

    I hope your health is better. Thank you for creating this entry on your website.

    I’ve been pulling my hair out with SobiPro for three days. I’m at a crossroad where I need to decide if I should invest more time into it or scrap my losses. Unfortunately there isn’t a competing Joomla addon at this time. I’ve thought about buying JReviews just for the modern design and seemingly ease of usability.

    I haven’t purchased their club membership. I’m undecided as I don’t know xml and don’t know if I want this frustration right now over a directory website. It is also scatter to read many purchasers got no resolve after buying. Their price is too expensive. I think they are failing to see their mambership is not a complete time saver. I don’t mind buying products for Joomla but as a designer I want to pay for convenience also.

    Anyway…have you been able to figure out pricing plans? I’m trying yo wrap my brain around it. Does it create duplicate directories in the frontend? Was it a seamless process?

  122. Maria Says:

    …grammatical errors due to my Kindle failing to read my mind correctly.

  123. raz Says:

    hi
    Please help me.
    How can we to display the entries on an author?

  124. Cartman Says:

    Hi Greg. You seem great at Sobipro and I have a problem that I haven’t found any answers to. I feel stupid because googling doesn’t show that anybody else have the same problem.

    I have the following configuration: section/category/subcategory/entry (sometimes there may be yet another subcategory)

    In the main section view I see the vcards for my entries.
    In the category view there are no vcards.
    In the subcategory view I see the vcards again.

    Why dont they show in the category view?
    Link http://ambiductor.com/en/products

  125. Len Renda Says:

    Hi there, thanks for a very informative site into the guts that make Sobi work.

    I am trying to change the details view, but not the actual layout of the page itself, but rather wish to break up the info of the listing itself, which is all “squished” up, if you know what I mean.

    I would like to put in a couple of breaks between the info, for example, have a before the field “Areas of Expertise:” and “Qualifications”, etc.
    I would also like to add headings like “Contact Details” above the contact fields.

    However, when I view entry/details.xsl or try finding looking into common/entries.xsl, it does not show the fields as I would see them if I was on the details page and selected to view the source, where I can see all fields in the entry listed individually.
    From what I can see with my limited knowledge of XSL, based on line 7 in the details.xsl called entry_details, and line 17, for each…entry/fields, it currently just pulls them globally.
    I assume I will have to write in each field, pulled from the entry based on the listing name or number and apply the format I want to have.

    Hope it all makes sense.
    Thanks in advance
    Len

  126. Len Renda Says:

    Sorry , I see code is stripped ( I knew that, but forgot)

    In the following line, there was a “line break” at the ……

    I would like to put in a couple of breaks between the info, for example, have a …… before the field “Areas of Expertise:” and “Qualifications”, etc.

    Thanks
    Len

  127. Greg Says:

    Just a quick note to everyone, Sorry I have not been around to reply to your questions, I have not been well. I will try and get to them over the next week.

    Thanks

  128. Len Renda Says:

    Hi Greg
    The questions posed here are not in the least bit important in the bigger picture!
    Given the fact that you are dealing with health issues, I am amazed that you even apologize for not responding!
    I understand you passion (I can see it on this webpage) but your health and family come first.
    Wishing you all the best, and that you recover as speedily as possible.
    Ignore all of us and concentrate on your health.
    PS. While writing this reply, I was again browsing through previous posts and found what I was looking for, so ignore my previous posts.
    Thanks and God bless.
    Len

  129. Greg Says:

    Thanks Len for your kind words.

  130. Greg Says:

    Liam, firstly can I make a very strong recommendation and that is NOT to use any of the default templates. If you want to use either of them, make a duplicate of one of them and edit the template xml file and call it something else. Once you have a template you are happy to use then you can ask for some specific help, also state if you want help with the vcard or details view. It could be pointless for me to suggest changes to one or the other default templates when you decide to use a custom one. I hope that makes sense. Either way the edit button will be placed where you see the code for

    vcard view

    or for details page

    You can place that in any location you want it to be displayed on your template

  131. Greg Says:

    am not really sure what you are asking, is it that you want other entry vcards displayed on the details page of a single entry? If so it is not something I have done, but I do think it could be achieved by adding some specific code from the section view to the details view. Sorry I cannot specifically provide that code as it will take some considerable time to work that out and provide it. Personally it is not what I thin you should do – but that is just my opinion.

  132. Greg Says:

    Hi Sergey, use one of the following depending on your needs, the …data is the usual access like fields/fieldname/data

    …data/@icon – for icon
    …data/@image – for image (re-sized original via your settings)
    …data/@thumbail – for thumbail
    …data/@original – for original

    Hope that helps

  133. Greg Says:

    Maria, sorry I am not really sure what you are asking, can you be more specific please.

    In relation to SobiPro membership I believe it is worth getting at least a one month membership to which you should use extensively and ask for help in the SobiPro forums as the developers can provide more help than I can. It will also give you access to the documentation that is actually quite good and very helpful… longer access to the documentation can be achieved if you are clever enough :)

  134. Greg Says:

    Are you asking for Sobipro to show all entries for a specific author? Yes this can be achieved, the answer however is quite long to put into a comment, so I will add it to the main post later for you, give me a couple of days to get to it :) . Alternatively you could become a SobiPro Member and see the answer in the Tips and Tricks forum.

  135. Greg Says:

    This is by default entries are not displayed on categories. You could however have a look at the code in the sections view and try adding something similar to the category view. Or alternatively use a SobiPro module to show the entries on the Category view by also using something like modules anywhere and place the module in your sections general section description. There is help in the SobiPro documentation for this but I cannot share that here as it would not be right.

  136. Len Renda Says:

    Hi Greg
    I hope this inquiry finds you in much better health. Me, I am really losing it here!

    I have tried just about everything I can think of, and then some!

    This post on the Sigsiu community forum… mentions the AIContactSafe component which can be used to add a contact form onto the Sobi listing
    The code in this topic (https://forum.sigsiu.net/community-board-for-sobipro-discussions/contact-form-36196/10/) mentions

    11. Place the plugin code in your Sobipro details template: (note: the pf=3 is your form profile id)

    {aicontactsafeform pf=3|use_css=1|aics_recipient_email=|aics_subject=}

    If I paste the below code in a new article, it works fine. (see test under module “recent articles of interest”) on http://www.myadvisor.co.za

    Yet everything I try to get the contact form to show on the end of the listing will not work.
    Obviously I am doing something wrong!!!! I just cant figure out what!!

    In the listing, I even tried it by created a new field, and setting it up as follows: text area, allowing html with no filters, parse content.
    I then edited an entry, and in this new field, I pasted the above code, but still no contact form!

    I tried alternating between the setting in section config/general config/ template data/parse template data=yes/no, and the parse content=yes/no in the field properties, but still no joy!

    I tried pasting the following:

    into various locations in the details.xsl, but it either broke it, or reflected some of the code directly, or did nothing!!
    This is driving me TOTALLY nuts!! Can anyone help before I land in the looney bin!!!
    Len
    PS. I will check after publishing if all the code gets stripped again.

  137. Len Renda Says:

    Ok, code stripped again :(

  138. Greg Says:

    Len, try using the following when adding your code,

    < for all < and

    > for all >

    Do a replace in your code and then post the code again.

  139. Greg Says:

    Hi everyone that has made a comment question and is waiting a reply, sorry I have not been well. I will be going through the questions over the next few days and hopefully post them with a solution. Again sorry about the delays.

Leave a Reply