我通过使用原生WordPress函数获得了一个很棒的评论表单和线程评论设置:comment_form
和wp_list_comments
.
然而,我还试图为某些帖子创建一个自定义的竞赛评论模板。我打电话comments_template(\'/contest-comments.php\', true);
有条件地基于是否存在某个自定义字段。它工作得很好。
我想让它看起来像http://2010.sf.wordcamp.org/attendees/
我只想显示包裹在链接中的人的名字和他们的头像。因此,我希望我的评论表单只显示名称、电子邮件和URL字段。文本区域应隐藏。
对于注释表单,我将为comment_field
输入$args
我要传递到的数组comment_form
.
这使得评论表单看起来不错,但当有人提交评论时,他们会收到WordPress的警告,说他们的消息是空白的。
有什么解决方法吗?谢谢
最合适的回答,由SO网友:onetrickpony 整理而成
简短回答:没有,但你可以绕过这个问题:
add_filter(\'comment_form_field_comment\', \'my_comment_form_field_comment\');
function my_comment_form_field_comment($default){
return false;
}
add_action(\'pre_comment_on_post\', \'my_pre_comment_on_post\');
function my_pre_comment_on_post($post_id){
$some_random_value = rand(0, 384534);
$_POST[\'comment\'] = "Default comment. Some random value to avoid duplicate comment warning: {$some_random_value}";
}
如果您只想对某些页面使用此选项,则应创建
custom page template, 对于例如“boo.php”,在我上面发布的代码中,仅当当前页面模板为boo时添加这些过滤器(使用
$post->page_template
在执行检查时获取当前页面模板)。
相关问题: