comment_type()


WordPressのcomment_type()関数は、現在のコメントの種類を識別して返すために使用されます。通常、コメント、トラックバック、またはピンバックのいずれかを判別します。

構文

<?php comment_type( string $comment, string $trackback, string $pingback ); ?>

引数の説明:

  • $comment (string) — 通常のコメントの種類を指定する文字列。
  • $trackback (string) — トラックバックの種類を指定する文字列。
  • $pingback (string) — ピンバックの種類を指定する文字列。

例1: コメントタイプを表示する

現在のコメントの種類を識別して出力します。

<?php comment_type( 'コメント', 'トラックバック', 'ピンバック' ); ?>

例2: 特定のHTMLを条件に応じて表示する

コメントの種類に応じて異なるHTMLを出力します。

<?php
if ( comment_type( '', '', '' ) === 'コメント' ) {
    echo '<span>コメントです</span>';
}
?>

例3: コメントリスト内でコメントタイプを識別

コメントリストをループしながらコメントの種類を出力します。

<?php
foreach ( $comments as $comment ) {
    setup_commentdata( $comment );
    comment_type( '<p>通常のコメント</p>', '<p>トラックバック</p>', '<p>ピンバック</p>' );
}
?>

例4: カスタムメッセージを設定する

異なるコメントタイプごとにカスタムメッセージを設定します。

<?php comment_type( '普通のコメントです', 'これはトラックバックです', 'ピンバックが送信されました' ); ?>

例5: コメント種類ごとのカウントを取得

コメントの種類に基づいてそれぞれのカウントを表示します。

<?php
$comments = get_comments();
$comment_count = $trackback_count = $pingback_count = 0;

foreach ( $comments as $comment ) {
    setup_commentdata( $comment );
    if ( comment_type( '', '', '' ) === 'コメント' ) {
        $comment_count++;
    } elseif ( comment_type( '', '', '' ) === 'トラックバック' ) {
        $trackback_count++;
    } elseif ( comment_type( '', '', '' ) === 'ピンバック' ) {
        $pingback_count++;
    }
}

echo "コメント: $comment_count, トラックバック: $trackback_count, ピンバック: $pingback_count";
?>

注意点

  • 正しいコメントデータが設定されていない場合、期待通りに動作しない可能性があります。
  • 関数の結果は翻訳可能な文字列として表示されるため、翻訳設定に影響を受けることがあります。

関連機能: