审批、垃圾邮件、垃圾邮件等选项不会出现在管理面板中的评论中

时间:2013-01-15 作者:Bhuvnesh Gupta

我在comment-template.php, wp-comment-post.php 因此,现在我存储评论时不附加任何帖子或页面(我将comment\\u post\\u id设置为0)。但现在的问题是,当我在管理面板上看到所有评论时,带有0 comment\\u post\\id的评论没有垃圾邮件、垃圾、批准等选项。如何解决?

实际上,我想将评论与帖子或页面分开存储,但在任何帖子或页面的评论中都有完整的功能,如是否登录,姓名、电子邮件等字段,以及审批、垃圾、垃圾邮件等管理面板选项。。

我可以用任何其他执行与注释表单相同的插件来实现这一点吗。

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

我找到了一种方法,在评论贴到DB的帖子之前劫持了它。使用下面的代码段,您可以将每个注释附加到虚拟帖子。只要换一下COMMENT_ID 到虚拟柱的ID。无需破解核心!

<?php
add_filter(\'preprocess_comment\', \'akt_hijack_comment\');
function akt_hijack_comment($comment) {
    define(\'AKT_REDIRECT_URL\', $comment[\'comment_post_ID\']);
    $comment[\'comment_post_ID\'] = 63;
    return $comment;
}
add_filter(\'comment_post_redirect\', \'akt_redirect\');
function akt_redirect($location) {
    return get_permalink(AKT_REDIRECT_URL);
}
一个我还没有尝试解决的副作用:提交评论后,用户被重定向到虚拟帖子。我不确定今晚是否有时间来解决这个问题

我编辑了代码,将用户重定向回评论的同一页面。

编辑:您可以将其制作成插件(添加// Plugin Name: SOME_NAME 在下面<?php) 或mu插件(粘贴为文件并上载到wp-content/mu-plugins - 如果需要,创建mu插件目录)。也可以粘贴到函数中。主题的php(最不可取的方法)。

结束

相关推荐

如何正确使用Comments-template.php

我想修改已登录用户和未登录用户的评论表单。我通过更改注释修改了未登录用户的表单。php,但我不太确定如何为登录用户修改我的表单。我知道我必须使用comments\\u template(),但每当我尝试在页面中使用它时。php,我遇到这样的错误Notice: Undefined variable: args in {PATH}/twwr-theme/comments-template.php on line 13 这些是我评论的内容。php,有点乱<?php if (!empty