7b52a06cc1
The menu override templates were adding Bootstrap p-2 (padding) class to all menu icon spans, causing unwanted spacing around Font Awesome icons in navigation items. Icons should inherit their spacing from the surrounding link element, not add their own padding. Affected files: all mod_menu layout overrides (mainmenu_*, horizontal_*) Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
40 lines
1.2 KiB
PHP
40 lines
1.2 KiB
PHP
<?php
|
|
/**
|
|
* Copyright (C) 2025 Moko Consulting <hello@mokoconsulting.tech>
|
|
*
|
|
* This file is part of a Moko Consulting project.
|
|
*
|
|
* SPDX-License-Identifier: GPL-3.0-or-later
|
|
*/
|
|
|
|
/**
|
|
* Main Menu - Heading item layout
|
|
*/
|
|
|
|
defined('_JEXEC') or die;
|
|
|
|
$title = $item->anchor_title ? ' title="' . $item->anchor_title . '"' : '';
|
|
$anchor_css = $item->anchor_css ?: '';
|
|
|
|
$linktype = $item->title;
|
|
|
|
if ($item->menu_icon) {
|
|
// The link is an icon
|
|
if ($itemParams->get('menu_text', 1)) {
|
|
// If the link text is to be displayed, the icon is added with aria-hidden
|
|
$linktype = '<span class="' . $item->menu_icon . '" aria-hidden="true"></span>' . $item->title;
|
|
} else {
|
|
// If the icon itself is the link, it needs a visually hidden text
|
|
$linktype = '<span class="' . $item->menu_icon . '" aria-hidden="true"></span><span class="visually-hidden">' . $item->title . '</span>';
|
|
}
|
|
}
|
|
|
|
// Add dropdown toggle for items with children
|
|
$headingClass = 'nav-link mod-menu-main__heading';
|
|
if ($item->deeper) {
|
|
$headingClass .= ' dropdown-toggle';
|
|
}
|
|
|
|
?>
|
|
<span class="<?php echo $headingClass . ' ' . $anchor_css; ?>"<?php echo $title; ?>><?php echo $linktype; ?></span>
|