サポート » 使い方全般 » コメント欄の項目名を変えたい

  • 解決済 WP_manabu

    (@wp_manabu)


    ブログのコメント欄の「名前」という項目を、「名前(ニックネームでもいいよ)」に変更したいんです。
    どのような手順を踏めばよいでしょうか。よろしくお願いいたします。

10件の返信を表示中 - 1 - 10件目 (全10件中)
  • こんにちわ、WP_manabu さん。

    comment_form_default_fields というフィルターフックを使えば変更可能です。具体的な方法は、Codex に記載がありますので読んでみてください。

    https://codex.wordpress.org/Function_Reference/comment_form

    KUCKLUさん、ご回答、ありがとうございます。

    「フィルターフック」という言葉を糸口に、ネットで調べてみました。
    コメントの画面が表示されると同時に、なんらかの関数を実行させる、と、まぁ、こんな感じでしょうか。

    貼っていただいたURL(Codex)を開いてみました。え、英語ですね。当方、(WordPressについても不案内ですが)英語はさっぱしですので、理解するのに、しばし時間がかかりそうで、あります。

    フィルターフックを使わなくても、comment_form() 関数の第一引数を指定すれば変更可能です。こちらも、具体的な方法は、Codex に記載がありますので読んでみてください。

    https://codex.wordpress.org/Function_Reference/comment_form

    KUCKLUさま

    日本語訳は、これ、ですね。
    https://wpdocs.osdn.jp/%E9%96%A2%E6%95%B0%E3%83%AA%E3%83%95%E3%82%A1%E3%83%AC%E3%83%B3%E3%82%B9/comment_form

    日本語訳でも、しばし、理解に時間がかかりそうであります。時間をみつけて、検索などをたよりに、いろいろ試してみます。ありがとうございます。

    上記に貼ったURLは、「まだ日本語Codexに存在しないページ」でした。「日本語訳」というより「未完成な日本語訳」という感じでしょうか。失礼しました。

    function.phpに、次のように書いてみました。
    でも、やっぱり、うまく行かないようであります。うーむ。

    add_filter( ‘comment_form_default_fields’, ‘my_comment_form_fields’);
    $fields = array(
    ‘author’ =>
    ‘<p class=”comment-form-author”><label for=”author”>’ . __( ‘名前(ニックネームでいいよ)’, ‘domainreference’ ) . ‘</label> ‘ .
    ( $req ? ‘<span class=”required”>*</span>’ : ” ) .
    ‘<input id=”author” name=”author” type=”text” value=”‘ . esc_attr( $commenter[‘comment_author’] ) .
    ‘” size=”3

    コメント欄のラベルを変える件。いまだに、試行錯誤を繰り返しております。直近では、見よう見まねで、function.phpに、以下のような記述をしてみました。がしかし、うまく、ゆきません。どなたか、勘違いしている点、間違っている点を、ご指摘ください。

    <?php

    $fileds = ‘author’ =>
    ‘<p class=”comment-form-author”>’ .
    ‘<label for=”author”>名前(ニックネームでいいよ)</label> ‘ .
    ( $req ? ‘<span class=”required”>*</span>’ : ” ) .’
    ‘.
    ‘<input id=”author” name=”author” type=”text” value=”‘ . esc_attr( $commenter[‘comment_author’] ) .
    ‘” size=”30″‘ . $aria_req . ‘ /></p>’,
    );

    comment_form( array(
    ‘fields’ => apply_filters( ‘comment_form_default_fields’, $fileds )
    ) );

    ?>

    こんにちは、

    日本語訳でも、しばし、理解に時間がかかりそうであります。時間をみつけて、検索などをたよりに、いろいろ試してみます。ありがとうございます。

    苦労しているようですね、私もワードプレスを使い始めたころ、「ちょっとそこんところ、すこしだけ変更したい」と思って、試行錯誤をしました。

    ブログのコメント欄の「名前」という項目を、「名前(ニックネームでもいいよ)」に変更したいんです。
    どのような手順を踏めばよいでしょうか。

    WordPressのフィルタを使う例 functions.phpに

    add_filter('comment_form_field_author','my_comment_author');
    
    function my_comment_author($author){
    	$custom_author = '<p class="comment-form-author">
    		<label for="author">名前 (ニックネームでもいいよ)<span class="required">*</span></label>
    		<input id="author" name="author" type="text" value="" size="30" aria-required="true" required="required" />
    	</p>';
    
    	return $custom_author;
    }

    PHPの学習がいまいちで、自分が何をやっているか理解できていないような段階なら、CSSでも、出来ます
    twentyfifteen に適用する例

    .comment-form-author label[for="author"]{
        color:rgba(0,0,0,0);//文字の色を透明に
    }
    .comment-form-author .required{
        display:inline-block;
        position:relative;
        margin-left:-2em;//必須 アスタリスクの位置調整 2文字分左に
    }
    .comment-form-author label[for="author"]:before{
        content:'名前(ニックネームでもいいよ)';
        color:#555; //文字の色
    }

    解決方法は1つではありません、また、WordPressだから、サーバサイドのPHPを必ず使わなくてはいけないというものでもありませんが、PHPが基本になるので、簡単な方法だけで済ませていくと、偏った理解になりがちです

    nobitaさま

    ご回答、ありがとうございます。

    (安直な方法になってしまいますが)とり急ぎ、Style.cssに、貼っていただいたCSSをコピー&ペーストしてみました。

    そののち、コメントフォームをたしかめてみますと、「名前(ニックネーム)名前」という表記にかわっていました。

    このことから、3つのことを学ぶことができました。

    ひとつめ。
    本件は、PHPでなく、CSSでも対応できること。

    ふたつめ。
    ご紹介いただいたCSSは、まず既存の名前を透明にし…次に透明になったための空白(2文字分)を左に詰め…そのうえで名前(ニックネームでもいいよ)を貼る指示を行なうものである。そうに違いない。

    みっつめ。
    本件は、テーマによって記述方法が異なること(ちなみに、当方はBizVectorを利用しております)

    ご指摘ののとおり、ネットで検索して、適当だと思われるものを自分で解釈して、あれこれやっても、もうこれは、奇跡を願うようなものであります。この点、時間をかけてphpの基礎から腰をすえて、学んでいきたいと存じます。

    一方、短期的には、テーマにより問題の解消方法が異なることが分かりましたので、テーマの主宰するフォーラムに、ポイントをしぼって質問してみます。

    (じつは、本件にかんしては、そのフォーラムに、やや異なる言い方で質問をしています。反応がまったくなかったわけですが、おかげさまで要領を得た質問ができそうです。そもそも本件がWordPressに属するものなのか、テーマに属するのか、自信が持てない状況でした。。。)

    npbitaさま

    貼っていただいたCSSを、もういちど、貼り直したところ、うまくいくました。失礼しました。

10件の返信を表示中 - 1 - 10件目 (全10件中)
  • トピック「コメント欄の項目名を変えたい」には新たに返信することはできません。