Files
MokoOnyx/src/html/mod_menu/mainmenu_heading.php
T
Jonathan Miller 7b52a06cc1
Joomla: Repo Health / Access control (push) Successful in 1s
Joomla: Repo Health / Release configuration (push) Failing after 3s
Joomla: Repo Health / Scripts governance (push) Successful in 2s
Joomla: Repo Health / Repository health (push) Failing after 3s
fix(menu): remove hardcoded p-2 padding from menu icon spans
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>
2026-05-16 14:33:55 -05:00

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>