Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Custom Post Types

Custom Post Types

Cosa sono i custom post types, a cosa servono e perchè usarli - Antonino Scarfì

WordPress Meetup Catania

October 31, 2017
Tweet

More Decks by WordPress Meetup Catania

Other Decks in Education

Transcript

  1. WordPress Meetup Catania Ottobre 2017 - Custom post type (Antonino

    Scarfì) CUSTOM POST TYPE Cosa sono?
 Come si usano? Come si creano? Perché vengono usati?
  2. WordPress Meetup Catania Ottobre 2017 - Custom post type (Antonino

    Scarfì) WordPress BREVE PERCORSO Nasce come piattaforma di solo blogging Introduce la possibilità di estendere tramite plugin - Ver. 1.2 Introduce le pagine (da qui la possibilità di fare anche siti vetrina con WordPress) - Ver. 1.5 Custom taxonomies (non più solo categorie e tag) - Ver. 2.3 Custom post types - Ver. 3.0 (non solo siti vetrina quindi, ma anche ecommerce, booking system, e-learning, ecc..)
  3. WordPress Meetup Catania Ottobre 2017 - Custom post type (Antonino

    Scarfì) CONTENUTO - articoli del blog - pagine - immagini caricate nei media - voci di menu
  4. WordPress Meetup Catania Ottobre 2017 - Custom post type (Antonino

    Scarfì) COSA È UN POST? È l’entità che rappresenta il singolo contenuto Può rappresentare qualunque cosa: - articolo del blog - una pagina - la voce di un menu - un’immagine caricata nella sezione media Tutti risiedono nella stessa tabella del database
  5. WordPress Meetup Catania Ottobre 2017 - Custom post type (Antonino

    Scarfì) COME SI DISTINGUONO? Tramite il POST TYPE
  6. WordPress Meetup Catania Ottobre 2017 - Custom post type (Antonino

    Scarfì) POST TYPE Semplice parola caratteri minuscoli senza spazi senza caratteri speciali no trattino - sì underscore
  7. WordPress Meetup Catania Ottobre 2017 - Custom post type (Antonino

    Scarfì) POST TYPE STANDARD post - articolo del blog revision - singola revisione di un articolo page - pagina attachment - media nav_menu_item - voci di menu
  8. WordPress Meetup Catania Ottobre 2017 - Custom post type (Antonino

    Scarfì) CUSTOM POST TYPE post - articolo del blog revision - singola revisione di un articolo page - pagina attachment - media nav_menu_item - voci di menu product - prodotto di un ecommerce book - libro di una libreria ecc…
  9. WordPress Meetup Catania Ottobre 2017 - Custom post type (Antonino

    Scarfì) CUSTOM POST TYPE - nasconde i suoi contenuti dalla query di default - organizzazione dei post in una nuova voce di menu - pagina admin di editing personalizzabile - template di pagina personalizzabili
  10. WordPress Meetup Catania Ottobre 2017 - Custom post type (Antonino

    Scarfì) DOVE SI POSSONO USARE? In temi In plugin
  11. WordPress Meetup Catania Ottobre 2017 - Custom post type (Antonino

    Scarfì) In temi In plugin DOVE SI POSSONO USARE? Il custom post type è legato al design del sito (tema) Attivi il tema e il custom post type appare Disattivi il tema e: - L’utente non può più accedere al custom post type - I dati resteranno salvati nel db
  12. WordPress Meetup Catania Ottobre 2017 - Custom post type (Antonino

    Scarfì) In plugin In temi DOVE SI POSSONO USARE? Il custom post type è slegato dal design del sito Puoi cambiare tema senza perdere il custom post type I plugin possono essere disattivati
  13. WordPress Meetup Catania Ottobre 2017 - Custom post type (Antonino

    Scarfì) CODICE register_post_type( $post_type, $args );
  14. WordPress Meetup Catania Ottobre 2017 - Custom post type (Antonino

    Scarfì) CODICE register_post_type( $post_type, $args ); $post_type Il post type associato ai post creati (max 20 caratteri)
  15. WordPress Meetup Catania Ottobre 2017 - Custom post type (Antonino

    Scarfì) CODICE register_post_type( $post_type, $args ); $post_type Il post type associato ai post creati (max 20 caratteri) $args Configurazione del custom post type, sotto forma di array Lista completa: https://codex.wordpress.org/Function_Reference/register_post_type#Arguments
  16. WordPress Meetup Catania Ottobre 2017 - Custom post type (Antonino

    Scarfì) ESEMPIO function my_custom_init() { $args = array( 'public' => true, 'label' => __( 'Books', 'textdomain' ) ); register_post_type( 'book', $args ); } add_action( 'init', 'my_custom_init' );
  17. WordPress Meetup Catania Ottobre 2017 - Custom post type (Antonino

    Scarfì) TAXONOMY Categories, tags, etc…
  18. WordPress Meetup Catania Ottobre 2017 - Custom post type (Antonino

    Scarfì) CODICE register_taxonomy( $taxonomy, $post_type, $args );
  19. WordPress Meetup Catania Ottobre 2017 - Custom post type (Antonino

    Scarfì) CODICE register_taxonomy( $taxonomy, $post_type, $args ); $taxonomy Nome della tassonomia. No caratteri speciali, no spazi, solo minuscole (max 32 car.) Vale sia per categorie che per tag
  20. WordPress Meetup Catania Ottobre 2017 - Custom post type (Antonino

    Scarfì) CODICE register_taxonomy( $taxonomy, $post_type, $args ); $taxonomy Nome della tassonomia. No caratteri speciali, no spazi, solo minuscole (max 32 car.) $post_type Il post type a cui associarlo
  21. WordPress Meetup Catania Ottobre 2017 - Custom post type (Antonino

    Scarfì) CODICE register_taxonomy( $taxonomy, $post_type, $args ); $taxonomy Nome della tassonomia. No caratteri speciali, no spazi, solo minuscole (max 32 car.) $post_type Il post type a cui associarlo $args Configurazione della tassonomia sotto forma di array Lista completa: https://codex.wordpress.org/Function_Reference/register_taxonomy#Arguments
  22. WordPress Meetup Catania Ottobre 2017 - Custom post type (Antonino

    Scarfì) ESEMPIO function my_create_book_tax() { $taxonomy = 'genre'; $post_type = 'book'; $args = array( 'label' => __( 'Genre', 'textdomain' ), 'hierarchical' => true, ); register_taxonomy( $taxonomy, $post_type, $args ); } add_action( 'init', 'my_create_book_tax' );
  23. WordPress Meetup Catania Ottobre 2017 - Custom post type (Antonino

    Scarfì) CUSTOM TEMPLATE archive-$post_type.php archive.php single-$post_type.php single.php taxonomy-$taxonomy-$term.php taxonomy-$taxonomy.php taxonomy.php