Annuncio pubblicitario

Uno dei vantaggi dell'utilizzo di WordPress è la sua estrema flessibilità. Non è solo per post e pagine: i tipi di post personalizzati possono estendere le funzionalità principali praticamente a tutto.

Diamo un'occhiata oggi a cosa potresti fare con i tipi di post personalizzati, nonché un rapido esempio pratico di come creare un elenco di eventi utilizzando un tipo di post personalizzato chiamato Evento.

Nota: Questo tutorial dovrebbe essere considerato solo a scopo educativo, quindi puoi imparare il codice usato per creare tipi di post personalizzati. Se desideri davvero un ottimo plug-in per la creazione di eventi per il tuo sito WordPress, prova Il calendario degli eventi, che è ben sviluppato e gratuito.

Quali sono i tipi di post personalizzati in WordPress?

In genere, un sito WordPress è costituito da due tipi di contenuto: post di blog datati e pagine statiche. Molti di noi lo hanno creare un blog WordPress Configura il tuo blog con WordPress: la guida definitiva

instagram viewer
Vuoi iniziare il tuo blog ma non sai come fare? Guarda WordPress, la più potente piattaforma di blog disponibile oggi. Leggi di più sono a conoscenza del fatto che le pagine dovrebbero essere utilizzate per cose come "Chi sono" o "Informazioni di contatto", mentre i post regolari vanno sul tuo blog.

Ma oltre a ciò, cosa succede se si desidera aggiungere un altro tipo speciale di contenuto che non si adatta davvero all'ordine cronologico del blog e certamente non è statico? È qui che arrivano i tipi di post personalizzati.

Una richiesta abbastanza comune per siti di club o gruppi è quella di avere una sorta di calendario degli eventi. Una soluzione che potrebbe essere applicata è quella di creare una categoria separata di post di eventi. Il problema è che verranno visualizzati nella cronologia principale del blog e dovremmo davvero separare completamente i due concetti.

A tale scopo, creiamo un nuovo tipo di post chiamato evento, che avrà una sezione separata dell'interfaccia di amministrazione.

Come creare un tipo di post personalizzato in WordPress

Lo faremo modificando direttamente i file del tema. Puoi ottenere lo stesso effetto tramite un plug-in, ma per dimostrare il concetto e fare pratica è più semplice scriverli direttamente. Se non ti senti a tuo agio nel farlo, prendi in considerazione l'uso di Plugin Le mie funzioni personalizzate, che consente di aggiungere codice in modo non distruttivo.

Le mie funzioni personalizzate

Apri il tuo tema functions.php file, memorizzato nella cartella del tema all'interno wp-content / themes; oppure utilizza il plug-in Le mie funzioni personalizzate, che troverai in impostazioni > Inseritore PHP. Alla fine del file, aggiungi questo codice:

add_action ('init', 'events_init'); funzione events_init () {$ args = array ('labels' => array ('name' => __ ('Events'), 'singular_name' => __ ('Event'),), 'public' => true, 'has_archive' => true, 'rewrite' => array ("slug" => "events"), 'supports' => array ('thumbnail', 'editor', 'title', 'campi personalizzati')); register_post_type ('events', $ args); }

Assicurati di farlo prima del php di chiusura (?>), se ce n'è uno nel tuo functions.php file.

Prenditi un po 'di tempo per leggere il codice. Dichiara alcune proprietà (come le etichette per l'interfaccia) e il modo in cui gli URL (riscrive) dovrebbero essere gestiti, nonché le funzionalità supportate da questo tipo di post. Ad esempio, puoi aggiungere un campo personalizzato al tuo tipo di post personalizzato con la proprietà supports.

In questo caso, abbiamo dichiarato che il nostro tipo di evento supporta le miniature, un editor di contenuti per la descrizione dell'evento, un titolo dell'evento e campi personalizzati. Abbiamo anche aggiunto has_archive, in modo che la navigazione nella pagina degli eventi visualizzi un archivio di tutti gli eventi, simile a un blog.

Questo è tutto, ora se salvi il tuo tema e ricarichi il tuo blog, supponendo che non ci siano errori, ora dovresti vedere una nuova sezione degli eventi nella barra laterale dell'amministratore. Sìì!

Nota come il mio tema attuale sta sfruttando appieno i tipi di post personalizzati per tutti i tipi di funzionalità extra nell'amministratore.

Aggiungi alcuni eventi di esempio ora.

Due fantastiche feste sono state aggiunte all'elenco degli eventi!

Quindi poiché questo è un evento, crea un campo personalizzato chiamato Data per indicare quando si verificherà l'evento. Uso mm / gg / aaaa formato.

Creazione di un campo data personalizzato per mostrare quando si verificherà effettivamente l'evento

Tieni presente che è necessario utilizzare campi personalizzati per specificare la data effettiva dell'evento anziché la data del post, poiché la data del post rappresenta quando viene pubblicato l'avviso. Poiché presumibilmente aggiungeresti eventi che si verificheranno in futuro, impostare la data di pubblicazione sulla data effettiva dell'evento sarebbe inutile.

Se si tenta di visualizzare l'evento a questo punto, è possibile che venga visualizzato un errore 404. Questo perché WordPress deve rigenerare la struttura dell'URL Permalink per tenere conto di questo nuovo tipo di post. Vai al Impostazioni> Permalink pagina e premi di nuovo Salva.

Ora dovresti essere in grado di visualizzare il singolo post dell'evento. Nota che la prima parte dell'URL, dopo il tuo nome di dominio, è /events/. Abbiamo scelto questo in questa riga di codice:

'rewrite' => array ("slug" => "events"),

Personalizza la pagina di elenco degli eventi

Ora che hai tutti questi fantastici eventi nel tuo blog, sarebbe bello elencarli da qualche parte. Per questo, creeremo un modello di pagina speciale, in modo da poter aggiungere quella pagina alle normali voci di menu insieme a Informazioni o Contatti.

Dato che abbiamo già specificato che il tipo di post evento dovrebbe avere un archivio, puoi andare avanti e vedere quale è l'impostazione predefinita visitando /events/. Sul tema ventisette diciassette standard sul mio sito di test, ho ottenuto questo:

Pagina di archivio che mostra gli eventi

La personalizzazione di questo output dipenderà dal tema che stai utilizzando e la copertura dell'intero sistema di template di WordPress non rientra nell'ambito di questo articolo. Tuttavia, per il bene di questo tutorial, suppongo che stai usando il ventisette.

Inizia creando una copia di archive.phpe rinominalo in archive-events.php. Questo è un convenzione di denominazione standard ciò significa che WordPress utilizzerà automaticamente questo modello per visualizzare l'archivio per il tipo di post eventi.

Dopo aver esaminato il file, i ventisette autori hanno fornito un meccanismo di post-formato, che è troppo complesso per le nostre esigenze:

/* * Includi il modello specifico del formato post per il contenuto. * Se si desidera sovrascriverlo in un tema figlio, includere un file. * chiamato content -___. php (dove ___ è il nome del formato post) e verrà invece utilizzato. */ get_template_part ('template-parts / post / content', get_post_format ());

Nota: si consiglia un tema figlio poiché eventuali aggiornamenti al tema originale sovrascriveranno le modifiche. Questo Articolo di supporto per WordPress descrive il processo di creazione di un tema figlio per Twenty-Seventeen. Per brevità, lavorerò solo sul tema originale e non mi importa se il mio lavoro verrà perso in un aggiornamento successivo.

Tagliare l'intero blocco e incollare invece quanto segue. Questa è solo una copia semplificata di ciò che è in quei modelli di formato post, per motivi di apprendimento:

Se salvi e visualizzi nuovamente l'anteprima della pagina Eventi, noterai che ora ha delle date. Ma si sbagliano. Al momento stanno visualizzando la data di pubblicazione anziché la data dell'evento. Come ultimo passo, cambiamo quello alla data effettiva in cui si terrà l'evento. Trova il bit che genera il tempo, twenty_seventeen_time_link ()e sostituirlo con il seguente:

date ('l jS F Y', strtotime (get_post_meta (get_the_ID (), 'date', true)))

Questo sta ottenendo la data dal meta campo post che abbiamo impostato, quindi usando il PHP Data() funzione per formattarlo in qualcosa di più leggibile.

Archivio con date

Prossimi passi?

Se non sei soddisfatto del tuo attuale host web, ti consigliamo vivamente di utilizzare un host WordPress gestito come Motore WP, che noi stessi utilizziamo per i nostri siti gemelli. Altrimenti, InMotion Hosting offre piani convenienti, che sono ancora più economici con il nostro sconto speciale quando lo usi questo link.

Quindi, nota che quando abbiamo creato il tipo di post dell'evento, abbiamo già codificato il supporto per le miniature in primo piano. Usa la nostra guida a immagini in primo piano e post miniature La guida completa alle miniature in primo piano e alle dimensioni delle immagini in WordPressEcco tutto ciò che devi sapere sulle dimensioni delle immagini in WordPress e sulla gestione delle immagini in primo piano. Leggi di più per acquisire e visualizzare un'immagine in primo piano nell'archivio dell'elenco eventi.

James ha una laurea in Intelligenza Artificiale ed è certificato CompTIA A + e Network +. È lo sviluppatore principale di MakeUseOf e trascorre il suo tempo libero giocando a paintball e giochi da tavolo VR. Costruisce PC da quando era un bambino.