Wordpress WP_LIST_PAGES插入范围

时间:2013-10-17 00:34:18

标签: wordpress

我有这段代码:

if($post->post_parent)
$children = wp_list_pages("title_li=&child_of=".$post->post_parent."&echo=0");
else
$children = wp_list_pages("title_li=&child_of=".$post->ID."&echo=0");
if ($children) { ?>
<ul id="siderbar_menuchild">
<?php echo $children; ?>
</ul>
<?php } ?>

结果是:

<ul>
<li><a href="page_link">page_name</a></li>
<li><a href="page_link">page_name</a></li>
etc...
</ul>

现在这就是我想要展示的内容:

$text1="text1"
$text2="text2"
$text3="text3"
etc...

<ul>
<li><a href="page_link">page_name<span>text1</span></a></li>
<li><a href="page_link">page_name<span>text2</span></a></li>
etc...
</ul>

感谢任何帮助。 感谢。

LE:好的,我把以下一行:

$children = str_replace('</a>', '<span></span></a>', $children);

现在标签放置很好。

但我仍然需要找到一种方法如何为每个范围添加不同的文字。

LE2:我用jquery插入文本,没找到任何PHP方法,我用了以下几行:

<script type="text/javascript">
$(".page-item-53 span").text("Your text here Your text here Your text here");
</script>

所以我解决了我的问题,但如果你还有其他更好的方法,你可以在这里发布你的解决方案。

1 个答案:

答案 0 :(得分:0)

使用link_after wp_list_pages()属性来实现此目标。

if($post->post_parent)
$children = wp_list_pages("title_li=&child_of=".$post->post_parent."&echo=0&link_after=<span>text </span>");
else
$children = wp_list_pages("title_li=&child_of=".$post->ID."&echo=0&link_after=<span>text </span>");
if ($children) { 
?>
<ul id="siderbar_menuchild">
<?php echo $children; ?>
</ul>
<?php } ?>

对于数字,我使用css counter-increment

<style>
body {
  counter-reset: section;           /* Set the section counter to 0 */
}
#siderbar_menuchild  li.page_item 
{
  counter-increment: section;
} 
#siderbar_menuchild li.page_item span:after { 
  content: counter(section); 
}
</style>

参考:

http://codex.wordpress.org/Function_Reference/wp_list_pages

https://developer.mozilla.org/en-US/docs/Web/Guide/CSS/Counters