Abilitare Gutenberg su un tipo di post personalizzato

30 dic 2018, 14:31:19
Visualizzazioni: 38.2K
Voti: 32

Ho questo tipo di post personalizzato:

function create_posttype() {
  register_post_type( 'companies',
    array(
      'labels' => array(
        'name' => __( 'Aziende membri' ),
        'singular_name' => __( 'Azienda' )
      ),
      'supports' => array('title', 'editor', 'custom-fields', 'excerpt', 'thumbnail'),
      'public' => true,
      'has_archive' => true,
      'rewrite' => array('slug' => 'companies'),
    )
  );
}
add_action( 'init', 'create_posttype' );

Che mostra l'editor classico nell'area di amministrazione di WordPress. Ho provato a sostituire 'editor' con 'gutenberg' nell'array supports ma non funziona. Ho anche aggiunto questo codice alla mia funzione come suggerito qui:

add_filter('gutenberg_can_edit_post_type', 'prefix_disable_gutenberg');
function prefix_disable_gutenberg($current_status, $post_type)
{
    if ($post_type === 'companies') return true;
    return $current_status;
}

Come posso avere l'editor Gutenberg sul mio tipo di post personalizzato?

1
Commenti

questo articolo potrebbe esserti utile - https://webomnizz.com/how-to-enable-gutenberg-editor-with-custom-post-type/

jogesh_pi jogesh_pi
7 set 2020 10:26:05
Tutte le risposte alla domanda 2
2
72

Per far funzionare Gutenberg in un Custom Post Type è necessario abilitare sia l'editor in supports (che già hai) sia show_in_rest. Quindi aggiungi 'show_in_rest' => true, all'array degli argomenti di registrazione del post.

30 dic 2018 14:40:18
Commenti

Sono contento che funzioni, prego.

Alvaro Alvaro
30 dic 2018 14:50:12

Funziona bene, grazie

Ferrmolina Ferrmolina
9 mag 2020 16:37:38
0
10

Inizia registrando un tipo personalizzato (custom post type) per Gutenberg in WordPress. Il processo è abbastanza semplice e prevede l'aggiunta del seguente snippet di codice.

/* Registra un CPT WordPress per Gutenberg */
function cw_post_type() {

    register_post_type( 'portfolio',
        // Opzioni del CPT WordPress - Inizio
        array(
            'labels' => array(
                'name' => __( 'Portfolio' ),
                'singular_name' => __( 'Portfolio' )
            ),
            'has_archive' => true,
            'public' => true,
            'rewrite' => array('slug' => 'portfolio'),
            'show_in_rest' => true,
            'supports' => array('editor')
        )
    );
}

add_action( 'init', 'cw_post_type' );

Aggiungi la chiave 'show_in_rest' e impostala su 'true' nel tuo custom post type.

'show_in_rest' => true,
   'supports' => array('editor')

Come puoi vedere, il codice sopra riportato imposta semplicemente il parametro 'show_in_rest' su 'TRUE'. Dopo questo passaggio, quando crei o modifichi un custom post type, vedrai l'editor Gutenberg visibile e abilitato.

Tutti i passaggi e le query sono discussi in dettaglio su https://www.cloudways.com/blog/gutenberg-wordpress-custom-post-type/

13 mar 2019 11:33:04