Activer Gutenberg sur le type de publication personnalisé

19

J'ai ce type de message personnalisé:

function create_posttype() {
  register_post_type( 'companies',
    array(
      'labels' => array(
        'name' => __( 'شرکتهای عضو' ),
        'singular_name' => __( 'شرکت' )
      ),
      'supports' => array('title', 'editor', 'custom-fields', 'excerpt', 'thumbnail'),
      'public' => true,
      'has_archive' => true,
      'rewrite' => array('slug' => 'companies'),
    )
  );
}
add_action( 'init', 'create_posttype' );

Qui montre l'éditeur classique dans la zone d'administration de WordPress. J'ai essayé de remplacer «éditeur» par «gutenberg» dans le tableau des supports qui ne fonctionne pas. J'ai également ajouté ce code à ma fonction comme suggéré ici :

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;
}

Comment puis-je avoir un éditeur Gutenberg sur mon type de publication personnalisé?

ehsan
la source

Réponses:

37

Pour que Gutenberg fonctionne dans un type de publication personnalisé, vous devez activer à la fois editorin supports(que vous avez déjà) et show_in_rest. Ajoutez donc 'show_in_rest' => true,à votre tableau d'arguments post-enregistrement.

Alvaro
la source
Heureux que cela fonctionne, vous êtes les bienvenus.
Alvaro
3

Commencez par enregistrer un type personnalisé Gutenberg WordPress. Le processus est assez facile et implique l'ajout de l'extrait de code suivant.

/*Register WordPress  Gutenberg CPT */
function cw_post_type() {

    register_post_type( 'portfolio',
        // WordPress CPT Options Start
        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' );

ajoutez la clé show_in_rest et définissez-la sur true via votre type de publication personnalisé.

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

Comme vous pouvez le voir, l'extrait de code ci-dessus vient de définir le paramètre «show_in_rest» sur «TRUE». Après cette étape, lorsque vous créez ou modifiez un type de publication personnalisé, vous verrez l'éditeur Gutenberg visible et activé.

Toutes les étapes et la requête sont discutées en détail sur https://www.cloudways.com/blog/gutenberg-wordpress-custom-post-type/

Owais Alam
la source