web-dev-qa-db-ja.com

コメント返信リンクの編集

WP-Hackers Listでこのサイトを見つけ、WordPressを何年も使って(部分的におかげで生計を立てて)このサイトにつまずいたことはない!

これをWP-Hackersリストに掲載しましたが、解決策が見つかりませんでした。

私はWordPress 3.1がコメントのReplyリンクからnofollow属性を削除したことを知っています(WordPress 3.1ベータ版は良さそうに見えます)が、WordPress 3.0.3以下のリンクからもnofollow属性を削除することでうまくいく何か賢明に取り組んでいました、しかしうまくいかない。

/wp-includes/comment-template.phpから

 } else {
  $link = "<a rel='nofollow' class='comment-reply-link' href='" . get_permalink($post->ID) . "#$respond_id' onclick='return addComment.moveForm(\"$add_below-$post->ID\", \"0\", \"$respond_id\", \"$post->ID\")'>$reply_text</a>";
 }
 return apply_filters('post_comments_link', $before . $link . $after, $post);

WordPress 3.1では、rel = 'nofollow'は上記のコードから削除されました。私はWordPress 3.0.3以下のテーマレベルで同じことを達成しようとしています。

テストが機能するように、基本的にこのコードをコメントループに追加します。

$comment->comment_content = str_replace('nofollow', 'Test One',$comment->comment_content);

これにより、コメント本文からテキストnofollowが削除されます。

私は試した

$comment_reply_link->reply_text  = str_replace('Reply', 'Test Two',$comment_reply_link->reply_text );

返信リンクのアンカーテキストを置き換える別のテストとして、自分が正しい方向に進んでいることを確認します。

うまくいきませんでした。

そして

$comment_reply_link->link  = str_replace('nofollow', '',$comment_reply_link->link );

rel属性のnofollow部分を削除します。

どちらもうまくいきませんでした

喜びもなくさまざまな順列を試しました。

何か案は?

ダビデ

3
David Law

functions.php:

function remove_nofollow($link, $args, $comment, $post){
  return str_replace("rel='nofollow'", "", $link);
}

add_filter('comment_reply_link', 'remove_nofollow', 420, 4);
5
onetrickpony