带有ACF字段的子菜单的Walker类

时间:2019-04-24 作者:Phill

首先,我想知道这是否是最好的方法。

我有一个基本导航,一个项目有孩子。

子级需要包装在容器div中,每个子级需要从其关联页面中提取一些ACF值(图像、ACF repeater值)。孩子们基本上是内容+背景图像的平铺。

学步班是实现这一目标的最佳方式吗?我唯一能做的就是影响所有nav项目,我不确定如何使子项目受到影响并引入ACF值。

谢谢

1 个回复
SO网友:WebElaine

是的,如果你想继续使用WP导航菜单,步行机是正确的选择。

要仅影响某一级别(即子女、孙子女、父母等),您可以使用$depth.

class wpseWalker extends Walker_Nav_Menu {
    public function start_el(&$output, $item, $depth = 0, $args = array(), $id = 0) {
        // Check $depth - if it\'s 0 it\'s the top parent, 1 is a direct child
        if($depth == 1) {
            // Just temporarily, show all the item\'s properties
            // You\'ll want to grab the ID from here and pull the ACF data
            $output .= print_r($item, true);
        }
    }
}
您还需要检查并确保ACF数据存在,以防有人设置了没有该信息的菜单项。

相关推荐

如何让`wp-list-table`显示我在Custom-Post中的`Custom-Fields`

一切都好吗<我需要wp-list-table 也要显示custom-fields 在每个custom-post 我有,但我不知道如何做到这一点,在这幅图中,它显示了带有字段的表格:Title, Author and Publication Date: 我想要的是能够选择custom-fields 将出现,例如以下示例Title, Carta, Naipe, Author, and Date of Publication: