- For:
- Any Simplify Your Web extension that has an output display
After installing any of the Simplify Your Web extensions (or after moving the site to a different server with different settings), some users may experience issues with the extension's HTML output. No matter the setup, the output does not look anything like any of the demos or screenshots that the user has seen...
Feelings of disappointment occur (it should work from the start, right?). What is really happening?
This tutorial will help you diagnose the issue (or confirm it) and guide you to help you fix it.
Step 1 Open the page source view
Most browsers have the option to show the source code generated by webpages. For some, just a right-click on the page is all it takes to find that option.
Step 2 Locate the stylesheets and/or scripts associated with the extension you are trying to troubleshoot.
When having style issues, look for files named 'style.css', 'stylemaster.css' or 'stylemaster.css.php'. When having animation issues, look for files named 'animation.js', 'animationmaster.js' or 'animationmaster.js.php'.
For instance, if you were troubleshooting Trombinoscope Contacts, you would find an associated stylesheet:
[code]<link rel="stylesheet" href="/modules/mod_trombinoscope/themes/stylemaster_92.css" type="text/css" />[/code]
In most recent versions, generated stylesheets and scripts are located in the /cache
folder of the Joomla implementation. For instance:
[code]<link rel="stylesheet" href="/cache/mod_trombinoscopecontacts/style_92.css" type="text/css" />[/code]
Step 3 Click on the links
In page source view, most referenced files can be clicked on. Click on the found link(s) and check its(their) content. If anything goes well, CSS or javascript code must be visible (look through the whole file(s), errors can occur later down the file(s)).
For instance, the 'stylemaster_92.css' file from the previous example should contain something like:
[code].te_92 {overflow: hidden;position: relative;width: 100%;}.te_92 .personlist {overflow: hidden;text-align: center;font-size: 0; }.te_92 .groupheader {display: inline-block;width: 100%;font-size: 14px;text-align: left;}.te_92 .groupheader .header {border-bottom: 1px solid #DDDDDD;}...[/code]
If not (most likely since you are troubleshooting a potential problem), there should be some HTML code with error reporting anywhere inside that code.
[code]<br /><font size='1'><table class='xdebug-error xe-warning' dir='ltr' border='1' cellspacing='0' cellpadding='1'><tr><th align='left' bgcolor='#f57900' colspan="5"><span style='background-color: #cc0000; color: #fce94f; font-size: x-large;'>( ! )</span> Warning: stylemaster.css.php: failed to open stream: ...[/code]
Note Since v1.2.5 of the external library lib_syw
, errors are logged instead (the previous file will most likely be blank or just contain your own additional CSS overrides). Go to the logs
folder specified in the Joomla configuration of your site and look for the file syw.errors.php
. The errors will be clearly notified in that file, if any.
For files located in the /cache
folder, the file content may be:
[code]Forbidden
You don't have permission to access /cache/mod_trombinoscopecontacts/style_92.css on this server.[/code]
Step 4 Diagnose the issue
The errors are related to file permissions (403 permission error). Simplify Your Web extensions build stylesheets and scripts 'on the fly' to reflect any change made in the extensions parameter options.
Step 5 Modify .htaccess
If the problems are directly linked to file permissions, ensuring those permissions are 644 or 744 (added owner 'execute') may not be enough. You need to tell the server what files can have direct access. And it has to be done in the .htaccess file.
Step 5a Using Admin Tools
When using 'Admin Tools Professional' for instance, the modifications are easy. Go to the 'Exceptions' section of the htaccess maker tool and add the faulty files to the 'Allow direct access to these files' section. For instance, for the Trombinoscope Contacts extension, add:
[code]modules/mod_trombinoscope/themes/stylemaster.js.php[/code]
or for the most recent extensions where the scripts and stylesheets are hosted in the /cache
folder:
[code]cache/mod_trombinoscopecontacts/style_92.css[/code]
You can also just white-list the /cache/mod_trombinoscopecontacts
folder.
Step 5b Manually
First, make a copy of the original .htaccess file. Then add the following lines to the file (this is for Trombinoscope Contacts):
[code]##### Advanced server protection rules exceptions -- BEGIN
RewriteRule ^modules\/mod_trombinoscope\/themes\/stylemaster\.js\.php$ - [L]
##### Advanced server protection rules exceptions -- END[/code]
or for the most recent extensions where the scripts and stylesheets are hosted in the /cache
folder:
[code]##### Advanced server protection rules exceptions -- BEGIN
RewriteRule ^cache\/mod_trombinoscopecontacts\/style_92\.css$ - [L]
##### Advanced server protection rules exceptions -- END[/code]
You may also just allow all files in the /cache
folder (the following code excludes php
files from access authorization):
[code]##### Advanced server protection rules exceptions -- BEGIN
RewriteCond %{REQUEST_FILENAME} !(\.php)$
RewriteCond %{REQUEST_FILENAME} -f
RewriteRule ^cache/ - [L]
##### Advanced server protection rules exceptions -- END[/code]
Extension specifics
Following is an exhaustive list of all the files that may require specific permissions for all the extensions created by Simplify Your Web.
Article Details
This is no longer necessary starting with version 4.0.0. Files located in the /cache/plg_content_articledetails
folder need permission instead.
[code]plugins/content/articledetails/stylemaster.css.php
plugins/content/articledetails/printmaster.css.php
plugins/content/articledetails/styles/style.css.php
plugins/content/articledetails/styles/print.css.php
plugins/content/articledetails/styles/calendar/original/print.css.php
plugins/content/articledetails/styles/calendar/original/style.css.php[/code]
Image from Article
This is no longer necessary starting with version 1.2.0. Files located in the /cache/plg_content_imagefromarticle
folder need permission instead.
[code]plugins/content/imagefromarticle/stylemaster.css.php
plugins/content/imagefromarticle/style.css.php[/code]
Latest News Enhanced
This is no longer necessary starting with version 2.5.0. Files located in the /cache/mod_latestnewsenhanced
folder need permission instead.
[code]modules/mod_latestnewsenhanced/stylemaster.js.phpIf using calendars, add:
modules/mod_latestnewsenhanced/stylemaster.css.php
modules/mod_latestnewsenhanced/animationmaster.js.php
modules/mod_latestnewsenhanced/styles/style.css.php
modules/mod_latestnewsenhancedextended/styles/overall/original/style.css.php[/code]
[code]modules/mod_latestnewsenhancedextended/styles/calendar/original/style.css.php[/code]If using pagination, add:
[code]modules/mod_latestnewsenhanced/animations/justpagination/style.css.php
modules/mod_latestnewsenhanced/animations/justpagination/justpagination.js.php[/code]
Latest News Enhanced Pro
This is no longer necessary starting with version 2.5.0. Files located in the /cache/mod_latestnewsenhancedpro
folder need permission instead.
[code]modules/mod_latestnewsenhancedextended/stylemaster.js.php
modules/mod_latestnewsenhancedextended/stylemaster.css.php
modules/mod_latestnewsenhancedextended/animationmaster.js.php
modules/mod_latestnewsenhancedextended/styles/style.css.php[/code]
[code]modules/mod_latestnewsenhancedextended/styles/overall/original/style.css.php[/code]and/or:
[code]modules/mod_latestnewsenhancedextended/styles/overall/[other style here]/style.css.php[/code][other style here]: replace with the style you are using
If using calendars, add:
[code]modules/mod_latestnewsenhancedextended/styles/calendar/original/style.css.php[/code]and/or:
[code]modules/mod_latestnewsenhancedextended/styles/calendar/[other style here]/style.css.php[/code][other style here]: replace with the style you are using
If using pagination only, add:
[code]modules/mod_latestnewsenhancedextended/animations/justpagination/style.css.phpIf using animations, add:
modules/mod_latestnewsenhancedextended/animations/justpagination/justpagination.js.php[/code]
[code]modules/mod_latestnewsenhancedextended/animations/scroll/style.css.phpand/or:
modules/mod_latestnewsenhancedextended/animations/scroll/scroll.js.php[/code]
[code]modules/mod_latestnewsenhancedextended/animations/[other animation here]/style.css.php[other animation here]: replace with the animation you are using
modules/mod_latestnewsenhancedextended/animations/[other animation here]/[other animation here].js.php[/code]
Trombinoscope Contacts
This is no longer necessary starting with version 2.5.0. Files located in the /cache/mod_trombinoscopecontacts
folder need permission instead.
[code]modules/mod_trombinoscope/themes/stylemaster.css.php
modules/mod_trombinoscope/themes/style.css.php
modules/mod_trombinoscope/themes/stylemaster.js.php[/code]
[code]modules/mod_trombinoscope/themes/original/style.css.php[/code]and/or:
[code]modules/mod_trombinoscope/themes/[other theme here]/style.css.php[/code][other theme here]: replace with the theme you are using
Trombinoscope Contacts Pro
This is no longer necessary starting with version 2.5.0. Files located in the /cache/com_trombinoscopecontactspro
folder need permission instead.
Same as Trombinoscope Contacts plus
If using the Single Contact view, add:[code]components/com_trombinoscopeextended/assets/themes/contact/stylemaster.css.php
components/com_trombinoscopeextended/assets/themes/contact/style.css.php
components/com_trombinoscopeextended/assets/themes/contact/stylemaster.js.php[/code]
[code]components/com_trombinoscopeextended/assets/themes/contact/original/style.css.php[/code]and/or:
[code]components/com_trombinoscopeextended/assets/themes/contact/[other theme here]/style.css.php[/code][other theme here]: replace with the theme you are using
If using the Trombinoscope view, add:
[code]components/com_trombinoscopeextended/assets/themes/trombinoscope/stylemaster.css.php
components/com_trombinoscopeextended/assets/themes/trombinoscope/style.css.php
components/com_trombinoscopeextended/assets/themes/trombinoscope/stylemaster.js.php[/code]
[code]components/com_trombinoscopeextended/assets/themes/trombinoscope/original/style.css.php[/code]and/or:
[code]components/com_trombinoscopeextended/assets/themes/trombinoscope/[other theme here]/style.css.php[/code][other theme here]: replace with the theme you are using
Truly Responsive Slides
This is no longer necessary starting with version 1.6.0. Files located in the /cache/mod_trulyresponsiveslides
folder need permission instead.
[code]modules/mod_trulyresponsiveslides/css/style.css.php
modules/mod_trulyresponsiveslides/css/stylemaster.css.php[/code]
Truly Responsive Slides Pro
This is no longer necessary starting with version 1.6.0. Files located in the /cache/mod_trulyresponsiveslidespro
folder need permission instead.
[code]modules/mod_trulyresponsiveslider/css/style.css.php
modules/mod_trulyresponsiveslider/css/stylemaster.css.php[/code]
Weblink Logos
This is no longer necessary starting with version 2.1.0. Files located in the /cache/mod_weblinklogos
folder need permission instead.
[code]modules/mod_weblinklogo/styles/stylemaster.css.php
modules/mod_weblinklogo/styles/style.css.php[/code]
Weblink Logos Pro
This is no longer necessary starting with version 2.1.0. Files located in the /cache/com_weblinklogospro
folder need permission instead.
Same as Weblink Logos plus
[code]components/com_weblinklogospro/assets/styles/directory/stylemaster.css.php
components/com_weblinklogospro/assets/styles/directory/style.css.php[/code]
Bare Responsive
[code]templates/sywbareresponsive/css/styles.css.php
templates/sywbareresponsive/css/grid16.css.php[/code]
IIS servers
The previous settings will work on all Apache servers. When using IIS servers, matters get a little bit more complicated because they require the use of server tools to apply the proper file permissions. For help on rewriting rules from Apache to IIS, you can refer to this article for help.