我使用高级自定义字段在WordPress网站上开发了一个菜单。它的主页不适用于其他工作。例如,当网站指向它的搜索页面时,菜单消失。需要它出现在网站的每个页面上。
菜单代码如下
<div id="main-menu" class="menu-list">
<?php if( have_rows('header_links') ): ?>
<ul class="list-inline m-menu-ul">
<?php while( have_rows('header_links') ): the_row();
// vars
$menu_title = get_sub_field('menu_title');
$menu_link = get_sub_field('menu_link');
?>
<li class="">
<?php if( $menu_link ): ?>
<a href="<?php echo $menu_link; ?>">
<?php endif; ?>
<?php echo $menu_title; ?>
<?php if( $menu_link ): ?>
</a>
<?php endif; ?>
</li>
<?php endwhile; ?>
</ul>
<?php endif; ?>
</div>
谢谢
看起来您只为主页定义了自定义字段“header_links”。如果你想在所有页面中显示菜单,那么你可以将主页id作为第二个参数传递给have_rows,如下所示:
$page = get_page_by_title( 'Home' );
$home_id = $page->ID;
if(have_rows('header_links',$home_id)):
while( have_rows('header_links',$home_id) ): the_row($home_id);