我有这段代码:
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>
所以我解决了我的问题,但如果你还有其他更好的方法,你可以在这里发布你的解决方案。
答案 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