2

我正在自定义一个 wordpress 主题,我正在尝试实现一个子菜单,它只显示当前页面的兄弟页面,不包括我所在的页面。例如,如果结构是:

水果
——苹果—— 梨
——橙子

我在“Apples”上,子菜单将显示“梨”和“橙子”的链接。

另一个转折是我正在使用 twitter bootstrap 进行样式设置。我有以下来自http://wp-snippets.com/list-subpages-and-siblings/的 wordpress 功能:

<?php
global $wp_query;
if( empty($wp_query->post->post_parent) ) {
    $parent = $wp_query->post->ID;
}
else {
$parent = $wp_query->post->post_parent;
} ?>

<?php if(wp_list_pages("title_li=&child_of=$parent&echo=0" )): ?>

<div id="submenu">
    <ul class='breadcrumb'>

 <?php wp_list_pages("title_li=&child_of=$parent" ); ?>

    </ul>
</div>
<?php endif; ?>

我无法弄清楚如何在输出链接(不包括最终链接)之后的链接之间添加分隔符,以及如何从打印中删除我所在的页面。

这是我想要的纯 HTML 标记:

<ul class="breadcrumb smaller-bread">
                      <li><a href="<?php echo site_url('/offerings/apples/'); ?>">Apples</a><span class="divider">-</span></li>
                      <li><a href="<?php echo site_url('/offerings/pears/'); ?>">Pears</a><span class="divider">-</span></li>
                      <li><a href="<?php echo site_url('/offerings/oranges/'); ?>">Oranges</a><span class="divider">-</span></li>
</ul>

有没有人有任何提示或指示让我上路?赞赏,马特

4

1 回答 1

0

你可以放一个 IF !检查每个 li,并根据当前 URL 检查它。像这样的东西会给你当前页面:http ://webcheatsheet.com/php/get_current_page_url.php

然后:

<?php if(! $pageURL == $curPageURL) ?>
  <li> ... </li>
<?php endif; ?>

然后使用 CSS 放置边框,而不是分隔元素,例如:

ul.breadcrumb li {
  border-bottom: 1px solid;
}
ul.breadcrumb li:last-child {
  border-bottom: none;
}
于 2013-01-07T20:24:23.127 回答