comments_template()
を使用するとき、すべてのコメントは{ Username } says
で始まります。
どうやって " says "の部分を削除することができますか?私が見つけたほとんどの解決策では、CSSを使うことを提案しています:
.says { display: none; }
しかし、文字列はdiv
と呼ばれるsays
にラップされていません。
助言がありますか?ありがとうございます。
@the_dramatistからの答えは、あなたがやりたいことがすべてであれば、おそらく最も簡単ですが、独自のコメントテンプレートを作成することで、それを完全に削除して他のすべてをカスタマイズすることもできます。
Ethanがあなたの質問に対するコメントで述べたように、すべてのテーマは異なっています、それはほとんどのテーマがこれを挿入しているかデフォルトテンプレートを使用しているコメントテンプレートを持っていることを意味します。もしあなたのテーマが既にカスタムのコメントテンプレートを持っているなら、それを編集してください。そうでなければそれはデフォルトの コメント機能 を含み、コメント作成者はテキストを言います。
それ以外にカスタマイズしたいものが他にある場合は、このための独自のテンプレートまたは関数を作成することをお勧めします。あなたは[カスタムコールバックまたはカスタムウォーカーを作成することができます。
それからwp_list_comments()を使って新しいコメントテンプレートを出力します。
だから基本的にこれはテンプレートを使ってこれを行うプロセスです:
functions.php
などに作成します。comments.php
ファイルを作成して新しい関数を呼び出します。Walker
<?php
wp_list_comments( array(
'walker' => new Walker_Comment()
) );
コールバック
<?php wp_list_comments('type=comment&callback=format_comment'); ?>
single.php
に出力します<?php comments_template(); ?>
これが助けになることを願っています。このスニペットを試してください。それをあなたのテーマfunctions.php
に入れるか、あるいはプラグインまたは他の方法でそれをロードすることができます -
function the_dramatist_remove_says_from_comment( $translation, $text, $domain ) {
//what text you want to have instead of 'says' in comments. For removing 'says' keep this blank
$new_var = '';
$translations = &get_translations_for_domain( $domain );
if ( $text == '<cite class="fn">%s</cite> <span class="says">says:</span>' ) {
if($new_var) $new_var = ' '.$new_var; //compensate for the space character
return $translations->translate( '<cite class="fn">%s</cite><span class="says">'.$new_var.':</span>' );
} else {
return $translation; // standard text
}
}
add_filter('gettext', 'the_dramatist_remove_says_from_comment', 10, 4);
自分のfunctions.phpファイルに、WordPressのコメントから "Says" Wordを削除、変更、または変更できるようにする単純な関数を追加する必要があります。このコードをfunctions.phpファイルに挿入してください。
add_filter( 'comment_author_says_text', 'rm_comment_author_says_text' );
function rm_comment_author_says_text() {
return 'Your Text';
}
あなたは私のウェブサイト上でここに完全な指示を見つけるでしょう - WordPressのコメントから「言う」を削除または修正する