JLex Review Documentation

Installation

1. Requirements

  • Joomla version: 3 OR 4
  • PHP:
    • PHP Extensions: ZIP Library
    • PHP Extensions: GD Library
    • PHP: [magic_quotes_gpc = Off]

2. Download & Install

Apply for new installations & upgrades. Before proceeding, always remember to BACKUP your site first.

Get the latest version of the JLex Review at the download page: https://www.jlexart.com/downloads

At the admin section of your website, follow these steps:

  • Joomla 2.5 & 3: Extension > Modules
  • Joomla 4: System > Manage > Site Modules
Select Upload Package File tab > Select the downloaded file to install.

3. Activate The Extension

* Applicable from version 5 and above.

After a successful installation, access component: Components > JLex Review

This extension is required to activate for use. You need to go to the download page https://www.jlexart.com/downloads, COPY the License key (Click Create button if not already) and PASTE it in the activation window.

You can not activate? Please add Domain + Site access at the download page and open a private topic HERE.
Note: This activation occurs only when the new installation or upgrade.

Use

Create a Review Page or Customers Testimonials

  1. Admin Site > Menus > Main Menus > Add New Menu Item
  2. At Menu Item Type > Select > JLex Review > Review Page
  3. Fill Menu Name and Alias > Save

You want to create a review page but through the module? See here.

Integration with available extensions such as VirtueMart, K2...

  • Visit the Add-ons page, find your extension and follow the instructions.
  • If the extension is not on the list, please open the request HERE.

Data Import

You can import data from CSV files or directly from supported extensions, including:

  • Hikashop
  • VirtueMart
  • JComments

With CSV, make sure the file contains enough of the basic fields:

  • Reviewer
  • Content
  • Score Rating
  • Date

Once you have the CSV file, GOTO JLex Review > Import & Migration > Select File and follow the instructions.

→ To import data from existing extensions, GOTO JLex Review > Import & Migration > Migrator

Add and Edit review form

GOTO Configuration > Review to add or edit review form. The Default form is used for new items. You can also change the default form if there are two or more forms.

Form interface:

The form supports 7 different types of fields:

  • Rating
  • Textarea
  • Text
  • Select
  • Radio
  • Checkbox
  • HTML Code

Use many different Review Forms

You can change the form for the item by going to Items > Select Item > Review Form > Save

If you have already integrated the JLex Review into Joomla Article, K2 or VirtueMart and want to apply the form to some categories, use the Sections.

GOTO Sections > New

Inside:

  • Object: content, k2 or virtuemart (The lowercase name of the extension, NOT contain any special characters.)
  • Section ID: Category ID of these extension. Enter 0 (zero) to apply to the entire extension.

Note: After making changes, you need to access the Items section and delete all the items that have been modified (if any). The new items will automatically assign to the form just set.

Rating Label

Used to replace the default label for the rating level.
From: 1 star, 2 stars... 5 stars
To: Terrible, Poor... Excellent

GOTO Configuration > Review > Rating Label:Yes to change:

The output:

Summary Board Review & Form

Anti-Spam

Captcha

CAPTCHAs provide challenges that are difficult for computers to perform but relatively easy for humans. Used to limit spam.
See instructions for installation and usage in the Add-ons section.

Blacklist

Tools to block members or guests (by IP address)
GOTO Blacklist > New to add new row:

Anyone on this list cannot add reviews or comments.

Report

The tool recognizes feedback on reviews or comments that are not positive.

Activate this feature by going to Configuration > Restriction > Reporting : Review Only | Comemnt Only | Both. Also enable Reporting permission in the ACL. See here

Notification

Administrator

Property Value Default Value
Email(s)
Email address to receive notifications. It are separated by commas.
Blank Blank
Review None | Both | When added | Modified Both
Comment None | Both | When added | Modified Both
Sending Method Immediately | CronJob CronJob
Quick Moderation
View, delete or publish reviews, comments from mail.
Yes | No Yes

User

Property Value Default Value
Comment a review
Get notified when someone comments on your review.
Yes|No Yes
Reply Comment
Get notified when someone replies to your comment.
Yes|No Yes
Thanks Email
Send a thank you email to the reviewer.
Yes|No No

CronJob Setup

To enable notification for members, or admin (if you choose CronJob) you must add the CronJob command in the notifications section to CronTab.
Most Hosting or Server UI provide this tool.

Login & Social Integrations

Login

The default login system of JLex Review is a dialog box that includes functionality to use a Social Network account (if it has been set up).

You can switch this login method to a Joomla default login page or URL address.
GOTO Configuration > General > Login Method: Dialog | Login Page | Custom URL

Note: Without using JLex Review's default login method, the Social Integrations feature may not work.

Social Integrations

GOTO Configuration > User to get started:

Facebook

  1. Visit https://developers.facebook.com/
  2. Login to Facebook
  3. Click My Apps in top right of screen
  4. Click Create App
  5. Choose Build Connected Experiences
  6. Fill App Display Name and App Contact Email > Click Create App
  7. At Products Page , select Facebook Login > Setup
  8. In the sidebar > Facebook Login > Settings
  9. Add the value taken from Admin Site (JLex Review Configuration > User > Facebook > OAuth Redirect URIs) to Valid OAuth Redirect URIs of Facebook settings > Save Changes
  10. From Sidebar > Settings > Basic > Fill all informations
  11. Switch In developement to Live mode
  12. Copy App ID and App Secret to JLex Review Configuration.

Google

  1. Visit https://console.cloud.google.com/
  2. Login to Google
  3. Select Manage Project > New Project > Fill Project Name > Create
  4. Wait for the project creation process to complete > Select newly created project to continue
  5. Navigation Menu > APIs & Service > Credentials > OAuth consent screen
  6. Set User Type is External
  7. Fill out all required information > Save and Continue
  8. Click Add or Remove Scopes
  9. Select userinfo.email and userinfo.profile > Update
  10. From Sidebar > Credentials > Create Credentials > OAuth Client ID
  11. Select Application type is Web application
  12. Add the value to URIs in Authorized redirect URIs. (This value is taken from JLex Review Configuration > User > Google Redirect URIs )
  13. Click Create button to complete
  14. Copy Your Client ID, Your Client Secret to JLex Review Configuration

Twitter

  1. Visit https://developer.twitter.com/en/portal/dashboard
  2. Login to Twitter
  3. From the sidevar > Projects & Apps > Overview > Create App
  4. Enter App Name
  5. Copy App key and API secret key to JLex Review Configuration
  6. From Twitter App > Click App Settings
  7. Scroll page to Authentication settings > Edit
  8. Enable Enable 3-legged OAuth
  9. Add the value to Callback URLs - This value taken from JLex Review Configuration > User > Twitter Callback URLs
  10. Enter Website URL > Save

VKontakte

  1. Visit https://vk.com/apps?act=manage
  2. Login to VKontakte
  3. Click Create button
  4. Fill out all required information
  5. After the application is successfully created, from sidebar of app page > Settings
  6. Copy Secure key and Service token to JLex Review Configration

Profile Extensions Integrations

JLex Review supports sync of avatar & link to profile with the following extensions:

  • JLex Comment
  • EasySocial
  • EasyBlog
  • EasyDiscuss
  • EasyProfile
  • K2
  • Community Builder
  • Gravatar (Avatar only)
  • JomSocial
  • Kunena

GOTO Configuration > User > Integration to get started.

Rich Snippet

JLex Review uses a JSON-LD structure to display an item's rating score on the search results page

To enable this feature, GOTO Configuration > General > Rich Snippets : Yes
By default, the Schema will be Product, you can change to another suitable schema like:

In case the page already have a Schema and you just want to insert the aggregateRating property, you need to insert the review body in that element that assigned this schema. Also GOTO Configuration > Advanced > Only Average Rating: Yes.

Configuration

Below are the main features. See full in the admin section of The Demo Site.

Property Description
Term of Use
Emoticon Emoji picker for review & comment form
Language Filter Filter review by language. Apply for multiple language site
Find review Tool to search review by keyword
Embed Embed summary rating of item to another sites
Number star Default value is 5
Half star
Media Upload & Preview photos or files.
Location Sharing Attach location in review content
Comment preview Number of comments shown to preview below per review.
Subscription Visitor can get notification when have a new review added in item their subscribed
Following Get notified about who they've followed.
Bad word filtering Filter bad words out of reviews, comments.
Ranking List of members ranked by contribution points
Email field Enable/Disable Email field in review and comment form
Custom CSS/JS Adding custom CSS/JS code for this extension.

Module & Add-ons

Download and See how to use Modules & Addons at page jlexart.com/addons/jlex-review

Module positions

JLex Review support three positions to embed modules:

  • jr-top
  • jr-before-list
  • jr-after-list

The screenshot below is preview position:
JLex Review module positions

Advanced

Roles

Used to label a group of members or meet an optional condition.
Access Roles to add new and manage:

Input Output

User Ranking

Used to display a list of users sorted by score. Score is calculated from review score + comment score. You can adjust the score earned when adding a review or comment.

To enable this feature, GOTO Configuration > Ranking > Enable

To show this list, GOTO Menu > Main Menu > Add New Menu Item > Select Type : JLex Review > Ranking Page.

Access Control List Manage

Used to control permissions according to groups of users. GOTO Configuration > Permission to get started

User Admin
Write/Edit/Delete Review Edit/Delete Any Review
Media: Upload Files Edit/Delete Any Comment
Download File Show author IP/Email address
Location Sharing Publish/UnPublish Any Review
Helpful Voting Featured/UnFeatured Any Review
Automatically Publish Review See Hidden Content
If the review form contain private input
Automatically Publish Comment
Write/Edit/Delete Comment
Reply Comment
Reporting
Subscribe Item
Follow User

Developer

Before read these sections, make sure you know PHP language firstly.

Replacer

Using to replace a string in review or comment by another string (allow HTML).

Example: You want to preview image based link attached in review
GOTO JLex Review > Replacer > New to add new replacement item. Fill form as image below:

In addition, you can attach CSS or Javascript for each replacement item.

Synchronization

This part will solve some issues eg:

  • Sync title & url of item in JLex Review when it is changed by parent extension
  • Make something when the rating of item is changed
  • Author of item will be subscribe automatically, and they will receive a nofitication when someone post a new review.

We will go to a specific example...

You have integrated JLex Review with K2, and now you want solve above issues.

First, you need access to Synchronization menu in back-end. Click "New" button to go Sync form.

At here, you will see 3 corresponding items to solve the above problems.

  • Update entry details
  • Callback when entry rating is updated
  • The author keeps track of their posts

Firstly, you need set value of Object field is k2 (lower).

Update Entry Details

Global variable: $object_id. In this part, you need write a program to get title & link of K2 item. The ID of K2 item is $object_id

Return an array include two properties title and url, return deleted (string) if item not found.

Callback When Entry Rating Is Updated

If rating of item is changed and you want make something (eg: update value of a field of database). Global variable include $object_id, $rating, $rating_count, $review_count. The ID of K2 item is $object_id

The author keeps track of their posts

When author post an article, you need click to subscribe button to get latest review about this article. It will better if system auto add this user to subscription list.

In order to do that, you need enable The author keeps track of their posts. In Code editor, you need write a program to get USERID of author based on ID of item (here is $object_id).

Templates

Install New Themes

In order to create new theme, you should do following steps:

  • Go to directory: components/com_jlexreview/templates
  • Copy default forder and rename by new name.
  • Now, you can custom your theme by modify file in this folder
  • Last, Go to Configuration > General > Theme > Select your theme

Template Overrider

JLex Review sub-templates extend the templating capabilities of Joomla! by allowing the creation of multiple, named sets of view overrides for JLex Review (the component) and certain JLex Review modules.

JLex Review component sub-templates are created by copying the contents of /components/com_jlexreview/templates/ to /templates/DEFAULTTEMPLATE/html/com_jlexreview/, where DEFAULTTEMPLATE is the name of your site's default template.

Each template pack will include:

  • |_comments
    • |_default_comment.php
    • |_default_comments.php
  • |_form
    • |_default.php
  • |_others
  • |_profile
    • |_default.php
  • |_ranking
    • |_default.php
  • |_rating
    • |_default.php
  • |_reviews
    • |_default.php
    • |_default_form.php
    • |_default_review.php
    • |_default_summary.php
    • |_default_toolbar.php

Email Template

All email templates stored in path administrator/components/com_jlexreview/libs/emails

This folder include 4 files:

  1. admin.tpl.php Notify to admin when a review or comment added/modified
  2. follow.tpl.php Notify to user who are followed reviewer where the reviewer have a new review.
  3. subscribe.tpl.php Notify to user who subscribed an item when item have a new review.
  4. user.tpl.php Notify to user when someone comment their review or comment

You can clone this folder to create new email template but must enter new directory in JLex Review Configuration > Notifications > Email Template Path.

Integration Into Other Extensions

Same as popular components like as JLex Comment, JComment, Komento... JLex Review allow you integrate it to your component. It contain two parts:

Mini-star Icon

Using to display average rating (or criterias) of item

<?php
$loader = JPATH_ROOT . '/components/com_jlexreview/load.php';
if (file_exists ( $loader )) {
    require_once $loader;
    echo JLexReviewLoad::quick_init ( $extension, $id );
}
	

Parameters:

  1. $extension: (type:string) - name of component (without com_ prefix) : k2, virtuemart or easyblog ....
  2. $id: (type:integer} - ID of item (maybe is article, blog item...)

Example:

<?php
$loader = JPATH_ROOT . '/components/com_jlexreview/load.php';
if (file_exists ( $loader )) {
    require_once $loader;
    echo JLexReviewLoad::quick_init ( 'k2', $item->id);
}
	

Review Body

Put code bellow where you want show review body.

<?php
$loader = JPATH_ROOT . '/components/com_jlexreview/load.php';
if (file_exists ( $loader )) {
    require_once $loader;
    echo JLexReviewLoad::init ( $title, $extension, $id , $section_id );
}

Parameters:

  1. $title (type:string) - name of reviewed item. If this param is blank, the JLex Review will find title automatically
  2. $extension (type:string) - name of component (without com_ prefix) : k2, virtuemart or easyblog ....
  3. $id (type:integer} - ID of item (maybe is article, blog item...)
  4. $section_id (type:integer | default:0} - Use it if you want create multiple different review/commenting systems
Example:
<?php
$loader = JPATH_ROOT . '/components/com_jlexreview/load.php';
if (file_exists ( $loader )) {
    require_once $loader;
    echo JLexReviewLoad::init ( $this->item->title, 'k2', $this->item->id , $this->item->category->id );
}
TOP
Sign in to your account

Use your social accounts to sign in