WordPress: eliminare il codice HTML dai commenti

WordPress: eliminare il codice HTML dai commenti

A volte anche i commenti ammessi in WordPress possono contenere della marcatura che non vorremmo fosse inserita. Per questo motivo possiamo utilizzare due funzioni come filtri dei commenti per eliminare la marcatura HTML. Vediamo come fare.

Aggiungete il seguente codice al file functions.php:


// Quando il commento viene postato

function sanitize_comment_post( $incoming_comment ) {

	// converte le entità speciali HTML
	$incoming_comment['comment_content'] = htmlspecialchars($incoming_comment['comment_content']);

	// non converte per ora le virgolette singole, perchè WordPress lo considererebbe spam
	$incoming_comment['comment_content'] = str_replace( "'", ''', $incoming_comment['comment_content'] );

	return( $incoming_comment );
}

// Prima che il commento venga visualizzato

function sanitize_comment_display( $comment_to_display ) {

	// Reinserisce le virgolette singole
	$comment_to_display = str_replace( ''', "'", $comment_to_display );

	return $comment_to_display;
}

add_filter( 'preprocess_comment', 'sanitize_comment_post', '', 1);
add_filter( 'comment_text', 'sanitize_comment_display', '', 1);
add_filter( 'comment_text_rss', 'sanitize_comment_display', '', 1);
add_filter( 'comment_excerpt', 'sanitize_comment_display', '', 1);
Torna su