要替换评论或添加新评论系统的过滤器或操作

时间:2013-07-09 作者:Dan

我想为我的网站制作一个插件,它要么替换帖子中的当前评论,要么添加一个额外的评论系统。

我从我的论坛上的一个自定义RSS源中获得评论,该RSS源链接到帖子。我有以下工作。

function swmc_comments_callback( $comment, $args, $depth ) {
$GLOBALS[\'comment\'] = $comment;
global $post;

include_once(ABSPATH . WPINC . \'/class-simplepie.php\'); 

//require \'includes/simplepie.inc\';  
$feed = new SimplePie();  
$feed->set_feed_url(\'<feedurl>?swmc=syndicate&article=\'.$post->ID); 
$feed->force_feed(true);
$feed->set_item_class();  
$feed->enable_cache(false);  
$feed->set_cache_duration(3600);  
$feed->init();  
$feed->handle_content_type(); 

if ($feed->error())
{
    echo $feed->error();
}

$max = $feed->get_item_quantity();

for ($x = 0; $x < $max; $x++)   {
    $item = $feed->get_item($x);    

    if ($author = $item->get_author())
    {
        $username = $author->get_name();
    }

    //echo "<br/><br/>title: ".$item->get_title();
    $dan_data = $item->get_description();

    //echo "<br/>Posted on ". $item->get_date(\'j F Y | g:i a\');
    //echo  "<br/>username: ".$username;
    ?>
    <li <?php comment_class(); ?> id="li-comment-<?php $x; ?>">
    <article id="comment-<?php $x; ?>" class="comment">

        <div class="comment-content"><?php echo $dan_data; ?></div>

        <p><?php echo "Comment author: ".$username; ?></p>


    </article>
    </li>
    <?

}
}

然后,我可以使用

<?php wp_list_comments( array( \'callback\' => \'swmc_comments_callback\' ) ); ?>
然而,这将起作用。我希望它能够跨所有主题工作,但我不知道如果不将其添加到模板中,我该如何调用它。

我应该使用过滤器或挂钩吗?

切尔斯丹

1 个回复
SO网友:Dan

答案是filter comments\\u模板

add_filter("comments_template", "swmc_comments_template");

结束