コメントにフィールドを追加し、これらのコードを使用しました。
functions.php
function my_fields($fields) {
$fields['url2'] = '<p class="comment-form-url2">
<label for="url2">URL hittad på webben</label>
<input id="url2" name="url2" type="text" value="" size="30" />
</p>';
return $fields;
}
add_filter('comment_form_default_fields','my_fields');
comments.php
comment_form();
質問
あなたが使うことができるコメントフォームには他にもいくつかのフックがあります。ユーザーがログインしていない場合にのみ表示されます。ログインしているかどうかにかかわらず、このフィールドを表示するには、comment_form_after_fields
とcomment_form_logged_in_after
の両方にフックしてフォームを追加する必要があります。アクションを実行し、新しいフィールドをエコーアウトします。
<?php
add_action( 'comment_form_logged_in_after', 'pmg_comment_tut_fields' );
add_action( 'comment_form_after_fields', 'pmg_comment_tut_fields' );
function pmg_comment_tut_fields()
{
?>
<p class="comment-form-title">
<label for="pmg_comment_title"><?php _e( 'Title' ); ?></label>
<input type="text" name="pmg_comment_title" id="pmg_comment_title" />
</p>
<?php
}
このチュートリアルをチェックしてください私が書いた(上の例はそれからです)。フィールドの追加からデータの保存、メタボックスの追加まですべてをカバーしているので、バックエンドで追加のフィールドも編集できます。
あなたの余分なフィールドを節約するために、あなたはしなければなりません:
function save_comment_meta_data( $comment_id ) {
add_comment_meta( $comment_id, 'extra_field', $_POST[ 'extra_field' ] );
}
add_action( 'comment_post', 'save_comment_meta_data' );
コメントフォームの追加フィールドをカバーする この素晴らしいチュートリアル を参照してください。
このプラグインを見てください http://www.solaceten.info
(情報公開:私は共著者です。プラグインは無料ですが、もうメンテナンスされていません)