実現したいこと
WordPressのコメント欄で、閲覧者がコメントする際に男性女性を選んでコメントできるようにして、さらにその選ばれた項目によって、アイコンを表示したいです。
現状
参考サイト
Wordpress コメント項目を追加する | webデザイナーの改造屋ブログ
wordpressの投稿に対するコメントのデフォルト項目は名前、メールアドレス、URL、コメント。そこに(例)男女選択項目を追加します。テーマフォルダの中のfunctions.phpにどんんどんコピペ。まずは入力項目欄。 add_filter( 'comment_form_defaults','change_comment_form_sex'); function change_comment_form_sex($default) { $commenter = wp_get_current_commenter(); $default['fields']['email'] .= '<p class="comment-form-author">' . '<label for="sex">'. __('性別') . ''</label> <select id="sex" class="sex" name="sex"> <option value="">性別 <option value="男性">男性 <option value="女性">女性 </select> </p>'; return $default; } 次に男女選択項目欄を入力必須にするためのコード add_filter( 'preprocess_comment', 'verify_comment_meta_data_sex' ); function verify_comment_meta_data_sex($commentdata) { if ( ! isset( $_POST['sex'] ) ) wp_die( __('Error: please fill the required field (sex).') ); return $commentdata; } 次にここで入力(選択)された情報をコメント情報と一緒にデータベースに登録するためのコード。データはテーブル「wp_postmeta」に入ります。 add_action( 'comment_post', 'save_comment_meta_data_sex' ); function save_comment_meta_data_sex( $comment_id ) { $sexies = explode(',', $_POST['sex']); foreach ($sexies as $sex) echo update_comment_meta( $comment_id, 'sex', $sex, true); } で最後に表示するためのコード add_filter( 'get_comment_author_link', 'attach_sex_to_author' ); function attach_sex_to_author( $author ) { $sexies = get_comment_meta( get_comment_ID(), 'sex', false ); if ( $sexies ) { foreach ($sexies as $sex) $author .= $sex . ' '; } return $author; } 追加する項目が複数ある時はピンクやオレンジの名前を変えてね。
現状、上記のサイトを参考にコメント欄の「男性女性」の選択項目実装までは完了しています。
ただ、上記のままだと男性を選んでコメントしても女性を選んでコメントしても、コメント欄にアイコンの表示はされません。
男性を選んだ時は男性のアイコンを、女性が選ばれたときは女性のアイコンを表示させたいのですが、その画像(アイコン)のURLをどこにどのように記載すれば表示されるのかが分かりません。
どなたか分かる方がいれば、ご助言お願い致します。
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2018/09/26 11:00
2018/09/26 22:52