Php WP评论未正确发布
我一直在从头开始开发一个自定义wordpress主题,但在comments.php文件中遇到了一个小问题 我认为问题源于该文件的第44行,因为当我尝试在我的博客文章上留下评论时,无论是否登录,都会通过以下方式进行评论:Php WP评论未正确发布,php,wordpress,wordpress-theming,Php,Wordpress,Wordpress Theming,我一直在从头开始开发一个自定义wordpress主题,但在comments.php文件中遇到了一个小问题 我认为问题源于该文件的第44行,因为当我尝试在我的博客文章上留下评论时,无论是否登录,都会通过以下方式进行评论: www.mydomain.com/postlink/wp-comments-post.php 当它自然需要转到: www.mydomain.com/wp-comments-post.php 更新 这就是我决定要做的!我从头开始,编写了comments.php文件,如下所示:
www.mydomain.com/postlink/wp-comments-post.php
当它自然需要转到:
www.mydomain.com/wp-comments-post.php
更新
这就是我决定要做的!我从头开始,编写了comments.php文件,如下所示:
<div id="comments">
<?php if ( post_password_required() ) : ?>
<p>This post is password protected. Enter the password to view and comments</p>
</div>
<?php
return;
endif;
?>
<?php if ( have_comments() ) : ?>
<ol>
<?php wp_list_comments ( array( 'callback' => 'BRUM_Theme_comment') ); ?>
</ol>
<?php
elseif ( ! comments_open() && ! is_page() && post_type_supports( get_post_type(), 'comments' ) ) :
?>
<p>Comments are closed</p>
<?php endif; ?>
<?php comment_form(); ?>
</div>
这篇文章有密码保护。输入查看和评论的密码
评论已关闭
然后我将这段代码添加到我的functions.php文件中!到目前为止,这已经使我的评论出现,人们也可以在我的博客帖子上留下评论!但到目前为止,“回复”按钮尚未呈现
<?php
function BRUM_Theme_comment( $comment, $args, $depth ){
$GLOBALS['comment'] = $comment;
?>
<?php if ( $comment->comment_approved == '1'): ?>
<li>
<article id="comment-<?php comment_ID() ?>">
<?php echo get_avatar( $comment ); ?>
<h4>
<?php comment_author_link() ?>
</h4>
<time><a href="#comment-<?php comment_ID() ?>" pubdate><?php comment_date() ?> at <?php comment_time() ?></a></time>
<?php comment_text() ?>
</article>
<?php endif;
}
试试这个:
<div id="respond">
<?php
if (!empty($_SERVER['SCRIPT_FILENAME']) && 'comments.php' == basename($_SERVER['SCRIPT_FILENAME']))
die ('Please do not load this page directly. Thanks!');
if ( post_password_required() ) { ?>
This post is password protected. Enter the password to view comments.
<?php
return;
}
?>
<?php if ( have_comments() ) : ?>
<h2 id="comments"><?php comments_number('No comments', 'One comment', '% Comments' );?></h2>
<div class="navigation">
<div class="next-posts"><?php previous_comments_link() ?></div>
<div class="prev-posts"><?php next_comments_link() ?></div>
</div>
<ol class="commentlist">
<?php wp_list_comments(); ?>
</ol>
<div class="navigation">
<div class="next-posts"><?php previous_comments_link() ?></div>
<div class="prev-posts"><?php next_comments_link() ?></div>
</div>
<?php else : // this is displayed if there are no comments so far ?>
<?php if ( comments_open() ) : ?>
<!-- If comments are open, but there are no comments. -->
<?php else : // comments are closed ?>
<p>Comments are closed.</p>
<?php endif; ?>
<?php endif; ?>
<?php if ( comments_open() ) : ?>
<h2><?php comment_form_title( 'Leave an reply', 'Leave a reply in %s' ); ?></h2>
<div class="cancel-comment-reply">
<?php cancel_comment_reply_link(); ?>
</div>
<?php if ( get_option('comment_registration') && !is_user_logged_in() ) : ?>
<p>You must be <a href="<?php echo wp_login_url( get_permalink() ); ?>">logged in</a> to post a comment.</p>
<?php else : ?>
<br class="c" />
<form action="<?php echo get_option('siteurl'); ?>/wp-comments-post.php" method="post" id="commentform">
<?php if ( is_user_logged_in() ) : ?>
<p>Logged as <a href="<?php echo get_option('siteurl'); ?>/wp-admin/profile.php"><?php echo $user_identity; ?></a>. <a href="<?php echo wp_logout_url(get_permalink()); ?>" title="Log out of this account">Log out »</a></p>
<?php else : ?>
<div>
<input type="text" value="Name" onblur="if (this.value == '') {this.value = 'Name';}" onfocus="if (this.value == 'Name') {this.value = '';}" name="author" id="author" size="22" tabindex="1" <?php if ($req) echo "aria-required='true'"; ?> />
</div>
<div>
<input type="text" value="Email" onblur="if (this.value == '') {this.value = 'Email';}" onfocus="if (this.value == 'Email') {this.value = '';}" name="email" id="email" size="22" tabindex="2" <?php if ($req) echo "aria-required='true'"; ?> />
</div>
<div>
<input type="text" value="Website" onblur="if (this.value == '') {this.value = 'Website';}" onfocus="if (this.value == 'Website') {this.value = '';}" name="url" id="url" size="22" tabindex="3" />
</div>
<?php endif; ?>
<br />
<div>
<textarea name="comment" id="comment" cols="58" rows="10" tabindex="4"></textarea>
</div>
<br class="c" />
<div>
<input name="submit" type="submit" id="submit" tabindex="5" value="Send" />
<?php comment_id_fields(); ?>
</div>
<?php do_action('comment_form', $post->ID); ?>
</form>
<?php endif; // If registration required and not logged in ?>
</div>
<?php endif; ?>
这篇文章有密码保护。输入密码以查看评论。
评论已关闭
你必须要发表评论
完成任务了,卢卡斯,伙计!我不得不稍微调整一下代码,从OL中删除这个类,并调整我的css,因为它使化身100%变大和模糊!为了使注释的样式更好,我对css代码所做的就是这样:
#respond {float: left;}
#respond img {width: auto; height: auto; float: left; margin-right: 4px; border: 1px solid #aab59a; padding: 1px; border-radius: 10px;}
#respond ol li { background: #f1f1f1; margin:10px 0;padding:8px;border:2px solid #ccc;font-style:normal;list-style: none; border-radius: 10px;}
另外,这是一个很好的功能,人们可以将它添加到functions.php文件中,因为它将reply to链接到reply to commentors name中:
/*
* Change the comment reply link to use 'Reply to <Author First Name>'
*/
function add_comment_author_to_reply_link($link, $args, $comment){
$comment = get_comment( $comment );
// If no comment author is blank, use 'Anonymous'
if ( empty($comment->comment_author) ) {
if (!empty($comment->user_id)){
$user=get_userdata($comment->user_id);
$author=$user->user_login;
} else {
$author = __('Anonymous');
}
} else {
$author = $comment->comment_author;
}
// If the user provided more than a first name, use only first name
if(strpos($author, ' ')){
$author = substr($author, 0, strpos($author, ' '));
}
// Replace Reply Link with "Reply to <Author First Name>"
$reply_link_text = $args['reply_text'];
$link = str_replace($reply_link_text, 'Reply to ' . $author, $link);
return $link;
}
add_filter('comment_reply_link', 'add_comment_author_to_reply_link', 10, 3);
希望其他人觉得它有用,再次感谢它的工作出色 嗨,Phillip,如果你找到了问题的解决方案,请将你的解决方案作为答案发布,然后接受。太好了,很高兴Phillip解决了问题!您可以随意修改或更改任何您想要的方式。谢谢分享你的功能代码!一切都好!考虑到这一点,我可以离开ol类,将其添加到我的css中#respond>。commentlist ol li现在就开始搜索我的自定义主题,回到Wordpress Codex和github!