Domanda Rimozione di tag

e
nei post di WordPress


Ogni volta che sto postando alcuni contenuti nella pagina di WordPress, questo mostra alcuni tag di paragrafo come <p> e <br/>. Che mostra uno spazio extra in uscita. Quindi c'è qualche soluzione per questo? Come rimuovere tutti i tag?


44
2017-07-08 13:53


origine


risposte:


Questo succede a causa di WordPress wpautop. Aggiungi semplicemente sotto la riga di codice nel file functions.php del tuo tema

remove_filter( 'the_content', 'wpautop' );

remove_filter( 'the_excerpt', 'wpautop' );

Per maggiori informazioni: http://codex.wordpress.org/Function_Reference/wpautop


94
2017-07-08 16:26



Non consiglierei di utilizzare l'opzione remove_filter poiché rimuoverà tag e markup ovunque li chiami nel tuo modello.

Il modo migliore è sanificare la tua stringa tramite PHP

puoi usare la funzione php strip_tags per rimuovere i markup inutili: echo strip_tags(get_the_excerpt()); // Get the raw text excerpt from the current post

o

echo strip_tags(category_description()); // Get the raw text cat desc from the current cat page

questo rimuoverà tutti i tag HTML dal post wordpress corrente quando lo chiamerai.

è anche possibile aggiungere la funzione di trim in caso di: echo trim(strip_tags(get_the_excerpt())); // Get the raw text excerpt from the current post

o

echo trim(strip_tags(category_description())); // Get the raw text cat desc from the current cat page

questo è perfetto per ottenere testo non elaborato per meta = "descrizione" e titolo in cui i markup HTML non sono raccomandati.

Spero che sia d'aiuto


2
2017-10-19 23:29



prova questo

$my_postid = $post->ID;
$content_post = get_post($my_postid);
$content = $content_post->post_content;
$content = apply_filters('the_content', $content);
$content = strip_tags($content, '<p><br/>');
echo $content;

1
2017-07-08 14:27



Rimozione del wpautop il filtro non è la soluzione più flessibile. Se stai cercando una soluzione per pagina o post per posta, puoi utilizzare questo plugin:

https://wordpress.org/plugins/dont-muck-my-markup/

Aggiungerà una casella di controllo su ogni post / pagina per consentire all'utente di scegliere se il comportamento core-Wordpress sarà disabilitato per quella particolare pagina o meno.

Ciò è particolarmente utile quando si desidera pubblicare codice HTML e generare automaticamente <br> e <p> rovina il tuo design accuratamente progettato.

Il plug-in ha anche un'opzione globale, quindi puoi disattivare questo comportamento per impostazione predefinita su tutte le pagine / post.

Un plug-in alternativo è https://wordpress.org/plugins/preserve-code-formatting/ comunque ho provato solo quello che ho descritto.


1
2017-08-31 14:22



Usa questo codice per rimuovere <p></p> prima che l'editor inizializzi.

function tinymce_remove_root_block_tag( $init ) {
    $init['forced_root_block'] = false; 
    return $init;
}
add_filter( 'tiny_mce_before_init', 'tinymce_remove_root_block_tag' );

0
2017-11-11 20:09



Usa questo  $ editor = wp_filter_nohtml_kses ($ _ POST ['editor1']);


0
2018-05-18 12:26



Poiché la risposta accettata qui non ha funzionato per me in WP 4.8.1, sto postando una soluzione che ha funzionato per me. Ho appena dovuto aggiungere una classe al p e WordPress non lo rimuoverà.

<p class="whatever">

0
2017-08-04 01:45