Advanced Template Manager

Take control over templates in Joomla!

  • Last updated: 27 Mar 2019
  • Version: 3.7.1
  • Types: Component System plugin
  • Joomla rating: 98%

Tutorial for Advanced Template Manager

There is a Free and a Pro version of Advanced Template Manager.
The parts in this tutorial that only concern the Pro version will be marked with: Pro only

Introduction

Advanced Template Manager is a Joomla! administrator component (combined with a system plugin) that enhances the way your template manager works.

With Joomla! you can normally only assign template styles to certain menu items.

With Advanced Template Manager you have the possibility to assign your site template styles to just about anything you want, including Joomla! Content, Users, Components, Devices and much more, giving you full control over your Joomla templates. In this tutorial we will describe all the assignment options available.

Once Advanced Template Manager is installed, the core Joomla template manager will be replaced with the Advanced Template Manager. The Templates menu link under Extensions will no longer point to option=com_templates but to option=com_advancedtemplates.

Advanced Template Manager also offers a few extra features to improve the template manager, like the ability to tag template styles with colours.

Note: Certain template frameworks might not be compatible with Advanced Template Manager.

Template Assignments

Assignment Types

Advanced Template Manager comes packed with a multitude of assignment types and options that you can apply to each frontend template. You can assign template styles to, or exclude them from, virtually anything.

If all of the assignments in a template style are set to Ignore, that template style will not be assigned to anything.
As soon as you set one or more of the assignments to Include or Exclude, the template style will be assigned to the pages/situations matching those assignments.

Pages that have no template styles specifically assigned to them will use the template style that is set as Default.

Matching Method

You can use and combine any of the assignments. You don't have to just use one.

To control how multiple assignments are applied, there is Matching Method option. This determines whether all or any assignments need be matched:

  • ALL: Will be published if ALL of below assignments are matched at the same time.
  • ANY: Will be published if ANY (one or more) of below assignments are matched at any time.

Assignment groups where "Ignore" is selected will be ignored.

Note: When setting any or more assignments to Exclude, the Matching Method should be set to ALL. Otherwise, using ANY would result in one Exclude conditon to always match and the template style to show everywhere else.

Show Assignments

You can select whether to show the full list of available assignments, or only the selected assignments that are currently used. You can use this to get a clean overview of the active assignments.

When set to Selected, all not-selected assignment types will be hidden from view.

Assignment Types

Each assignment type has three possible states/options.

  • Ignore (default)
  • Include
  • Exclude

By default all assignments are ignored, meaning the template style is not limited by assignments.
To use an assignment, you set the option to Include or Exclude depending on the desired effect.
If you set an assignment to Exclude, the template style is assigned to all pages/circumstances that do not match your selection.

Below you find all the available assignments with the available settings for it.

Menu Items

In addition to the core Menu Items selection, it's possible to automatically include or exclude all current and future menu items placed under a parent menu item.

Selection Select the menu items to assign to.
Also on child items Also assign to child items of the selected items?
Include no Itemid Also assign when no menu Itemid is set in URL?

Home Page

Unlike selecting the home page (default) item via the Menu Items, this will only match the real home page, not any URL that has the same Itemid as the home menu item.

This might not work for all 3rd party SEF extensions.

Date & Time

The date and time assignments use the date/time of your servers, not the ones of the visitors system.

The date range can be set to be recurring every year in the same time period.

Date
Start Publishing Enter the date to start publishing
Finish Publishing Enter the date to end publishing
Recurring Select to apply date range every year. (So the year in the selection will be ignored)
Seasons
Selection Select seasons to assign to.

Options: Winter, Spring, Summer, Fall / Autumn
Hemisphere Select the hemisphere your website is located in

Options: Northern, Southern, Australia
Months
Selection Select months to assign to.

Options: January, February, March, April, May, June, July, August, September, October, November, December
Days of the week
Selection Select days of the week to assign to.

Options: Monday, Tuesday, Wednesday, Thursday, Friday, Saturday, Sunday
Time
Start Publishing Enter the time to start publishing.
Format: 23:59
Finish Publishing Enter the time to end publishing.
Format: 23:59

Languages

The Languages assignment differes from the core in that it allows a selection of multiple languages.

Selection Select the languages to assign to.

Joomla! Content

This assignment is based on what Joomla content page is displayed, including Page Types, Categories and specific Articles.

Page types
Selection Select on what page types the assignment should be active.

Options: Archived Articles, Single Article, List All Categories, Category Blog, Category List, Featured Articles, Create Article

Categories
Selection Select the categories to assign to.
Also on child items Also assign to child items of the selected items?
Page types Select on what page types the assignment should be active.

Options: Categories, Articles, Others

Articles
Selection Select the articles to assign to.
Content Keywords Enter the keywords found in the content to assign to. Use commas to separate the keywords.
Meta Keywords Enter the keywords found in the meta keywords to assign to. Use commas to separate the keywords.
Authors Select the auhors to assign to.

Tags

Selection Enter the tags to assign to. Use commas to separate the tags.
Match all Select to only let the assignment pass if all of the selected items are matched.
Also on child items Also assign to child items of the selected items?

User Group Levels

Selection Select the user groups to assign to.

Users Pro only

Selection Select the users to assign to.

Components

Selection Select the components to assign to.

URL

The URL assignments allows control over specific pages or groups of pages, with support for Regular Expressions.

URL matches Enter (part of) the URLs to match.
Use a new line for each different match.
Use Regular Expressions Select to treat the value as regular expressions.

URL parts will be matched using regular expressions. So make sure the string uses valid regex syntax.

Devices

Selection Select the devices to assign to. Keep in mind that device detection is not always 100% accurate. Users can setup their device to mimic other devices.

Options: Desktop, Tablet, Mobile

Operating Systems

Selection Select the operating systems to assign to. Keep in mind that operating system detection is not always 100% accurate. Users can setup their browser to mimic other operating systems.

Browsers

Browsers Select the browsers to assign to. Keep in mind that browser detection is not always 100% accurate. Users can setup their browser to mimic other browsers
Mobile Browsers Select the browsers to assign to. Keep in mind that browser detection is not always 100% accurate. Users can setup their browser to mimic other browsers

IP Addresses Pro only

IP Addresses / Ranges A comma and/or enter seperated list of IP addresses and IP ranges. For instance:
127.0.0.1
128.0-128.1
129

Geolocating Pro only

Geolocating is not always 100% accurate. The geolocation is based on the IP address of the visitor. Not all IP addresses are fixed or known.
To be able to use this assignment, you need to install the Regular Labs GeoIP library.

Continents Select the continents to assign to.
Countries Select the countries to assign to.
Regions / States Select the regions / states to assign to.
Postal Codes A comma separated list of postal codes (12345) or postal code ranges (12300-12500).
This can only be used for a limited number of countries and IP addresses.

3rd party Content Pro only

EasyBlog
Page Types
Selection Select on what page types the assignment should be active.

Options: Archive Layout, Bloggers Layout (All authors), Categories Layout (All categories), Overview Layout (Dashboard), Single Blog Entry Layout, Featured Blogs Layout, Frontpage Blog Layout, Login layout, My Blog Layout, Subscriptions Layout, Tags Layout, Team Blog Layout
Categories
Selection Select the categories to assign to.
Also on child items Also assign to child items of the selected items?
Page types Select on what page types the assignment should be active.

Options: Categories, Items
Tags
Selection Enter the tags to assign to. Use commas to separate the tags.
Page types Select on what page types the assignment should be active.

Options: Tags, Items
Items
Selection Select the items to assign to.
Authors Select the auhors to assign to.
FLEXIContent

For category & article (item) assignments, see the above Joomla! Content section.

Page types
Selection Select on what page types the assignment should be active.

Options: Author, Category, My Items, Favourites, Directory, Single item., Search, Tag
Tags
Selection Enter the tags to assign to. Use commas to separate the tags.
Page types Select on what page types the assignment should be active.

Options: Tags, Items
Types
Selection Select the types to assign to.
Form2Content Lite

For category & article (item) assignments, see the above Joomla! Content section.

Types Select the types to assign to.
K2
Page types
Selection Select on what page types the assignment should be active.

Options: Item, Item edit form, Categories, Tag, User page (blog), Latest items from (one or more) users or categories
Categories
Selection Select the categories to assign to.
Also on child items Also assign to child items of the selected items?
Page types Select on what page types the assignment should be active.

Options: Categories, Items
Tags
Selection Enter the tags to assign to. Use commas to separate the tags.
Page types Select on what page types the assignment should be active.

Options: Tags, Items
Items
Selection Select the items to assign to.
Content Keywords Enter the keywords found in the content to assign to. Use commas to separate the keywords.
Meta Keywords Enter the keywords found in the meta keywords to assign to. Use commas to separate the keywords.
Authors Select the auhors to assign to.
ZOO
Page types
Selection Select on what page types the assignment should be active.

Options: Category, ITEM, Frontpage, My Submissions, Submission
Categories
Selection Select the categories to assign to.
Also on child items Also assign to child items of the selected items?
Page types Select on what page types the assignment should be active.

Options: Categories, Items
Items
Selection Select the items to assign to.
Authors Select the auhors to assign to.
HikaShop
Page types
Selection Select on what page types the assignment should be active.

Options: User addresses, Categories listing, Featured Articles, Create Article, Contact page, Products listing, Product page, User control panel, Registration form
Categories
Selection Select the categories to assign to.
Also on child items Also assign to child items of the selected items?
Page types Select on what page types the assignment should be active.

Options: Categories, Products
Products
Selection Select the items to assign to.
MijoShop
Page types
Selection Select on what page types the assignment should be active.

Options: Account, Admin Panel, Affiliates, Bestsellers, Shopping Cart, Checkout, Compare, Contact, Downloads, Home, Latest Products, Login, Manufacturers, Newsletter, Orders, Popular Products, Registration, Returns, Search, Sitemap, Specials, Voucher, Wishlist
Categories
Selection Select the categories to assign to.
Also on child items Also assign to child items of the selected items?
Page types Select on what page types the assignment should be active.

Options: Categories, Products
Products
Selection Select the items to assign to.
RedShop
Page types
Selection Select on what page types the assignment should be active.

Options: Account, My Wishlist, Cart, Catalogue, Sample, All Products From a Category, Categories, Category Detailed, Checkout, Gift Cards List, Login, Logout, Portal Layout For Shopper Group, Portal Detail Layout For Shopper Group, Manufacturers, Manufacturer Details, Products From Selected Manufacturer, Newsletter Subscription, Orders, Orders Tracker, Reset Password, Set Password, Token, Product, Product Download, Product Rating, Quotation, Registration, Product Search, Newest Products, Products On Sale, redFILTER, My Wishlist, All Wish Lists
Categories
Selection Select the categories to assign to.
Also on child items Also assign to child items of the selected items?
Page types Select on what page types the assignment should be active.

Options: Categories, Products
Products
Selection Select the items to assign to.
VirtueMart
Page types
Selection Select on what page types the assignment should be active.

Options: Shopping Cart, VirtueMart Categories Layout, Category Layout, Manufacturer Default Layout, Manufacturer Details Layout, List Orders, Product Details Layout, Account Maintenance, User Edit Address, Displays vendor contact, Displays vendors, Displays vendor details, View vendor TOS, Front page
Categories
Selection Select the categories to assign to.
Also on child items Also assign to child items of the selected items?
Page types Select on what page types the assignment should be active.

Options: Categories, Products
Products
Selection Select the items to assign to.

Custom PHP Pro only

This gives you the opportunity to assign to just about anything you can think of. You just need to know what PHP code you should use.

With PHP you can call on all data/information available in the variables, url, database, etc. And then do your checks on this data. You can tell the control the display by ending the PHP code with a return true or false based on your checks.

For examples and ready-to-use PHP scripts, check out the PHP Assignment Guide.

Custom PHP Enter a piece of PHP code to evaluate. The code must return the value true or false.

For instance:
return ( $user->name == 'Peter van Westen' );

Extra features

In addition to the above discussed assignment options, Advanced Template Manager also gives you a few extra features to make template (style) management just that bit easier and faster.

Colour Tag

You can assign a colour tag to a template style. In the template style list you can then see these colours and even order by colours. This does not affect the output of the template in any way, it is just a feature to use on the administrator side, to make grouping and finding certain template styles easier and faster.

You can customize the available colours in the Advanced Template Manager global settings.

Description & Notes

Advanced Template Manager adds the ability to add to template styles an optional short Description that displays in the template styles list. You can make this note show under the template style name, as tooltip or in a separate column (you can set this via the global settings).

It also adds a brand new dedicated "Notes" tab, with a much bigger field that allows you to enter more detailed notes.

More Actions Logs

Advanced Template Manager has the ability to log more specific actions to the Joomla User Actions Logs, compared to the core template manager.

In addition to creating, updating and deleting template styles, Advanced Module Manager can also log when the default template style is changed, and every specific file or folder that is edited in the template files manager.

Not compatible with...

Many template frameworks completely override the Joomla! core functionality on how templates work and how they are controlled.

Advanced Template Manager relies on the core functionality, therefore the following (and maybe other) template frameworks are NOT compatible with Advanced Template Manager:

  • Astroid Framework
  • Gantry (RocketTheme)
  • JoomlaXTC
  • RSJoomla
  • T3 (JoomlArt)
  • Warp (YooTheme)

Settings

In the toolbar, on the right, you will see the "Options" button.

Toolbar

When you click on that, you will be directed to the Global Configuration options for Advanced Template Manager.

General Options

Here is an overview of the available options. All descriptions are available in the tooltips of the options.

Default settings

Heading Title Select whether to show the core or Advanced Template Manager title in the heading.
Show Thumbnails Select to show Thumbnails in the list views.
Show Colour Enable to show the colour column in the template style list.
Colours A comma separated list of RGB colours to show in the colour picker.
Show Description Select where to show the optional short description in the template style list view.
Show Notes Tab Select to show an extra notes tab.
Show Switch Select to show the link to switch to the Joomla core template manager (and back).
Show Update Notification If selected, an update notification will be shown in the main component view when there is a new version for this extension.
Show Copyright If selected, extra copyright info will be displayed in the admin views. Regular Labs extensions never show copyright info or backlinks on the frontend.

Show Assignments

This tab gives you the ability to disable any assignment options for the template style edit screen.

We advise you to switch off the assignments you don't plan to use, in order to keep the available assignment options in the template style edit screens to only the ones you need, improving clarity and page load speed.

User Actions Log

Log User Actions Select to store User Actions. These actions will be visible in the User Actions Log module.
Events To Log Select the actions to include in the User Actions Log.

Permissions

Advanced Template Manager uses the core Template Manager permission rules.

The Joomla permission settings control access to the different actions for each user group. For more information on how these permissions work, see the Joomla docs: Access Control List Tutorial: Component Options & Permissions

Installation

You can either install Advanced Template Manager by using the core extension manager available in the Joomla! Administrator Control Panel, or by using the powerful Regular Labs Extension Manager.

Note: When updating Advanced Template Manager, you do not need to uninstall it first. The package will update all the files automatically.

Keep in mind that when you update to a major new version (or uninstall first), you might lose some configuration settings.

Regular Labs Extension Manager

It is very easy to install/update any Regular Labs Extension using the Regular Labs Extension Manager.

Please see the Tutorial for the Regular Labs Extension Manager for more detailed information...

Joomla! Extension Manager

To install via the Joomla! Extension Manager, just follow these steps:

  1. Log into your Joomla administrator;
  2. In the menu, choose: Extensions >> Extensions;
  3. Choose the tab: Install from Web (or enable it if you haven't done so yet);
  4. Select the search field and enter Advanced Template Manager and hit enter;
  5. Click on the Advanced Template Manager listing;
  6. Click on Install;
  7. Click on Install to confirm.
Installer Web

Or if you need to install the Pro version or cannot install via the 'Install via Web' method for some reason:

  1. Download the extension install file (.zip);
  2. Log into your Joomla administrator;
  3. In the menu, choose: Extensions >> Extensions;
  4. Choose the tab: Upload Package File;
  5. Click on the Choose File button and select the extension zip;
  6. Click on Upload & Install.
Installer Upload

If you have problems installing Advanced Template Manager, please try the manual installation process as described here: docs.joomla.org/Installing_an_extension