Walker类:提取函数和wp_list_ages

时间:2011-11-23 作者:AlxVallejo

我只是在分析我的自定义Walker类,因为它经常跳过我附加到$output HTML中的一些post\\U元数据。

即使设置了自定义字段,Walker也会忽略这些字段。它们仅在我返回到我的函数时显示。然后重新运行设置自定义字段的函数。

这个extract 函数用于获取参数,并使用walker中提供的新参数跳过这些参数。

在这种情况下,将跳过无效/数字键和冲突,因此我假设每次都会运行自定义Walker。

我将给出一个如何获取自定义字段的示例:

$CommentCount = get_post_meta($page->ID, \'num_comments_in_Tree\', true);
    if(empty($CommentCount)){
        $CommentCount = "";
    }else{$CommentCount = \'&nbsp;<span style="font-size:.75em">
    comments: (\' . get_post_meta($page->ID, \'num_comments_in_Tree\', true)
    . \')</span>&nbsp;\';}

    $MetaOutput = $CountChildren . $PageLastModifiedDate . 
    $CommentCount . $LastCommentDate . $Description;

    $output .= $indent . 
                \'<li><div class="link"><a href="\' . get_page_link($page->ID) . \'" title="\' . 
                esc_attr( wp_strip_all_tags( apply_filters( \'the_title\', $page->post_title, $page->ID ) ) ) . \'">\' . 
                $link_before . apply_filters( \'the_title\', $page->post_title, $page->ID ) . $link_after . \'</a>\' . $MetaOutput . \'</div>\';
^请参见$元输出的最后一行末尾。

我不知道为什么,如果在每个页面上都设置了自定义字段,那么只有在我重新运行设置自定义字段的函数时,它们才会显示出来。

1 个回复
最合适的回答,由SO网友:AlxVallejo 整理而成

最后,我在自己身上运行了两次该函数。这样,一旦walker更新了最后一个元素,它就会返回顶部更新第一个元素。

结束

相关推荐