Print
Category: Latest News Enhanced

Layout overrides

Information
Latest News Enhanced

Pro

Since v4.0, some visual elements are displayed through layouts, allowing template overrides. These layouts are created for:

You can find the layouts under components/com_latestnewsenhancedpro/layouts.

As best practice, it is recommended to create overrides of those files rather than update them. That way, the next component update won't dismiss the changes you have made.

BEFORE creating layout overrides

Overrides are NOT updated when you perform an extension update. As such, they can soon become out of sync with the extension. You are not getting new features, bug fixes, security updates... Therefore every time you update an extension you should make sure you check those overrides and keep them up-to-date. So, before you create an override, make sure:

Creating layout overrides

Go to the layouts section of your template's Create overrides tab, select the com_latestnewsenhancedpro extension and then click on the desired layout folder (find detailed explanations about the content of those folders below).

The layouts ready for override
The layouts ready for override

Go back to the Editor tab. You will find the layout overrides under /html/layouts.

The created layouts overrides
The created layout overrides

Content

Holds the modal and icons layouts.

The module and the component views share the modals layout. Any override made will be used throughout.

Details

Holds all information details (defaults, custom fields and K2 extra fields).

v4.11
The lnep_detail_share layout now calls sub-layouts for all share buttons.
When creating a new share button, you need to add a new sub-layout to the /html/layouts/com_latestnewsenhancedpro/details/lnep_detail_share folder (you may need to create those folders) of your template. To know what the sub-layout's code must be, just copy one of the extension's available sub-layouts.

Tutorial Learn how you can add a custom Tumblr share button.

Third party custom fields

You can specify which third party custom fields you want to make available in the extension as detailed information. Go to the Shared options tab of the global configuration of the extension.

The fields will not show in the extension's outputs unless you add specific layout overrides for them. In the /details folder, add the layout lnep_detail_jfield_[field plugin element name].php, which will represent the field type. It is easier to just copy one of the other detail layouts, renamed and modified.

Tutorial Learn how you can add a third-party video field.

Heads

Holds all video types that represent the head of an item.

Pagination

Contains all the pagination-related layouts (filters and search).

v5.1 The new custom field index layout (lneplistfield.php) allows you to use any custom field of list type as index for the articles. In the event you do not use a label, an invisible label is still required for accessibility purposes. The label is present in the layout but requires that you translate it by creating a language override for the key COM_LATESTNEWSENHANCEDPRO_FILTERFIELD_[field name]. Create a key for every custom field you are using as index filter.

AFTER creating layout overrides

Modify the files at your will. They will have precedence over the extension's files. Therefore, if you want to go back to the original outputs, you should delete the overrides that you have created.

Tip When clicking on a folder, all layouts are copied over to the [current_template]/html/layouts/com_latestnewsenhancedpro template folder. This happens even if you just want to only change one layout. Only keep the layouts overrides that need modifications. Delete all other layouts. This will help you down the road for maintenance (you will know that the files present have been modified for sure).

New v4.13

The layout suffix

You can use different overrides of the same layout for index and information details. Just set the advanced parameter Layout suffix. By doing so, you are giving priority to the layouts that will contain that suffix in the name of the override.

For instance, you can override lnepcategoryindex.php but also have another menu item using a slightly different output. Just add the layout suffix (for example 'xyz') in the menu item's advanced parameters to give priority to the override lnepcategoryindex.xyz.php.