diff --git a/README.md b/README.md index 233a031..5c16e4d 100644 --- a/README.md +++ b/README.md @@ -13,12 +13,11 @@ BRIEF: Documentation for MokoCassiopeia template --> - -# MokoCassiopeia +# MokoCassiopeia Template **A Modern, Lightweight Joomla Template Based on Cassiopeia** -[![Version](https://img.shields.io/badge/version-03.09.03-blue.svg?logo=v&logoColor=white)](https://github.com/mokoconsulting-tech/MokoCassiopeia/releases/tag/v03) +[![Version](https://img.shields.io/badge/version-03.09.07-blue.svg?logo=v&logoColor=white)](https://github.com/mokoconsulting-tech/MokoCassiopeia/releases/tag/v03) [![License](https://img.shields.io/badge/license-GPL--3.0--or--later-green.svg?logo=gnu&logoColor=white)](LICENSE) [![Joomla](https://img.shields.io/badge/Joomla-5.x%20%7C%206.x-red.svg?logo=joomla&logoColor=white)](https://www.joomla.org) [![PHP](https://img.shields.io/badge/PHP-8.1%2B-777BB4.svg?logo=php&logoColor=white)](https://www.php.net) diff --git a/src/html/mod_breadcrumbs/default.php b/src/html/mod_breadcrumbs/default.php index fbea28f..96e741e 100644 --- a/src/html/mod_breadcrumbs/default.php +++ b/src/html/mod_breadcrumbs/default.php @@ -10,31 +10,62 @@ /** * Default layout override for mod_breadcrumbs. * Bootstrap 5 breadcrumb with schema.org BreadcrumbList markup. + * Respects showHome, showLast, homeText module settings. */ defined('_JEXEC') or die; use Joomla\CMS\Factory; use Joomla\CMS\Language\Text; +use Joomla\CMS\Router\Route; +use Joomla\CMS\Uri\Uri; Factory::getApplication()->getLanguage()->load('mod_breadcrumbs', JPATH_SITE); $suffix = htmlspecialchars($params->get('moduleclass_sfx', ''), ENT_COMPAT, 'UTF-8'); $headerTag = htmlspecialchars($params->get('header_tag', 'h3'), ENT_COMPAT, 'UTF-8'); $headerClass = htmlspecialchars($params->get('header_class', ''), ENT_COMPAT, 'UTF-8'); +$showHome = $params->get('showHome', 1); +$showLast = $params->get('showLast', 1); +$homeText = $params->get('homeText', '') ?: Text::_('MOD_BREADCRUMBS_HOME'); + +// Build filtered list respecting module settings +$items = []; +$count = count($list); + +foreach ($list as $key => $item) { + // Skip Home item if showHome is off + if ($key === 0 && !$showHome) { + continue; + } + + // Replace Home text if custom homeText is set + if ($key === 0 && $showHome) { + $item->name = $homeText; + } + + // Skip last item if showLast is off + if ($key === $count - 1 && !$showLast) { + continue; + } + + $items[] = $item; +} + +if (empty($items)) { + return; +} ?>