我已经为帖子设置了一个静态页面(页面id=110)。只有当用户登录时,此页面才应包含在菜单中。后者是通过以下添加来实现的header.php
(来自menu <ul>
标签)。
<?php wp_list_pages(\'sort_column=ID&exclude=100,110,145&title_li=\'); ?>
<?php if ( is_user_logged_in() ) { ?>
<li ><a href="<?php echo get_permalink(110); ?>">Title</a></li>
<?php } else { ?>
<?php } ?>
我正在使用
freshy2
并定制了CSS,以便标题导航菜单中当前页面的链接具有其他页面的另一种背景颜色(标准程序…)。
然而,由于ID为110的页面是静态贴子页面,我找不到一个解决方案来对该页面执行相同的操作。这是因为is_page(110)
退货false
因为它将当前职位类型识别为is_single()
当我查询帖子ID时,会返回最新帖子的ID。显然,我不能使用后者来查询当前显示,因为它一直在变化。
这是我目前的情况。这类作品,但只完成了一半,因为现在背景颜色始终是特殊颜色,即使帖子页面不是当前显示的“项目”。
<?php if ( is_user_logged_in() ) { ?>
<li <?php
if (get_option(\'page_for_posts\'))
{
echo " class=\\"page_item page-item-110 current_page_item\\"";
}
else
{
global $wp_query;
$thePostID = $wp_query->post->ID;
echo " class=\\"" . $thePostID . "\\"";
}
?>><a href="<?php echo get_permalink(110); ?>">Title</a></li>
<?php } else { ?>
<?php } ?>
有什么想法吗?提前多谢!
EDIT:
建议使用此代码
below, 我只是简单地添加了原始数据中缺少的值
wp_list_pages
):
<?php if(!is_user_logged_in())
{
$args = array(
\'exclude\' => \'100,110,145\',
\'sort column\' => \'ID\',
\'title_li\' => \'\'
);
}
else
{
$args = array(
\'exclude\' => \'100,145\',
\'sort column\' => \'ID\',
\'title_li\' => \'\'
);
}
wp_list_pages( $args );
?>