comment_id_fields()


WordPress関数comment_id_fields()は、コメントフォーム内にコメントIDや投稿IDを含む隠しフィールドを生成するために使用されます。

構文

<?php comment_id_fields( int $post_id = 0 ); ?>
  • $post_id (int) — 投稿IDを指定します。省略した場合は現在の投稿IDが使用されます。

例 1: 投稿フォームで使用する基本的な例

以下のコードは、現在の投稿に対して隠しフィールドを生成します。

<?php comment_id_fields(); ?>

例 2: 特定の投稿IDを指定する

特定の投稿IDを指定して隠しフィールドを生成する例です。

<?php comment_id_fields( get_the_ID() ); ?>

例 3: 独自のHTML内での使用

独自のHTML構造内でcomment_id_fields()を利用する例です。

<form method="post" action="<?php echo site_url( '/wp-comments-post.php' ); ?>">
    <?php comment_id_fields( get_the_ID() ); ?>
    <input type="text" name="comment" placeholder="コメントを入力してください">
    <button type="submit">送信</button>
</form>

例 4: 現在の投稿を条件付きで使用

現在の投稿IDが存在する場合に隠しフィールドを生成する例です。

<?php if ( is_single() ) { comment_id_fields( get_the_ID() ); } ?>

例 5: カスタムコメントフォーム内での使用

カスタマイズされたコメントフォームに隠しフィールドを追加する例です。

<?php
function custom_comment_form() {
    echo '<form action="' . site_url( '/wp-comments-post.php' ) . '" method="post">';
    comment_id_fields();
    echo '<textarea name="comment" placeholder="コメントを入力してください"></textarea>';
    echo '<button type="submit">コメントを送信</button>';
    echo '</form>';
}
custom_comment_form();
?>

注意点

  • comment_id_fields()は、コメントフォームのセキュリティを向上させるために利用されます。隠しフィールドが正しく動作していることを確認してください。
  • この関数は通常、comment_form()によって自動的に追加されますが、カスタムフォームを作成する場合は明示的に呼び出す必要があります。

関連機能: