[WordPress] Empêcher les commentaires sur les médias (images, vidéos, …)


Depuis quelques temps, je vois fleurir sur ce blog les commentaires sur les médias attachés tels que les photos. Ceci est du au fait que WordPress génère une page pour chacun d’entre eux, en réutilisant le template des pages. Résultat, tous les éléments de la charte graphique y sont présent, comme le header et le footer, mais également la section des commentaires.

Du coup de petits malins aiment commenter ces médias (surement par le biais de logiciels qui automatisent ça). Je trouve que dans mon cas, cela n’a pas d’intérêt car les commentaires, s’ils étaient constructifs, ne sont visibles que sur ces pages virtuelles auxquelles bien peu accèdent.

Voici donc un petit hack pour empêcher les commentaires sur les pages-médias. Ce code est à placer dans le fichier functions.php de votre thème.

function filter_media_comment_status( $open, $post_id ) {
	$post = get_post( $post_id );
	if( $post->post_type == 'attachment' ) {
		return false;
	}
	return $open;
}
add_filter( 'comments_open', 'filter_media_comment_status', 10 , 2 );

Simple mais très pratique pour s’éviter encore un peu de modération de commentaires.

Source