Non sai niente di Custom Post Type ma vuoi combattere il crimine e lotti per una giustizia che sia giusta e uguale per tutti? Allora hai bisogno del plug-in Custom Post Type UI per WordPress, anche se qualche insidia ti aspetta dietro l’angolo!

Premessa

All’ indirizzo https://www.umbriaway.it/wp/genere/explore/ mi ritrovo una struttura di post atipica, personalizzata sulle esigenze del webmaster. Come è stato possibile personalizzare questi contenuti? Esistono diversi approcci e quello preso in esame qui, non è certo il migliore dal punto di vista didattico, anzi…

La tassonomia, analisi di una esigenza

Per classificare delle categorie ho bisogno di una tassonomia. Tipo che se analizzo dei film scrivendo delle recensioni con la tassonomia GENERE posso specificare a quale categoria appartiene, se horror, drammatico, thriller etc. La forza di WordPress sta proprio in questo tipo di esigenza, non a caso si parla di CPT, CUSTOM-POST-TYPE , tipo di post personalizzato. Prendiamo il caso di un glossario tipo questo costruito manualmente http://umbriawayformazione.altervista.org/ci_project_seicento/index.php/seicento/item ma quando mai possiamo fare una cosa così differenziando il tutto dal gregge in WP? Essendo una applicazione a se stante, non è una buona regola mescolare vari moduli e progetti dentro lo stesso minestrone proposto di default da WP visto che potrei comunque creare categoria lettera A e così via fino alla Z, inserendo il tutto con il materiale preesistente che racchiude già una mole enorme di informazioni.

Come risolvere?

Ci sono diversi approcci per risolvere il problema, quello più semplice per chi non è un wordpress developer e non scrive codice direttamente nel file functions.php è quello di affidarsi nella fase iniziale a un plug-in, in questo post analizzeremo l’uso per NEWBIE di https://it.wordpress.org/plugins/custom-post-type-ui/ , quindi accingiamo a installarlo nella nostra interfaccia tenendo presente però che abbiamo l’ esigenza di risolvere un problema reale

Analisi del problema

All’ indirizzo http://umbriawayformazione.altervista.org/uwcode/comparazioni.html mi ritrovo con una situazione dove non riesco ad etichettare le caratteristiche psicologiche dei vari investigatori, per cui non so come classificarli e in quale recinto di categoria rinchiuderli.

La soluzione

Applichremo quindi il plug-in Custom Post Type UI per la semplice ragione che un primo approccio visivo, senza conoscere il codice dall’ interno, può aiutarci a mettere in piedi tutta la struttura in modo facile, intuitivo e veloce (e anche senza capire bene quello che stiamo facendo!). Non è l’approccio didattico migliore per un developer wordpress, ma c’è anche la lieta novella: infatti anche disattivando il plug-in e quindi rendendo inutile tutta l’impalcatura di dati perché non sarebbe visibile, dalla voce impostazioni abbiamo modo di copiare direttamente il codice per inserirlo nel file functions.php e quindi di fatto lasciando inalterate tutte le funzionalità del nuovo CPT anche eliminando il plug-in, perchè sappiamo che i plug-in assorbono memoria e richiedono un dispendio di risorse. Ovviamente c’è anche un aspetto negativo in questo approccio ed è quello che se il tema circola, il nuovo utente potrebbe avere a disposizione delle funzionalità che non ha richiesto, quindi meglio lavorare sul function.php da proprietari.

Pronti via!

Dopo aver scaricato il plug-in e averlo attivato ecco la prima cosa da fare, scegliere il nome del CPT, nel nostro caso rapportandoci al documento http://umbriawayformazione.altervista.org/uwcode/comparazioni.html ci teniamo sul vago, sia che si parli di film, serie tv o di libri e ci limitiamo a combattere il male e la criminalità in generale con la voce:

fightcrime

L’operazione di aggiungere e salvare i contenuti creati è abbastanza semplice come testimoniano le due immagini a corredo:

il procedimento sembra facile e intuitivo

ma quello che più conta è che ora abbiamo a disposizione sulla sinistra una voce completamente nuova, fightcrime!

Le impostazioni

A questo punto dobbiamo gettare un occhio in basso su impostazioni dove ci sono tutta una serie di parametri che ci consentono di decidere cosa, dove e quando visualizzare per esempio (con public impostato a TRUE va da se che tutti possono vedere il materiale pubblicato) , posso disabilitare la ricerca sugli articoli, posso impostare delle dipendenze padre-figlio e fare tante altre cose. la cosa migliore visto che in un secondo approccio più complesso dovremmo comunque mettere le mani sul codice e andare sul codex e cercare di approfondire, indirizzo https://developer.wordpress.org/reference/functions/register_post_type/, le voci che si leggono in parametri sono uguali per corrispondenza a quelle visive viste nel plug-in; questi parametri servono a influenzare il comportamento del nostro nuovo CPT appena creato e possiamo quindi decidere le modalità di fruizione per noi e per gli utenti. Quali opzioni posso includere nei miei nuovi post?
Sempre dall’ interno del menù proposto possiamo andare a settare quello che ci interessa includere/escludere come si evince in figura:

Hai la bicicletta? Pedala!

Andiamo su http://umbriawayformazione.altervista.org/uwcode/comparazioni.html e copiamoci i contenuti in vari post, processo lungo e macchinoso ma indispensabile….ma cosa succede dopo aver creato il primo nostro post esclusivo su Sherlock? Che non ho la categoria per assegnarlo! Scandaloso! Come si può risolvere questo problema?

Inserire le categorie

In questa tassonomia potrei avere categorie come serie tv, film, libri o contenuti generici ma come creo questa cosa visto che non vedo il widget a destra al momento della compilazione del post? Nella sezione bacheca del plug-in ci viene mostrata aggiungi tassonomia:

tassonomie, classificare per categorie

Anche qui abbiamo la possibilità di impostare gerarchie tra categorie oppure fare diverse cose, ma la cosa più importante è che adeso tornando al mio articolo vedrò il box categorie sulla destra che prima non esisteva e da qui posso gestire le mie dipendenze e le mie nuove voci da creare

Ottimo, abbiamo finito il lavoro?

Ma che, siamo solo all’ inizio e c’è ancora tempo per lo sclero (inteso in senso propositivo, come sfida)! Adesso come personalizzo le iconcine? Adesso come faccio a vedere gli articoli su pagina singola visto che manca il template? E come faccio a inserire la categoria nella pagina singola? E come faccio a fare una pagina di riassunto in cui vedo tutti i post? E come faccio a inserire in un menù? Insomma come faccio a fare su e giù e alla fine si perde la bussola! Per il template si usa la copia del file single.php e si aggiunge lo slug, in questo caso il file diventa single-fightcrime.php. Dentro non si vedeva la categoria per visualizzarla abbiamo dovuto fare delle implementazioni:

<?php get_header(); ?>
 <div class="container">
  <div class="content">
<?php  if(have_posts()) : ?>
<?php while(have_posts()) : the_post(); ?>
<!-- Articoli -->
<article>
<h3 style="margin-top:10px"><?php the_title(); ?></h3>
<p><i>Articolo creato da <?php the_author(); ?> | <?php the_time('d F Y'); ?></i> </p>
<?php if(has_post_thumbnail()) : ?>
  <div class="img-post"><?php the_post_thumbnail()?></div>
<?php endif; ?>
<p><?php the_content(); ?></p>
</article>
<?php  endwhile; ?>
<?php else : ?>
<?php echo wpautop('ops...non ho trovato articoli!'); ?>
<?php endif; ?>
<p style="margin-top:20px;padding:10px;border: 1px solid #ff9900;">
<?php  echo get_the_term_list($post->ID, 'genere', 'Genere:',',');?></p>
<?php the_meta(); ?>
<!--chiudo il div content -->	  
 </div>
<?php  get_sidebar(); ?>
<!--chiudo il div container -->	 
</div>
<?php get_footer(); ?>
</body>
</html>

in particolare si noterà che abbiamo dovuto aggiungere:

<p style="margin-top:20px;padding:10px;border: 1px solid #ff9900;">
<?php  echo get_the_term_list($post->ID, 'genere', 'Genere:',',');?></p>

Per personalizzare le icone si va su: https://developer.wordpress.org/resource/dashicons/#editor-textcolor e si prende la classe di interesse. A questo punto si va sulla sezione MENU dal pannello di controllo e si inserisce con un link personalizzato l’URL del link, nel nostro caso non essendo riusciti a risolverla con un clone di una index e tantomeno con un ciclo while inserito in una base di appoggio fightcrime.php ci siamo appoggiati alla CATEGORIA GENERICA per linkare tutti gli elementi, in modo da simulare lo stesso funzionamento: https://www.umbriaway.it/wp/genere/explore/ che non è certo una soluzione professionale. Questo dopo aver copiato il codice offerto dal plug-in e averlo copiato nel file functions.php che come sappiamo sovraintende a tutti i meccanismi vitali, dopodichè abbiamo eliminato il plug-in per disimpegnare risorse. Il risultato finale è che tutto funziona anche se tutto l’accrocchio non dovrebbe appoggiarsi alla pagina di categoria che filtra i dati per una categoria generica dove tutti i post sono linkati.

Conclusioni

Siamo solo all’ inizio e sui CPT c’è ancora molto da lavorare, soprattutto adesso serve un approccio bottom-up perchè questo del plug-in è decisamente una forzatura top-down. Quindi la voragine è appena aperta e lascerà fuoriuscire altri approfondimenti sui custom post type!

Rispondi

Inserisci i tuoi dati qui sotto o clicca su un'icona per effettuare l'accesso:

Logo di WordPress.com

Stai commentando usando il tuo account WordPress.com. Chiudi sessione /  Modifica )

Google photo

Stai commentando usando il tuo account Google. Chiudi sessione /  Modifica )

Foto Twitter

Stai commentando usando il tuo account Twitter. Chiudi sessione /  Modifica )

Foto di Facebook

Stai commentando usando il tuo account Facebook. Chiudi sessione /  Modifica )

Connessione a %s...

Blog su WordPress.com.

Su ↑

%d blogger hanno fatto clic su Mi Piace per questo: