尝试使用自定义注释函数时出错

时间:2014-12-29 作者:Digital Brent

我正在尝试编写一个函数,使我能够更好地控制帖子页面上评论的显示。然而,我对如何设置它以便WordPress可以使用它感到困惑。现在我得到以下错误:

警告:call\\u user\\u func()要求参数1为有效回调,在/Users/Brent/Desktop/Web Design/WP playway/wordpress/WP includes/comment模板中找不到函数“custom\\u comments()”,或函数名无效。php在线1711

下面是对函数的调用:

<div class="comment-list">
    <?php
    wp_list_comments(\'type=comment&callback=custom_comments()\');
    ?>
</div><!-- .comment-list -->
这是我的功能部分。php文件如下所示:

add_action(\'load_comments\', \'custom_comments\');

function custom_comments($comment, $args, $depth) {
    $GLOBALS[\'comment\'] = $comment;
    ?>

        <li <?php comment_class(); ?> id="li-comment-<?php comment_ID() ?>">

            <div class="comment-intro">
                <em>commented on</em> 
                <a class="comment-permalink" href="<?php echo htmlspecialchars(get_comment_link($comment->comment_ID)) ?>"><?php printf(__(\'%1$s\'), get_comment_date(), get_comment_time()) ?></a>
                <em>by</em> 
        <?php printf(__(\'%s\'), get_comment_author_link()) ?>
            </div>

        <?php if ($comment->comment_approved == \'0\') : ?>
                    <em><php _e(\'Your comment is awaiting moderation.\') ?></em><br />
        <?php endif; ?>

            <?php comment_text(); ?>

            <div class="reply">
        <?php comment_reply_link(array_merge($args, array(\'depth\' => $depth, \'max_depth\' => $args[\'max_depth\']))) ?>
            </div>

<?php } ?>
有谁能告诉我,我在这里做错了什么来得到这个错误吗?我从对这个问题的研究中了解到,有时需要从另一个可能与此函数冲突的函数中删除\\u action,但我甚至不确定是否正确调用了此函数。请帮忙,我很难找到关于如何使用自定义注释功能的好资源。

这是我找到的唯一好的资源,因此我一直遵循这一点,但它没有说明任何错误:Custom Comments HTML Output

当我在google上搜索错误时,我发现这个页面有点帮助,但我还不能确定罪魁祸首函数:wordpress.org

我在这里查了一些其他问题,但他们似乎主要是问其他具体问题。非常感谢您的帮助!

1 个回复
SO网友:shanebp

你不应该() 在回调字段上。你不应该需要add_action 所以删除

add_action(\'load_comments\', \'custom_comments\');
然后尝试:

 wp_list_comments(\'type=comment&callback=custom_comments\');
此外,您应该提取$args 因此,它们在您的功能中可用:

function custom_comments($comment, $args, $depth) {
    $GLOBALS[\'comment\'] = $comment;
    extract($args, EXTR_SKIP);
    //etc

http://codex.wordpress.org/Function_Reference/wp_list_comments

结束

相关推荐

COMMENTS_NUMBER打印失败

我想使用模板标记显示帖子上的评论数 <?php comments_number( $zero, $one, $more ); ?> 但是,由于某些原因,此标记不起任何作用,也不会打印到页面上。你可以看看我在http://blog.diginomics.com/bitcoins-innate-regulation/以下是3个模板标记的完整代码片段:author、category和comment: <div class=\