我目前正在使用此代码输出(使用wp_list_pages)当前页面子列表。
<?
if(wp_list_pages('child_of='.$post->ID.'&echo=0&exclude=2')) {
wp_list_pages('title_li=&child_of='.$post->ID.'&exclude=2');
}
elseif(get_the_title($post->post_parent) != the_title(' ' , ' ',false)) {
wp_list_pages('child_of='.$post->post_parent.'&title_li=&exclude=2');
} ?>
我想将此代码与另一个代码合并,使我能够为li元素添加顺序编号,如下所示。
<?php $list_of_pages = wp_list_pages('echo=0&title_li=&depth=1' );
$list_pages = explode('<li class="',$list_of_pages); $len = count($list_pages);
for ($i = 0; $i <= $len-2; $i++) :
echo $list_pages[$i] . '<li class="link-' . ($i+1) . ' ';
endfor; echo $list_pages[$i]; ?>
但是我对PHP并不是特别方便,如果有人能指出我正确的方向使用两个代码片段组合,我将非常感激。
答案 0 :(得分:1)
它有点乱,但它的工作原理,以后总是有空间重构下面的代码。下面的代码首先检查页面是否是子页面的父页面。如果它是子页面,它将只显示孩子。它为每个列表项(甚至子项)添加一个增量计数器,并通过调用echo = 0启动计数器。希望这有帮助
<?php
if(wp_list_pages('child_of='.$post->ID.'&echo=0&exclude=2')) {
$list_of_pages = wp_list_pages('echo=0&title_li=&child_of='.$post->ID.'&exclude=2');
$list_pages = explode('<li class="',$list_of_pages); $len = count($list_pages);
for ($i = 0; $i <= $len-2; $i++) :
echo $list_pages[$i] . '<li class="link-'.($i+1). ' ';
endfor; echo $list_pages[$i];
}
elseif(get_the_title($post->post_parent) != the_title(' ' , ' ',false)) {
$list_of_pages = wp_list_pages('echo=0&child_of='.$post->post_parent.'&title_li=&exclude=2');
$list_pages = explode('<li class="',$list_of_pages); $len = count($list_pages);
for ($i = 0; $i <= $len-2; $i++) :
echo $list_pages[$i] . '<li class="link-'.($i+1). ' ';
endfor; echo $list_pages[$i];
} ?>