Smart Subscriptions component doesn't require its own view in Joomla frontend. The visual presentation of the component consists in providing site visitors / users a web control to create and manage their subscriptions. Graphically this control is embedded into core Joomla user manager frontend views - "registration" and "profile" (the latter in both default and edit layouts). That said, Smart Subscriptions should in most cases fit well into the template you are using, providing that it is prepared to display user profile(s). Also if you change templates, template layout options or even use a template override for registration / edit profile forms, subscriptions selection control should follow the new page layout without problems.

There would be nothing more to add here if subscriptions selector were a simple and compact input control, but it isn't. Apart from the selector itself (which in some layouts and if there are several accounts to choose from may occupy significant space) it also displays account descriptions and special "expires soon" notice and control. That is why Smart Subscriptions implements its own layouts, templates and supports template overrides.

Smart Subscription layouts configuration is not a requred step in component's setup. As a starting point and probably in most cases the default layout will work for you, but if you wish to change the look of the control you can use one of the following methods:

  • select another layout in Smart Subscriptions User plugin. There are 3 layouts already built-in: "default", "compact" and "list".
  • develop a template override for one or more Smart Subscriptions layouts.

Select Layout

All layouts have account descriptions area, normally used to provide more information about each subscription (e.g. viewing permissions, limits, etc.). If there are few accounts available, all descriptions are displayed at once so that users can revise and compare available subscriptions. If there is a significant number of subscription options and in order to save space on the page, only currently selected account’s description is shown.

Account selection control is located below the descriptions area. This control is rendered differently in each of the built-in layouts:

  • Default: each subscription title and actual amount to pay (with discounts already applied, if any) is displayed as a tile, floating left, so that account tiles start from top-left and then follow the natural flow - to the right and to the next row when the right margin is hit)
  • Compact: subscriptions selector is rendered as a dropdown, each item consisting of account title and amount to pay
  • List: very similar to default but rendered as a plain list, each item on new line. If subscriptions have long titles in your configuration it will save space, as the tiles in default layout will tend to occupy the whole line and tiles have significantly greater padding.

Template Overrides

If built-in layout doesn’t meet your requirements you should opt for another method - template override. If you are familiar with Joomla template overrides it will not be a difficult task. Although there are some points worth mentioning. Smart Subscriptions template override cannot be a typical case because account selection control is not a view - it is a part of a form (a custom form control). This fact doesn’t break the concept of template overrides but you should keep in mind that the portion of HTML/PHP you are “overriding” is not the whole view, so it has to coexist with the rest of layout.

You can override subscription selector control independently for frontend and backend (yet it is very unlikely that you would override backend layout). First create “plg_user_smartsub” subfolder in /templates/<your current template>/html folder. Then copy one or more .php files from /plugins/user/smartsub/tmpl folder to the subfolder you have created on previous step. These copies will serve you as a starting point. Make appropriate changes and save. A layout file in /templates/<your current template>/html/plg_user_smartsub folder will always win when rendering the control. To stop overriding delete or rename the file(s) in /html/plg_user_smartsub folder.