Custom post types

Questa documentazione per il plugin WordPress Custom post types ti permette di personalizzare tutte le caratteristiche.

Per ottenere supporto professionale effettua una donazione ed ottieni la versione PRO del plugin.

Creazione post type & tassonomia

Creazione campi personalizzati

Creazione template personalizzato

Hook post type

Manipola i label:

add_filter("cpt_register_labels_{POST-TYPE-ID}", function($labels){
    //
    // manipulates the $labels
    //
    return $labels;
});

Manipola gli args:

add_filter("cpt_register_args_{POST-TYPE-ID}", function($args){
    //
    // manipulates the $args
    //
    return $args;
});

Per i dettagli su queste manipolazioni visita il documentazione ufficiale di WordPress.

Hook tassonomie

Manipola i label:

add_filter("cpt_register_tax_labels_{TAX-ID}", function($labels){
    //
    // manipulates the $labels
    //
    return $labels;
});

Manipola gli args:

add_filter("cpt_register_tax_args_{TAX-ID}", function($args){
    //
    // manipulates the $args
    //
    return $args;
});

Per i dettagli su queste manipolazioni visita il documentazione ufficiale di WordPress.

Hook campi

Aggiungi supporto di un campi personalizzati:

add_filter('cpt_available_fields', function ($available_fields) {
    $available_fields['text'] = [
        'label' => __('Text', 'custom-post-types'),
        'fields' => [ // extra fields
            [
                'key' => 'placeholder',
                'label' => __('Placeholder', 'custom-post-types'),
                'info' => false,
                'required' => false,
                'type' => 'text',
                'extra' => [],
                'wrap' => [
                    'width' => '',
                    'class' => '',
                    'id' => '',
                    'layout' => ''
                ]
            ],
        ]
    ];
    return $available_fields;
});

Nell’esempio precedente viene aggiunto il supporto al tipo di campo “text”.

Manipola l’output dei campi personalizzati per tipo:

add_filter("cpt_get_field_type_{FIELD-TYPE}", function($output, $value, $post_type, $post_id){
    //
    // manipulates the $output
    //
    return $output;
}, 10, 4);

Manipola l’output dei campi personalizzati per key:

add_filter("cpt_get_field_{FIELD-ID}", function($output, $value, $post_type, $post_id){
    //
    // manipulates the $output
    //
    return $output;
}, 10, 4);

Manipola il valore dei campi personalizzati prima del salvataggio:

add_filter("cpt_sanitize_field_{FIELD-TYPE}", function($input){
    //
    // manipulates the $input
    //
    return $input;
});

Hook template

Aggiunti il supporto al tipo di wrap blank per il tuo tema:

add_filter('cpt_themes_supports_rules', function ($supports_rules) {
    $supports_rules['twentytwenty'] = [
        'file-name' => 'singular.php',
        'replace-callback' => function ($content_to_replace) {
            $content_to_replace = str_replace("get_template_part( 'template-parts/content', get_post_type() )", 'custom_post_types_get_custom_template()', $content_to_replace);
            return $content_to_replace;
        },
    ];
    return $supports_rules;
});

Nell’esempio precedente viene aggiunto il supporto del tema “Twenty Twenty”, i dati necessari sono: nome cartella tema, path del template singolo (file-name), callback per sostituire il loop predefinito con la funzione del plugin (replace-callback).

Condividi contenuto:

Questo sito web utilizza cookie tecnici per fornire i servizi richiesti ed una migliore esperienza utente.
I cookie di analisi e statistica sono anonimi, accetti l'utilizzo dei cookie di analisi e statistica non anonimi?