• 赤色のリンクは、まだ日本語Codexに存在しないページ・画像です。英語版と併せてご覧ください。(詳細

このWikiはいつでも誰でも編集できます

「関数リファレンス/comment form」の版間の差分

提供: WordPress Codex 日本語版
移動先: 案内検索
(en:Template Tags/comment_form 13:50, 5 July 2010 Bono 版を翻訳用にコピー)
 
 
(4人の利用者による、間の10版が非表示)
1行目: 1行目:
{{Stub}}
+
== 概要 ==
  
== Description ==
+
このタグは[[テンプレート]]内で完全なコメントフォームを出力します。
  
This tag outputs a complete commenting form for use within a [[Templates|template]].
+
ほとんどの文字列とフォームフィールドは関数に渡される [[#$args|$args]] 配列を通してコントロールできますが、フィールドを一つだけ付け足したり削除したい場合には <code>comment_form_default_fields</code> [[Plugin API|フィルター]]を使って[[#$args|デフォルトフィールドの配列]]を編集することもできます。また、すべてのフィールドはフォームの <code>comment_form_field_''$name''</code> フィルターを通して個別に渡されます。ここで、<code>$name</code> はフィールド配列で使われたキーになります。
  
Most strings and form fields may be controlled through the [[#$args|$args]] array passed into the function, while you may also choose to use the <code>comments_form_default_fields</code> [[Plugin API|filter]] to modify the [[#$args|array of default fields]] if you'd just like to add a new one or remove a single field. All fields are also individually passed through a filter of the form <code>comments_form_field_''$name''</code> where <code>$name</code> is the key used in the array of fields.
+
== 使い方 ==
  
== Usage ==
+
<?php comment_form( $args, $post_id ); ?>
  
%%%<?php comment_form( $args, $post_id ); ?>%%%
+
=== デフォルトの設定 ===
  
=== Default Usage ===
+
[[Image:twentytendefault6.png|thumb]]
  
%%%<?php comment_form(); ?>%%%
+
<?php comment_form(); ?>
  
[[Image:twentytendefault6.png|thumb]]
+
Twenty Ten では {{Trac|wp-content/themes/twentyten/comments.php}} で呼び出されています。
cf. {{Source|wp-content/themes/twentyten/comments.php}}
+
  
== Parameters ==
+
== パラメータ ==
  
{{Parameter|[[#$args|args]]|array|Options for strings, fields etc in the form.|optional|([[#$args|See below]])}}
+
{{Parameter|[[#$args|args]]|array|文字列のオプション、フォーム内のフィールド等。|オプション|([[#$args|See below]])}}
{{Parameter|post_id|mixed|Post ID to generate the form for, uses the current post if null|optional|null (the current post)}}
+
{{Parameter|post_id|mixed|Nullの場合、現在の投稿を使用するフォームを生成する投稿ID。|オプション|null (the current post)}}
  
 
=== $args ===
 
=== $args ===
  
Default value:
+
'''注:''' $new_defaults を使っているコメントテンプレート内で $defaults を変更する場合、$new_defaults は <code>comment_form($new_defaults);</code> を呼び出す''''に定義する必要があります。そうでないと正しく反映されません。
<pre>
+
<?php $defaults = array(
+
'fields'               => apply_filters( 'comment_form_default_fields', $fields ),
+
'comment_field'       => '<p class="comment-form-comment"><label for="comment">' . _x( 'Comment', 'noun' ) . '</label><textarea id="comment" name="comment" cols="45" rows="8" aria-required="true"></textarea></p>',
+
'must_log_in'          => '<p class="must-log-in">' .  sprintf( __( 'You must be <a href="%s">logged in</a> to post a comment.' ), wp_login_url( apply_filters( 'the_permalink', get_permalink( $post_id ) ) ) ) . '</p>',
+
'logged_in_as'        => '<p class="logged-in-as">' . sprintf( __( 'Logged in as <a href="%1$s">%2$s</a>. <a href="%3$s" title="Log out of this account">Log out?</a>' ), admin_url( 'profile.php' ), $user_identity, wp_logout_url( apply_filters( 'the_permalink', get_permalink( $post_id ) ) ) ) . '</p>',
+
'comment_notes_before' => '<p class="comment-notes">' . __( 'Your email address will not be published.' ) . ( $req ? $required_text : '' ) . '</p>',
+
'comment_notes_after'  => '<p class="form-allowed-tags">' . sprintf( __( 'You may use these <abbr title="HyperText Markup Language">HTML</abbr> tags and attributes: %s' ), ' <code>' . allowed_tags() . '</code>' ) . '</p>',
+
'id_form'              => 'commentform',
+
'id_submit'            => 'submit',
+
'title_reply'          => __( 'Leave a Reply' ),
+
'title_reply_to'      => __( 'Leave a Reply to %s' ),
+
'cancel_reply_link'    => __( 'Cancel reply' ),
+
'label_submit'        => __( 'Post Comment' ),
+
);
+
?>
+
</pre>
+
  
{{Parameter|fields|array|Input fields other than comment body, such as author, email, url.|optional|<code>apply_filters( 'comment_form_default_fields', [[#$fields|$fields]] )</code>}}
+
デフォルト値:
{{Parameter|comment_field|string|The textarea and the label of comment body.|optional|<!-- default -->}}
+
 
{{Parameter|must_log_in|string|<!--description-->|optional|<!-- default -->}}
+
{{Parameter|fields|array|'作成者', 'メールアドレス', 'URL'の入力フィールド。|オプション|<code>apply_filters( 'comment_form_default_fields', [[#$fields|$fields]] )</code>}}
{{Parameter|logged_in_as|string|<!--description-->|optional|<!-- default -->}}
+
{{Parameter|comment_field|文字列|The textarea and the label of comment body.|オプション|<pre>'<p class="comment-form-comment"><label for="comment">' . _x( 'Comment', 'noun' ) . '</label><textarea id="comment" name="comment" cols="45" rows="8" aria-required="true"></textarea></p>'</pre>}}
{{Parameter|comment_notes_before|string|text or html tags befor comment form.|optional|<!-- default -->}}
+
{{Parameter|must_log_in|文字列|<!--description-->|オプション|<pre>'<p class="must-log-in">' .  sprintf( __( 'You must be <a href="%s">logged in</a> to post a comment.' ), wp_login_url( apply_filters( 'the_permalink', get_permalink( ) ) ) ) . '</p>'</pre>}}
{{Parameter|comment_notes_after|string|text or html tags after comment body.|optional|<!-- default -->}}
+
{{Parameter|logged_in_as|文字列|<!--description-->|オプション|<pre>'<p class="logged-in-as">' . sprintf( __( 'Logged in as <a href="%1$s">%2$s</a>. <a href="%3$s" title="Log out of this account">Log out?</a>' ), admin_url( 'profile.php' ), $user_identity, wp_logout_url( apply_filters( 'the_permalink', get_permalink( ) ) ) ) . '</p>'</pre>}}
{{Parameter|id_form|string|value of the <code>id</code> attribute of <code>form</code> element (<code><nowiki><form></nowiki></code> tag).|optional|'commentform'}}
+
{{Parameter|comment_notes_before|文字列|Text or HTML to be displayed before the set of comment form fields if the user is not logged in.|オプション|<pre>'<p class="comment-notes">' . __( 'Your email address will not be published.' ) . ( $req ? $required_text : '' ) . '</p>'</pre>}}
{{Parameter|id_submit|string|value of the <code>id</code> attribute of submit button.|optional|'submit'}}
+
{{Parameter|comment_notes_after|文字列|Text or HTML to be displayed after the set of comment fields (and before the submit button)|オプション|<pre>'<p class="form-allowed-tags">' . sprintf( __( 'You may use these <abbr title="HyperText Markup Language">HTML</abbr> tags and attributes: %s' ), ' <code>' . allowed_tags() . '</code>' ) . '</p>'</pre>}}
{{Parameter|title_reply|string|The title of comment form.|optional|[[Function Reference/_2|__]]( 'Leave a Reply' )}}
+
{{Parameter|id_form|文字列|value of the <code>id</code> attribute of <code>form</code> element (<code><nowiki><form></nowiki></code> tag).|オプション|'commentform'}}
{{Parameter|title_reply_to|string|<!--description-->|optional|[[Function Reference/_2|__]]( 'Leave a Reply to %s' )}}
+
{{Parameter|id_submit|文字列|value of the <code>id</code> attribute of submit button.|オプション|'submit'}}
{{Parameter|cancel_reply_link|string|link label to cancel reply.|optional|[[Function Reference/_2|__]]( 'Cancel reply' )}}
+
{{Parameter|title_reply|文字列|The title of comment form (when not replying to a comment, see [[関数リファレンス/comment_form_title|comment_form_title]]).|オプション|[[関数リファレンス/_2|__]]( 'Leave a Reply' )}}
{{Parameter|label_submit|string|the name of submit button.|optional|[[Function Reference/_2|__]]( 'Post Comment' )}}
+
{{Parameter|title_reply_to|文字列|The title of comment form (when replying to a comment, see [[関数リファレンス/comment_form_title|comment_form_title]]).|オプション|[[関数リファレンス/_2|__]]( 'Leave a Reply to %s' )}}
 +
{{Parameter|cancel_reply_link|文字列|link label to cancel reply.|オプション|[[関数リファレンス/_2|__]]( 'Cancel reply' )}}
 +
{{Parameter|label_submit|文字列|送信ボタンの名前|オプション|[[関数リファレンス/_2|__]]( 'Post Comment' )}}
  
 
=== $fields ===
 
=== $fields ===
  
Default input items:
+
デフォルト入力項目:
 +
 
 
<pre>
 
<pre>
<?php
 
 
$fields =  array(
 
$fields =  array(
'author' => '<p class="comment-form-author">' . '<label for="author">' . __( 'Name' ) . '</label> ' . ( $req ? '<span class="required">*</span>' : '' ) .
+
 
            '<input id="author" name="author" type="text" value="' . esc_attr( $commenter['comment_author'] ) . '" size="30"' . $aria_req . ' /></p>',
+
  'author' =>
'email' => '<p class="comment-form-email"><label for="email">' . __( 'Email' ) . '</label> ' . ( $req ? '<span class="required">*</span>' : '' ) .
+
    '<p class="comment-form-author"><label for="author">' . __( 'Name', 'domainreference' ) . '</label> ' .
            '<input id="email" name="email" type="text" value="' . esc_attr(  $commenter['comment_author_email'] ) . '" size="30"' . $aria_req . ' /></p>',
+
    ( $req ? '<span class="required">*</span>' : '' ) .
'url'   => '<p class="comment-form-url"><label for="url">' . __( 'Website' ) . '</label>' .
+
    '<input id="author" name="author" type="text" value="' . esc_attr( $commenter['comment_author'] ) .
            '<input id="url" name="url" type="text" value="' . esc_attr( $commenter['comment_author_url'] ) . '" size="30" /></p>',
+
    '" size="30"' . $aria_req . ' /></p>',
); ?>
+
 
 +
  'email' =>
 +
    '<p class="comment-form-email"><label for="email">' . __( 'Email', 'domainreference' ) . '</label> ' .
 +
    ( $req ? '<span class="required">*</span>' : '' ) .
 +
    '<input id="email" name="email" type="text" value="' . esc_attr(  $commenter['comment_author_email'] ) .
 +
    '" size="30"' . $aria_req . ' /></p>',
 +
 
 +
  'url' =>
 +
    '<p class="comment-form-url"><label for="url">' . __( 'Website', 'domainreference' ) . '</label>' .
 +
    '<input id="url" name="url" type="text" value="' . esc_attr( $commenter['comment_author_url'] ) .
 +
    '" size="30" /></p>',
 +
);
 
</pre>
 
</pre>
  
== Return ==
+
Note: To use the variables present in the above code in a custom callback function, you must first set these variables within your callback using:
 +
<pre>
 +
$commenter = wp_get_current_commenter();
 +
$req = get_option( 'require_name_email' );
 +
$aria_req = ( $req ? " aria-required='true'" : '' );
 +
</pre>
 +
 
 +
=== デフォルト $args 配列 ===
 +
<code><pre>
 +
$args = array(
 +
  'id_form'          => 'commentform',
 +
  'id_submit'        => 'submit',
 +
  'title_reply'      => __( 'Leave a Reply' ),
 +
  'title_reply_to'    => __( 'Leave a Reply to %s' ),
 +
  'cancel_reply_link' => __( 'Cancel Reply' ),
 +
  'label_submit'      => __( 'Post Comment' ),
 +
 
 +
  'comment_field' =>  '<p class="comment-form-comment"><label for="comment">' . _x( 'Comment', 'noun' ) .
 +
    '</label><textarea id="comment" name="comment" cols="45" rows="8" aria-required="true">' .
 +
    '</textarea></p>',
 +
 
 +
  'must_log_in' => '<p class="must-log-in">' .
 +
    sprintf(
 +
      __( 'You must be <a href="%s">logged in</a> to post a comment.' ),
 +
      wp_login_url( apply_filters( 'the_permalink', get_permalink() ) )
 +
    ) . '</p>',
 +
 
 +
  'logged_in_as' => '<p class="logged-in-as">' .
 +
    sprintf(
 +
    __( 'Logged in as <a href="%1$s">%2$s</a>. <a href="%3$s" title="Log out of this account">Log out?</a>' ),
 +
      admin_url( 'profile.php' ),
 +
      $user_identity,
 +
      wp_logout_url( apply_filters( 'the_permalink', get_permalink( ) ) )
 +
    ) . '</p>',
 +
 
 +
  'comment_notes_before' => '<p class="comment-notes">' .
 +
    __( 'Your email address will not be published.' ) . ( $req ? $required_text : '' ) .
 +
    '</p>',
 +
 
 +
  'comment_notes_after' => '<p class="form-allowed-tags">' .
 +
    sprintf(
 +
      __( 'You may use these <abbr title="HyperText Markup Language">HTML</abbr> tags and attributes: %s' ),
 +
      ' <code>' . allowed_tags() . '</code>'
 +
    ) . '</p>',
 +
 
 +
  'fields' => apply_filters( 'comment_form_default_fields', array(
 +
 
 +
    'author' =>
 +
      '<p class="comment-form-author">' .
 +
      '<label for="author">' . __( 'Name', 'domainreference' ) . '</label> ' .
 +
      ( $req ? '<span class="required">*</span>' : '' ) .
 +
      '<input id="author" name="author" type="text" value="' . esc_attr( $commenter['comment_author'] ) .
 +
      '" size="30"' . $aria_req . ' /></p>',
 +
 
 +
    'email' =>
 +
      '<p class="comment-form-email"><label for="email">' . __( 'Email', 'domainreference' ) . '</label> ' .
 +
      ( $req ? '<span class="required">*</span>' : '' ) .
 +
      '<input id="email" name="email" type="text" value="' . esc_attr(  $commenter['comment_author_email'] ) .
 +
      '" size="30"' . $aria_req . ' /></p>',
 +
 
 +
    'url' =>
 +
      '<p class="comment-form-url"><label for="url">' .
 +
      __( 'Website', 'domainreference' ) . '</label>' .
 +
      '<input id="url" name="url" type="text" value="' . esc_attr( $commenter['comment_author_url'] ) .
 +
      '" size="30" /></p>'
 +
    )
 +
  ),
 +
);
 +
</pre></code>
 +
 
 +
== 戻り値 ==
 
void
 
void
  
== Filter ==
+
== ==
  
== Examples ==
+
コメントフォームフィールドの一部を変更する簡単な例。
 +
<pre>
 +
$comments_args = array(
 +
        // 送信ボタンのタイトルを変更
 +
        'label_submit'=>'Send',
 +
        // 返信セクションのタイトルを変更
 +
        'title_reply'=>'Write a Reply or Comment',
 +
        // "Text or HTML to be displayed after the set of comment fields" を削除
 +
        'comment_notes_after' => '',
 +
        // オリジナルの textarea (コメント本文入力欄) を再定義
 +
        'comment_field' => '<p class="comment-form-comment"><label for="comment">' . _x( 'Comment', 'noun' ) . '</label><br /><textarea id="comment" name="comment" aria-required="true"></textarea></p>',
 +
);
  
=== customizing Input Fields ===
+
comment_form($comments_args);
 +
</pre>
  
== Changelog ==
+
== フィルターフックの使用 ==
 +
* [[プラグイン_API/フィルターフック一覧/comment_form_default_fields|comment_form_default_fields]] [[https://developer.wordpress.org/reference/hooks/comment_form_default_fields/ en]]
 +
* [[プラグイン_API/フィルターフック一覧/the_permalink|the_permalink]] /[[:en:Plugin_API/Filter_Reference/the_permalink |en]]
 +
* [[プラグイン_API/フィルターフック一覧/comment_form_defaults|comment_form_defaults]] [[https://developer.wordpress.org/reference/hooks/comment_form_defaults/ en]]
 +
* [[プラグイン_API/フィルターフック一覧/comment_form_logged_in|comment_form_logged_in]] [[https://developer.wordpress.org/reference/hooks/comment_form_logged_in/ en]]
 +
* [[プラグイン_API/フィルターフック一覧/comment_form_field_$name|comment_form_field_{$name}]] [[https://developer.wordpress.org/reference/hooks/comment_form_field_name/ en]]
 +
* [[プラグイン_API/フィルターフック一覧/comment_form_field_comment|comment_form_field_comment]] [[https://developer.wordpress.org/reference/hooks/comment_form_field_comment/ en]]
  
* Since [[Version 3.0|3.0.0]]
+
== プラガブルアクション ==
 +
* [[プラグイン_API/アクションフック一覧/comment_form_before|comment_form_before]] [[https://developer.wordpress.org/reference/hooks/comment_form_before/ en]]
 +
* [[プラグイン_API/アクションフック一覧/comment_form_must_log_in_after|comment_form_must_log_in_after]] [[https://developer.wordpress.org/reference/hooks/comment_form_must_log_in_after/ en]]
 +
* [[プラグイン_API/アクションフック一覧/comment_form_top|comment_form_top]] [[https://developer.wordpress.org/reference/hooks/comment_form_top/ en]]
 +
* [[プラグイン_API/アクションフック一覧/comment_form_logged_in_after|comment_form_logged_in_after]] [[https://developer.wordpress.org/reference/hooks/comment_form_logged_in_after/ en]]
 +
* [[プラグイン_API/アクションフック一覧/comment_form_before_fields|comment_form_before_fields]] [[https://developer.wordpress.org/reference/hooks/comment_form_before_fields/ en]]
 +
* [[プラグイン_API/アクションフック一覧/comment_form_after_fields|comment_form_after_fields]] [[https://developer.wordpress.org/reference/hooks/comment_form_after_fields/ en]]
 +
* [[プラグイン_API/アクションフック一覧/comment_form|comment_form]] [[https://developer.wordpress.org/reference/hooks/comment_form/ en]]
 +
* [[プラグイン_API/アクションフック一覧/comment_form_after|comment_form_after]] [[https://developer.wordpress.org/reference/hooks/comment_form_after/ en]]
 +
* [[プラグイン_API/アクションフック一覧/comment_form_comments_closed|comment_form_comments_closed]] [[https://developer.wordpress.org/reference/hooks/comment_form_comments_closed/ en]]
  
== Source Code ==
+
== 変更履歴 ==
  
<code>comment_form()</code> is located in {{Source|wp-includes/comment-template.php}}. (WordPress {{CurrentVersion}})
+
* [[Version 3.0|3.0.0]]: 新規テンプレートタグ
  
{{原文|Template Tags/comment_form|91050}}<!-- 13:50, 5 July 2010 Bono 版 -->
+
== ソースコード ==
  
== Related ==
+
<code>comment_form()</code> は {{Source|wp-includes/comment-template.php}} にあります。
  
{{Comments Tags}}
+
 
 +
== 関連 ==
 +
 
 +
{{Tag Comments Tags}}
  
 
{{Tag Footer}}
 
{{Tag Footer}}
  
[[Category:Template Tags]]
+
{{原文|Template Tags/comment_form|91050}}<!-- 13:50, 5 July 2010 Bono 版 -->
[[Category:New page created]]
+
 
 +
{{DEFAULTSORT:Comment_form}}
 +
[[Category:コメント・トラックバック]]
 +
[[Category:wp3.0]]
  
 
[[en:Template Tags/comment_form]]
 
[[en:Template Tags/comment_form]]

2015年6月7日 (日) 15:20時点における最新版

概要

このタグはテンプレート内で完全なコメントフォームを出力します。

ほとんどの文字列とフォームフィールドは関数に渡される $args 配列を通してコントロールできますが、フィールドを一つだけ付け足したり削除したい場合には comment_form_default_fields フィルターを使ってデフォルトフィールドの配列を編集することもできます。また、すべてのフィールドはフォームの comment_form_field_$name フィルターを通して個別に渡されます。ここで、$name はフィールド配列で使われたキーになります。

使い方

<?php comment_form( $args, $post_id ); ?>

デフォルトの設定

<?php comment_form(); ?>

Twenty Ten では wp-content/themes/twentyten/comments.php で呼び出されています。

パラメータ

args
array) (オプション) 文字列のオプション、フォーム内のフィールド等。
初期値: (See below)
post_id
mixed) (オプション) Nullの場合、現在の投稿を使用するフォームを生成する投稿ID。
初期値: null (the current post)

$args

注: $new_defaults を使っているコメントテンプレート内で $defaults を変更する場合、$new_defaults は comment_form($new_defaults); を呼び出すに定義する必要があります。そうでないと正しく反映されません。

デフォルト値:

fields
array) (オプション) '作成者', 'メールアドレス', 'URL'の入力フィールド。
初期値: apply_filters( 'comment_form_default_fields', $fields )
comment_field
文字列) (オプション) The textarea and the label of comment body.
初期値:
'<p class="comment-form-comment"><label for="comment">' . _x( 'Comment', 'noun' ) . '</label><textarea id="comment" name="comment" cols="45" rows="8" aria-required="true"></textarea></p>'
must_log_in
文字列) (オプション
初期値:
'<p class="must-log-in">' .  sprintf( __( 'You must be <a href="%s">logged in</a> to post a comment.' ), wp_login_url( apply_filters( 'the_permalink', get_permalink( ) ) ) ) . '</p>'
logged_in_as
文字列) (オプション
初期値:
'<p class="logged-in-as">' . sprintf( __( 'Logged in as <a href="%1$s">%2$s</a>. <a href="%3$s" title="Log out of this account">Log out?</a>' ), admin_url( 'profile.php' ), $user_identity, wp_logout_url( apply_filters( 'the_permalink', get_permalink( ) ) ) ) . '</p>'
comment_notes_before
文字列) (オプション) Text or HTML to be displayed before the set of comment form fields if the user is not logged in.
初期値:
'<p class="comment-notes">' . __( 'Your email address will not be published.' ) . ( $req ? $required_text : '' ) . '</p>'
comment_notes_after
文字列) (オプション) Text or HTML to be displayed after the set of comment fields (and before the submit button)
初期値:
'<p class="form-allowed-tags">' . sprintf( __( 'You may use these <abbr title="HyperText Markup Language">HTML</abbr> tags and attributes: %s' ), ' <code>' . allowed_tags() . '</code>' ) . '</p>'
id_form
文字列) (オプション) value of the id attribute of form element (<form> tag).
初期値: 'commentform'
id_submit
文字列) (オプション) value of the id attribute of submit button.
初期値: 'submit'
title_reply
文字列) (オプション) The title of comment form (when not replying to a comment, see comment_form_title).
初期値: __( 'Leave a Reply' )
title_reply_to
文字列) (オプション) The title of comment form (when replying to a comment, see comment_form_title).
初期値: __( 'Leave a Reply to %s' )
cancel_reply_link
文字列) (オプション) link label to cancel reply.
初期値: __( 'Cancel reply' )
label_submit
文字列) (オプション) 送信ボタンの名前
初期値: __( 'Post Comment' )

$fields

デフォルト入力項目:

$fields =  array(

  'author' =>
    '<p class="comment-form-author"><label for="author">' . __( 'Name', 'domainreference' ) . '</label> ' .
    ( $req ? '<span class="required">*</span>' : '' ) .
    '<input id="author" name="author" type="text" value="' . esc_attr( $commenter['comment_author'] ) .
    '" size="30"' . $aria_req . ' /></p>',

  'email' =>
    '<p class="comment-form-email"><label for="email">' . __( 'Email', 'domainreference' ) . '</label> ' .
    ( $req ? '<span class="required">*</span>' : '' ) .
    '<input id="email" name="email" type="text" value="' . esc_attr(  $commenter['comment_author_email'] ) .
    '" size="30"' . $aria_req . ' /></p>',

  'url' =>
    '<p class="comment-form-url"><label for="url">' . __( 'Website', 'domainreference' ) . '</label>' .
    '<input id="url" name="url" type="text" value="' . esc_attr( $commenter['comment_author_url'] ) .
    '" size="30" /></p>',
);

Note: To use the variables present in the above code in a custom callback function, you must first set these variables within your callback using:

$commenter = wp_get_current_commenter();
$req = get_option( 'require_name_email' );
$aria_req = ( $req ? " aria-required='true'" : '' );

デフォルト $args 配列

$args = array(
  'id_form'           => 'commentform',
  'id_submit'         => 'submit',
  'title_reply'       => __( 'Leave a Reply' ),
  'title_reply_to'    => __( 'Leave a Reply to %s' ),
  'cancel_reply_link' => __( 'Cancel Reply' ),
  'label_submit'      => __( 'Post Comment' ),

  'comment_field' =>  '<p class="comment-form-comment"><label for="comment">' . _x( 'Comment', 'noun' ) .
    '</label><textarea id="comment" name="comment" cols="45" rows="8" aria-required="true">' .
    '</textarea></p>',

  'must_log_in' => '<p class="must-log-in">' .
    sprintf(
      __( 'You must be <a href="%s">logged in</a> to post a comment.' ),
      wp_login_url( apply_filters( 'the_permalink', get_permalink() ) )
    ) . '</p>',

  'logged_in_as' => '<p class="logged-in-as">' .
    sprintf(
    __( 'Logged in as <a href="%1$s">%2$s</a>. <a href="%3$s" title="Log out of this account">Log out?</a>' ),
      admin_url( 'profile.php' ),
      $user_identity,
      wp_logout_url( apply_filters( 'the_permalink', get_permalink( ) ) )
    ) . '</p>',

  'comment_notes_before' => '<p class="comment-notes">' .
    __( 'Your email address will not be published.' ) . ( $req ? $required_text : '' ) .
    '</p>',

  'comment_notes_after' => '<p class="form-allowed-tags">' .
    sprintf(
      __( 'You may use these <abbr title="HyperText Markup Language">HTML</abbr> tags and attributes: %s' ),
      ' <code>' . allowed_tags() . '</code>'
    ) . '</p>',

  'fields' => apply_filters( 'comment_form_default_fields', array(

    'author' =>
      '<p class="comment-form-author">' .
      '<label for="author">' . __( 'Name', 'domainreference' ) . '</label> ' .
      ( $req ? '<span class="required">*</span>' : '' ) .
      '<input id="author" name="author" type="text" value="' . esc_attr( $commenter['comment_author'] ) .
      '" size="30"' . $aria_req . ' /></p>',

    'email' =>
      '<p class="comment-form-email"><label for="email">' . __( 'Email', 'domainreference' ) . '</label> ' .
      ( $req ? '<span class="required">*</span>' : '' ) .
      '<input id="email" name="email" type="text" value="' . esc_attr(  $commenter['comment_author_email'] ) .
      '" size="30"' . $aria_req . ' /></p>',

    'url' =>
      '<p class="comment-form-url"><label for="url">' .
      __( 'Website', 'domainreference' ) . '</label>' .
      '<input id="url" name="url" type="text" value="' . esc_attr( $commenter['comment_author_url'] ) .
      '" size="30" /></p>'
    )
  ),
);

戻り値

void

コメントフォームフィールドの一部を変更する簡単な例。

$comments_args = array(
        // 送信ボタンのタイトルを変更
        'label_submit'=>'Send',
        // 返信セクションのタイトルを変更
        'title_reply'=>'Write a Reply or Comment',
        // "Text or HTML to be displayed after the set of comment fields" を削除
        'comment_notes_after' => '',
        // オリジナルの textarea (コメント本文入力欄) を再定義
        'comment_field' => '<p class="comment-form-comment"><label for="comment">' . _x( 'Comment', 'noun' ) . '</label><br /><textarea id="comment" name="comment" aria-required="true"></textarea></p>',
);

comment_form($comments_args);

フィルターフックの使用

プラガブルアクション

変更履歴

  • 3.0.0: 新規テンプレートタグ

ソースコード

comment_form()wp-includes/comment-template.php にあります。


関連

コメント関数: cancel_comment_reply_link(), comment_author(), comment_author_email(), comment_author_email_link(), comment_author_IP(), comment_author_link(), comment_author_rss(), comment_author_url(), comment_author_url_link(), comment_class(), comment_date(), comment_excerpt(), comment_form_title(), comment_form(), comment_ID(), comment_id_fields() / en, comment_reply_link(), comment_text(), comment_text_rss(), comment_time(), comment_type(), comments_link, comments_number(), comments_open(), comments_popup_link(), comments_popup_script(), comments_rss_link(), get_avatar(), next_comments_link(), paginate_comments_links(), permalink_comments_rss(), previous_comments_link(), wp_list_comments()



関数リファレンステンプレートタグ目次もご覧ください。


最新英語版: WordPress Codex » Template Tags/comment_form最新版との差分