我正在尝试自定义输出代码
<?php comment_form(); ?>
目前,提交按钮输出以下内容:
<p class="form-submit">
<input name="submit" type="submit" id="submit" value="Post Comment">
<input type="hidden" name="comment_post_ID" value="486" id="comment_post_ID">
<input type="hidden" name="comment_parent" id="comment_parent" value="0">
</p>
我希望它输出以下内容:
<div class="darkbutton" onclick="document.commentform.submit()">
<span class="darkbutton-left"></span><a href="javascript: submitform()">Log In</a>
<span class="darkbutton-right"></span>
</div>
以便完全重新设计按钮。现在我知道可以通过编辑评论模板中的核心 Wordpress 文件来完成.php但如果有任何其他方法,我真的不想这样做。
任何建议非常感谢! :)
有一个技巧
.form-submit{display: none;}
您可以在之后关注
$args = array(
'comment_notes_after' => '<button type="submit" id="submit-new"><span>'.__('Post Comment').'</span></button>'
);
comment_form($args);
我需要添加一个类到表单标签和提交按钮。我不知道我在哪里找到它,但这个解决方案帮助了我。您必须修改str_replace以满足您的需求。
ob_start();
comment_form($comments_args, $post_id);
$form = ob_get_clean();
$form = str_replace('class="comment-form"','class="comment-form my-class"', $form);
echo str_replace('id="submit"','class="btn btn-warning"', $form);
> Wrodpress有"可插拔函数",允许你覆盖一些核心函数。这很有用,因为它们不会在升级等时覆盖您的更改。但是,看起来comment_form()
并不是其中之一。
如果您希望避免修改核心文件,为什么不直接编辑模板文件以输出所需的代码,而不是调用 comment_form()
函数?否则,我很确定您只需要修改该文件。
您可以在此处阅读有关此问题的一些讨论,但看起来尚未对WP代码库进行任何修复。
现在,我正在使用jQuery对客户端的按钮进行样式更改。您可以使用 jQuery 生成<div>
块,然后通过执行以下操作隐藏其form-submit
块:
.form-submit {
display: none;
}
这不是万无一失的代码,但这是一个黑客,在他们实现更好的东西之前会起作用。