将删除、批准、垃圾链接添加到评论

时间:2012-06-04 作者:Arg Geo

有人知道如何为有权添加/编辑帖子和评论的用户添加快速评论审核链接吗?(审批/取消审批/编辑/垃圾邮件/垃圾)。Note: 在我的评论中。我用php调用循环<?php wp_list_comments(); ?>

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

按默认值wp_list_comments() 调用类Walker_Comment. Its方法start_el() 呼叫edit_comment_link() 这里我们为你的问题找到一个过滤器:它被称为\'edit_comment_link\' 它传递两个变量,链接文本和注释ID,我们可以使用它们。

将评论标记为垃圾邮件或将其删除的URL包括:

  • wp-admin/comment.php?c=1&action=cdc&dt=spam 用于垃圾邮件和wp-admin/comment.php?c=1&action=cdc 用于删除
我们可以添加一个参数redirect_to= 在评论被破坏后将我们发回帖子。

这是我刚刚拼凑的一个插件示例(GitHub address):

<?php # -*- coding: utf-8 -*-
/**
 * Plugin Name: T5 Comment moderation links
 * Version:     2012.06.04
 * Author:      Thomas Scholz <[email protected]>
 * Author URI:  http://toscho.de
 * License:     MIT
 * License URI: http://www.opensource.org/licenses/mit-license.php
 */

if ( ! function_exists( \'t5_comment_mod_links\' ) )
{
    add_filter( \'edit_comment_link\', \'t5_comment_mod_links\', 10, 2 );

    /**
     * Adds Spam and Delete links to the Sdit link.
     *
     * @wp-hook edit_comment_link
     * @param   string  $link Edit link markup
     * @param   int $id Comment ID
     * @return  string
     */
    function t5_comment_mod_links( $link, $id )
    {
        $template = \' <a class="comment-edit-link" href="%1$s%2$s">%3$s</a>\';
        $admin_url = admin_url( "comment.php?c=$id&action=" );

        // Mark as Spam.
        $link .= sprintf( $template, $admin_url, \'cdc&dt=spam\', __( \'Spam\' ) );
        // Delete.
        $link .= sprintf( $template, $admin_url, \'cdc\', __( \'Delete\' ) );

        // Approve or unapprove.
        $comment = get_comment( $id );

        if ( \'0\' === $comment->comment_approved )
        {
            $link .= sprintf( $template, $admin_url, \'approvecomment\', __( \'Approve\' ) );
        }
        else
        {
            $link .= sprintf( $template, $admin_url, \'unapprovecomment\', __( \'Unapprove\' ) );
        }

        return $link;
    }
}
TwentyEleven屏幕截图(样式表颠倒顺序):

enter image description here

SO网友:its_me

这就是我所使用的(作为参考添加-托肖的答案更好,原因有很多):

<?php if (current_user_can(\'edit_post\')) {
    $id = get_comment_ID();
    echo \' <a href="\'.admin_url("comment.php?action=cdc&c=$id").\'">[Delete]</a>\';
    echo \' <a href="\'.admin_url("comment.php?action=cdc&dt=spam&c=$id").\'">[Spam]</a>\';
} ?>
大多数主题都有“编辑”链接,所以我没有包括这个链接。

Example Preview:

Delete Spam

结束

相关推荐

Format HTTP links

我有一个自定义页面模板,可以在以下位置的WP页面上创建xml提要:http://example.com/xml/我试图通过Google Maps访问此xml文档,但似乎我需要实际的文件名,例如。com/xml/example。xml如何添加。链接末尾的xml文件扩展名http://example.com/xml/ ?EDIT:我在主题中使用一个页面模板来显示XML的输出。XML部分可能与此无关。归根结底,我想应该是如何从页面模板(如/example)中指定特定的文件扩展名。xml