Return to Linking Profiles
Configuring Front-end Profile Listings and Forms in Joomla! Sites
CiviCRM includes the ability to expose Profile forms and listings, as well as Online Contribution Pages, to users and visitors of the 'front-end' of your Joomla! site. This section covers adding Profile pages to your front-end site menus. Refer to this page for contribution page setup.
1. Create one or more Profiles (sets of fields for input forms and/or search and listing pages).
Refer to the main Profiles Admin page for an overview and general information on creating Profiles.
2. Verify that the Profile(s) that you want to include in your front-end site menu(s) work properly in the your Joomla! Administrator interface.
- Navigate to the following URL to test a search/listings page:
<site root>/administrator/index2.php?option=com_civicrm&task=civicrm/profile&reset=1&gid=N
- replacing N with the ID of your Profile
- Navigate to the following URL to test a contact create/sign-up form:
<site root>/administrator/index2.php?option=com_civicrm&task=civicrm/profile/create&reset=1&gid=N
- replacing N with the ID of your Profile
- Navigate to the following URL to test editing a logged in user's form:
<site root>/administrator/index2.php?option=com_civicrm&task=civicrm/profile/edit&reset=1&gid=N
- replacing N with the ID of your Profile
- Note the ID(s) of the Profile(s) you want to add to your front-end menus - you'll need them shortly.
3. Modify your index.php file to support CiviCRM front-end functionality
 | This Step is Required for Joomla 1.0.x ONLY This step should be skipped for Joomla 1.5 which has built in session support for the front end. |
CiviCRM Profile and Online Contribution features require a session to be started in order to function properly. You will need to patch the front-end index.php page to accomplish this:
- Open <site root>/index.php in your favorite editor and find this line. (note that the below line might be slightly different based on your exact version of Joomla!.
$mainframe = new mosMainFrame( $database, $option, '..', true );
You may need root privileges or special permissions to edit this file. Add the following lines ABOVE the "$mainframe..." line you just found.
session_name( md5( $mosConfig_live_site . '_frontend' ));
session_start();
4. Add menu item(s) using the Administrator menu manager
- Login to Administrator if not already logged in.
- Click Menu on top navigation bar and select the menu you want to add the Profile link to (for example - mainmenu).
- Click New icon (top right).
- Click Component radio button (top right entry in Components group).
- Click Next.
- Enter a Name for the menu item.
- Choose CiviCRM from the Component list.
- Complete the remaining fields (Parent Item, Access Level, Published) based on your requirements for this menu item and click Apply icon.
- The screen refreshes with the Parameters section fields now available.
- Choose CiviCRM Task - Select Profile Search and Listings OR Profile Create (for new contact input form).
- Ignore the Contribution ID field (this is used when creating a menu item for Online Contribution Pages).
- Enter the Profile ID using the numeric ID value you noted in the section above.
- Do not modify the Profile Reset field value (it should always be 1).
- Repeat these steps as needed to add additional Profile menu items.
Joomla 1.5 Steps:
- Login to Administrator if not already logged in.
- Click Menu on top navigation bar and select the menu you want to add the Event link(s) to (for example - mainmenu).
- Click New icon (top right).Click CiviCRM link from the Internal Link list.
- Enter a Name for the menu item.Complete the remaining fields (Parent Item, Access Level, Published) based on your requirements for this menu item.
- In the Parameters-Basic section (upper right):
- Choose CiviCRM Task - select Profile Search and Listings OR Profile Create (for new contact input form).
- Ignore the Contribution ID field (this is used when creating a menu item for Online Contribution Pages).
- Enter the Profile ID using the numeric ID value you noted in the section above.
- Do not modify the Reset field value (it should always be 1).
- Repeat these steps as needed to add additional Event menu items.
 | Fixing Problems with Module Visibility The visibility for Joomla modules are based on menu links (ItemID). Some CiviCRM forms exposed through the frontend will lose the url-based connection to their menu item as you navigate deeper into the form, and consequently any modules associated with that menu item will disappear. To work around this, create a new menu for link generating purposes, set it to the "Special" user or hide it in a non-visible module position. Then create a url menu item and enter the url of the page that experienced the disappearing modules. Return to your module settings and add this new menu link to the list of pages the module should be visible on. |
5. Navigate to your front-end site and test out the your new menu items.