在索引/存档页面上循环中的每个帖子之后运行的操作?

时间:2011-12-19 作者:Rutwick Gangurde

在这两个页面上显示每个帖子/帖子节选后,是否有运行的操作/过滤器?我使用the_contentget_the_excerpt 目前,但the_content 导致与其他插件冲突(因此执行我的函数两次,内容显示两次),设置优先级不起作用!

注意:我试过了the_post, 但它在这两个页面上循环中的每个帖子之前运行。

Update:

“我的插件”在帖子内容后添加带有图标的自定义标记,使用:the_content- 对于单个帖子/页面和某些主题使用the_content(\'Read More\') 在索引/归档页面上

get_the_excerpt - 对于索引/归档页

插件Advanced Extrapt为帖子摘录添加了一些选项,并允许用户通过设置设置摘录长度。当文章长度小于设置的摘录长度(通过AEs设置)时,我的标记将加倍!当我发表评论时the_content 根据我的代码,冲突会消失,但没有the_content 如何使我的插件在单页/帖子上工作,以及在使用the_content(\'Read More\') 在索引/归档页面上?我想是因为AE打电话the_content 而不是the_excerpt 当post长度小于设置的摘录长度时,会导致双重调用。我尝试将我的筛选函数的优先级设置为高,以便它在AE的筛选函数之后运行,但没有成功!因此,尝试解决方法!我希望这能澄清问题!

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

我不知道有什么专门的操作,但您可以使用函数中的内部缓存防止双重处理。

伪代码:

function content_filter( $content )
{
    static $cache = array();
    $id           = get_the_ID();

    if ( in_array( $id, $cache ) )
    {
        return $content; // we did this already
    }

    $cache[] = $id;

    return $content . \'your awesome extra\';
}

结束

相关推荐

Wordpress: Loop Help

今天早上我在这个网站上工作,我的静态页面遇到了一些问题。我有一个“特色”帖子部分,我使用:<div id=\"featured\"> <img src=\"<?php echo get_bloginfo(\'template_directory\'); ?>/images/house.jpg\" alt\"Buy Me\" /> <div class=\"info\"> <?php query