Second Category Description: setup and help
Quick start
- Install the ZIP in Modules > Module Manager and click Configure.
- Open Improve > Second Category Description > Settings and keep Enable Module set to Yes.
- Choose Display Mode and review First Page Only, CSS Class, and Wrapper HTML Tag; save.
- Edit a category under Catalog > Categories and fill Second Category Description for the required shop and languages.
- For Template injection, use Templates to review and insert displayMprSecondCatDesc at the desired location.
- Open the category and verify placement, translations, and page-2 behavior.
Requires PrestaShop 1.6 or later and PHP 7.1 or later.
Setup manual
Install and open the module
Upload the ZIP in Modules > Module Manager > Upload a module. Install it and click Configure. Open Improve > Second Category Description for the dashboard, Templates, and Settings.
Requires PrestaShop 1.6 or later and PHP 7.1 or later.
Installation creates these tables with your database prefix:
mprscd_description
mprscd_description_lang
mprscd_injection
mprscd_profile
Add a category description
Choose the correct shop context, then open Catalog > Categories and edit a category. Fill Second Category Description below the standard description. Enter content for each language you need and save.
On PrestaShop versions before 1.7.7, use the legacy category form to enter the description.
Descriptions are stored for a category and shop, with separate language records. An empty translation does not automatically fall back to the default language. A page with no saved content for its category, language, and shop returns no block.
You can structure content with headings, paragraphs, lists, and links. For example:
<h2>Buying guide for this category</h2>
<p>Explain how to choose between the products in this category.</p>
<h3>What to compare before ordering</h3>
<ul>
<li>Size or dimensions</li>
<li>Material or finish</li>
<li>Compatibility with the rest of the order</li>
</ul>
<h3>Related categories</h3>
<p>Add relevant links to related categories.</p>
Configure Display Settings
Open Second Category Description > Settings > General.
| Setting | Default | What it does and when to change it |
|---|---|---|
| Enable Module | Yes | Show descriptions in your storefront. Set No to hide them while retaining saved content. |
| Display Mode | Default (inside column) | Use the theme's category footer hook. Select Full width (CSS breakout) for a wider wrapper, or Template injection for a custom theme position. |
| First Page Only | Yes | Show the block only on the first category page. Disable to show it on later pages too. |
| CSS Class | mprscd-description |
Class on the outer wrapper. Set a custom class if your theme needs it. |
| Wrapper HTML Tag | div |
Choose div, section, article, or aside. |
Save your changes. The Template Placement panel links to Open Template Manager and reports whether a tracked injection is active.
Choose storefront placement
Use the category footer hook
Default (inside column) and Full width (CSS breakout) render through displayFooterCategory. Inspect your category template to confirm that hook appears where you want the block.
Full width adds mprscd-fullwidth. It is a CSS breakout and can still be constrained by the surrounding theme layout.
Use template injection
Open Templates and scan the active theme. Review the proposed file and position. Keep a copy of the theme file before changing it, then insert the tracked hook. Select Template injection in Display Mode.
The inserted hook marker is:
{* MPRSCD_INJECT *}{hook h='displayMprSecondCatDesc'}{* /MPRSCD_INJECT *}
You can also place {hook h='displayMprSecondCatDesc'} manually. This custom hook renders only while Display Mode is Template injection. It displays the block at full width.
In injection mode, an active tracked insertion displays the description at the inserted position and hides it from the regular category footer. Without an active tracked insertion, the description can still appear in the category footer. Check for duplicate descriptions if you combine a manual insertion with the regular footer position.
After updating or replacing a theme, check injection status and rescan. The manager can remove tracked insertions.
Verify output and adjust styles
Open a category with saved content. Check that it appears at the expected footer or injected position. Check another language and, in multishop, another shop context. Open a category with no saved description and confirm no empty block appears.
With First Page Only enabled, open page 2 and verify the block is hidden. The setting uses the page number in the category URL. If your theme uses a different pagination format, check that the block stays hidden on later pages.
The normal wrapper is:
<div class="mprscd-description">
<div class="mprscd-content">
<!-- your saved description -->
</div>
</div>
Full-width mode adds mprscd-fullwidth to the outer class list. Adjust styling in your theme if needed:
.mprscd-description {
margin-top: 2rem;
background: #fff;
}
.mprscd-description .mprscd-content {
line-height: 1.7;
}
.mprscd-description.mprscd-fullwidth .mprscd-content {
max-width: 1170px;
margin-left: auto;
margin-right: auto;
}
If you replace CSS Class, update your CSS selectors accordingly.
Troubleshoot missing or duplicate descriptions
Confirm Enable Module is Yes, the category is correct, and the current shop and language have saved content. Check First Page Only before diagnosing a later pagination page.
If content is missing in Default mode, confirm the theme renders displayFooterCategory. If it is missing in Template injection mode, confirm the injected custom hook is present in the active template. The custom hook returns nothing in other display modes or outside category pages.
If content appears twice, check for both a manual hook and an active footer position. Use tracked placement and check the module's injection status after theme changes.
Clear relevant page or template cache after edits. Use the module's Integrity page for required module infrastructure. The dashboard shows how many categories have descriptions.
Descriptions stay in the module and are not copied to the built-in additional category description field. There is no migration tool in the settings.
Disable or uninstall
Use Enable Module = No to hide descriptions without deleting them.
Before uninstalling, export any descriptions you want to keep. Uninstall removes module tables, including saved descriptions, injection records, and profiles. Category deletion also removes the module's corresponding description records.
Uninstall attempts to remove tracked template injections first. If cleanup fails, uninstall can continue and log the failure. Inspect modified theme templates afterward and remove any remaining manual or tracked hook calls if needed.
Questions
1
Can the extra description affect category page loading?
The module renders your saved description HTML on the category page. Images and embedded content in that HTML can add downloads and browser work, so the effect depends on the content you publish. Keep media sizes reasonable and check category loading after changing the description.
Known Issues
6
Translated back-office text
Module fails on PHP 7.1
Back-office pages failing to open
Compatibility with combined storefront assets
Damaged translated text
Description placement setup incomplete
Feature Requests
5
Implemented
Template manager for second category description placement
Full-width descriptions and placement manager
Multilingual administration
Licence management
One-click module updates
Changelog
v1.1.72026-08-15
- AddedAdd template injection manager assets
- Addedcomplete FR/DE/ES/IT/PL translations
- FixedRegister second description injection tables
- FixedPrefer schema manager for SQL install
Older releases
v1.3.02026-04-20
- Addedadmin menu management via MenuInstaller for streamlined module setup
- AddedLicense management tab with key management and renewal options
- Addedself-healing integrity checks for automatic diagnostics and repair
- Addedcomplete FR/DE/ES/IT/PL translations
v1.2.02026-01-30
- AddedPS 9 / Hummingbird theme compatibility
- AddedTinyMCE rich-text editor for second description in category back office
- Improvedhook placement — second description now renders below the product grid
- Fixedsecond description not appearing when PS CMS cache is enabled
v1.1.02025-12-15
- Addedmultilingual support — separate second description per shop language
- AddedCSS class on wrapper for easy theme-specific styling
v1.0.02025-04-28
- Initialrelease: second description field for PrestaShop categories
- InitialStored in dedicated DB table — does not modify PS core tables
- InitialHook-based rendering at bottom of category page for SEO footer content
- InitialCompatible with PS 1.7.x and PS 8.x
Demo
Test the full module before you buy
Buy a licence later and keep your settings.
- Your 30-day demo Test it on your own shop for 30 days from the first install.
- Ready demo shop Explore a ready demo shop in your browser.
- No registration No account, email or store domain needed.
By downloading, you accept the demo terms and privacy policy.
By opening this demo you accept the demo terms and the privacy policy.