comments_open() – コメントが利用可能かどうかを判断する関数

投稿日 :

カテゴリー :

comments_open() 関数は、投稿がコメントを許可しているかどうか(受け付けているかどうか)を判断するために使用します。

目次

comments_open() 関数とは

WordPress には、投稿に対してコメントを残すことを許可する・しないを設定することができます。

例えば、各投稿の編集画面では、ディスカッションパネルで設定することができるようになっています。

また、管理画面内の設定>ディスカッションでも一律に設定をすることができます。

これらで設定できる投稿へのコメント許可の可否を comments_open() 関数で判断することができます。

パラメーター

$post投稿 ID もしくは WP_Post オブジェクト

使い方

一般的によく利用されるのは、その投稿においてコメントが有効になっているかどうかを判断する方法でしょう。

if ( comments_open() ) {
	echo "コメントが有効です";
} else {
	echo "コメントが無効です";
}

また、特定の投稿 ID を指定して、コメントが有効かどうか判断することもできます。

if ( comments_open( 1 ) ) {
	echo "投稿 ID が 1 の投稿にコメントを受け付けています";
} else {
	echo "投稿 ID が 1 の投稿にコメントを受け付けていません";
}

フック

apply_filters( ‘comments_open’, bool $comments_open, int $post_id )

第一引数に $comments_open 、第二引数に $post_id を指定できるフィルターフックです。

以下のように記述することで、すべての投稿に対してコメントを利用できないようにすることもできます。

add_filter( 'comments_open', '__return_false' );

まとめ

WordPress の中でも多くの場所で利用されている関数です。特に日本国内では最近あまりブログに対してコメントをするという文化が少なくなってきている感じもしますが、以前は盛んにブログのコメント欄で交流が広がっていました。そして、海外では現在でもコメントを活用した交流も依然として活発に行われています。

そういった機能を支える一部として、この comments_open() 関数は使われています。WordPress の内部でどのように使われているかはこちらを確認するとわかりやすいです。

コーディングや
WordPress開発のリソースが足りない!

オレインデザインでは、デザインデータからの HTML コーディングから WordPress テーマ・プラグイン開発まで幅広くウェブ制作に対応しています。

お気軽にお問い合わせください。

WordPress 6.5.x 対応版を出版しました

WordPress デフォルトテーマ Twenty Twenty-Four を使って、シンプルなブログやポートフォリオサイト、そしてコーポレートサイトを作りながら、ブロックテーマやサイトエディターの基本を理解することができます。