php - 在 wp_nav_menu() 中到达页面的 ACF 字段
问题描述
我的标题中有这个简单的片段,显示了网站的主菜单:
<?php wp_nav_menu( array(
'theme_location' => 'main-menu',
'container'=> false ) );
?>
菜单显示站点的页面。每个页面都有一个自定义字段,其中添加了名为 的高级自定义字段text_color
。这是一个颜色选择器,让我选择悬停在菜单项上时应具有的颜色。我希望在页面本身的设置中包含此字段,而不是作为添加到 Wordpress 菜单设置中的字段。
悬停效果是使用名为 的数据属性创建的data-hover
。mouseover
然后,我通过 JavaScript 在每个菜单项上侦听mouseleave
事件,将悬停时菜单项的文本颜色更改为data-hover
.
由于每个菜单项都连接到一个页面,我希望能够访问每个菜单项的页面循环,将其添加data-hover
到菜单项中的每个锚链接。这可能吗?
解决方案
将此添加到主题中的functions.php
add_filter( 'nav_menu_link_attributes', 'add_custom_data_atts_to_nav', 10, 4 );
function add_custom_data_atts_to_nav( $atts, $item, $args ) {
$atts['data-hover'] = $item->title;
return $atts;}
希望这会有所帮助!
推荐阅读
- cocoapods - Cocoapods - 我无法在我的 Mac 上安装 cocoapods。我正在按照 cocoapods.org 的步骤安装 cocoapods
- java - 尝试从 Servlet 连接时,Tomcat 看不到我的 CONTEXT.XML,我也使用 IDEA Intellij
- c# - CLR 类型到 EDM 类型的映射不明确,因为多个 CLR 类型
- java - 为什么标记为最终或静态的字段未保存在数据库中
- python - Ubuntu 18.04 python 2.7 urllib 请求未获取数据
- python - django:在我的网页中查看 python 脚本的结果
- raspberry-pi - 树莓派零和迷你热敏打印机问题
- swift - spritekit 无法从后台状态打印
- java - 如何在 Kotlin 中将功能接口操作作为参数传递?
- python - 每个服务器前缀