Usavi un tema che faceva uso di shortcode e ora, dopo averlo cambiato, non hai più tutte le funzionalità del tema precedente?
Vediamo come cercare nei post gli shortcode inutilizzati.
Introduzione
Gli shortcode sono una cosa essenziale e molto pratica di wordpres. Permettono di estendere alcune funzionalità dell’articolo senza dover scrivere codice.
Molti temi come Twenty Thirteen o Twenty Fourteen ad esempio, fanno un uso massiccio di shortcode e scrivendo gli articoli possiamo utilizzarli al loro interno. Utilizzare gli shortcode non è sbagliato ma, il problema lo riscontriamo quando vogliamo cambiare il tema che non avrà a disposizione gli stessi shortocde.
Cosa succede se attiviamo un tema che non ha tutti gli shortcode del precedente?
Quello che succederà è che, quel determinato shortcode, non verrà convertito quindi, nel nostro articolo, troveremo una cosa del genere: [il-mio-shortcode].
Cosa possiamo fare per cercare tutti gli articoli che hanno un determinato shortcode?
Quello che possiamo fare è lanciare una query che vada a cercare, all’interno del contenuto dell’articolo, quel determinato shortcode.
function cerca_shortcode(){ if ( current_user_can('administrator') ) { $args = array( 's' => '[il-mio-shortcode]', ); $the_query = new WP_Query( $args ); if ( $the_query->have_posts() ) { echo '<ul>'; while ( $the_query->have_posts() ) { $the_query->the_post(); ?> <li><a href="<?php the_permalink() ?>"><?php the_title(); ?></a></li> <?php } echo '</ul>'; } } } add_action('init','cerca_shortcode')
Copiando questo codice nel file functions.php, al caricamento della pagina, vedremo un elenco di tutti i post che utilizzano quel determinato shortcode così, avremo la possibilità di aprire l’articolo e modificarlo per rimuovere il codice non funzionante.
Se abbiamo tanti articoli che utilizzano quel detemrinato shortcode?
Quello che possiamo fare, se abbiamo tanti articoli che usano un determinato shortcode da rendere la modifica un impresa troppo complessa, è di disabilitare lo shortcode in questo modo:
add_shortcode(
'il-mio-shortocde'
,
'__return_false');
__return_false’ è la funzione magica di wordpress ‘, molto utile in casi come questo per restituire false ad una funzione o ad un filtro.
E questo è tutto per oggi. Sperando che possa esserti molto utile.
Al prossimo #aWPaDay con #Worpdress
DETTAGLI
Livello: medio
Compatibilità: testato su WP versione 3.9.1