WordPress 5.5如何解决回复按钮失效问题?
很多用户在升级到WordPress 5.5后会出现回复按钮失效问题,问题大部分出现在自定义了评论函数或者使用Ajax评论的主题中。那么WordPress 5.5如何解决回复按钮失效问题?可以尝试将下面的代码加到主题functions.php中:
add_filter( ‘comment_reply_link’, ‘mytheme_replace_comment_reply_link’, 10, 4 );
function mytheme_replace_comment_reply_link( $link, $args, $comment, $post ){
if ( get_option( ‘comment_registration’ ) && ! is_user_logged_in() ) {
$link = sprintf( ‘<a rel=”nofollow” class=”comment-reply-login” href=”%s”>%s</a>’,
esc_url( wp_login_url( get_permalink() ) ),
$args[‘login_text’]
);
} else {
$onclick = sprintf( ‘return addComment.moveForm( “%1$s-%2$s”, “%2$s”, “%3$s”, “%4$s” )’,
$args[‘add_below’], $comment->comment_ID, $args[‘respond_id’], $post->ID
);
$link = sprintf( “<span class=’comment-reply-link’ data-href=’%s’ onclick=’%s’ aria-label=’%s’>%s</span>”,
esc_url( add_query_arg( ‘replytocom’, $comment->comment_ID, get_permalink( $post->ID ) ) ) . “#” . $args[‘respond_id’],
$onclick,
esc_attr( sprintf( $args[‘reply_to_text’], $comment->comment_author ) ),
$args[‘reply_text’]
);
}
return $link;
}
可以适当修改其中的class适应自己的主题结构。程序自带的代码位于wp-includes目录comment-template.php大约1817行。另外,WordPress 5.5与主题和插件不兼容的问题很多。