Actualités WEB et WordPress, thèmes, plugins. Ici, nous partageons des conseils et les meilleures solutions de sites Web.

get_post_meta Éditeur de blocs WordPress (Gutenberg) L’équivalent est getEditedPostAttribute(‘meta’)

30

Si vous débutez dans l’écriture de plugins pour l’éditeur de blocs WordPress (Gutenberg), vous cherchez peut-être comment obtenir la méta de la publication actuelle avec get_post_meta.

N’ayez crainte, vous pouvez toujours get_post_metautiliser getEditedPostAttribute('meta')sur le message actuel pour obtenir toutes les méta, comme ceci :

const meta = wp.data.select('core/editor').getEditedPostAttribute('meta');

Tant que vous avez rendu votre clé méta disponible dans l’API de repos, vous pouvez maintenant la récupérer à partir de la metavariable.

const meta = wp.data.select('core/editor').getEditedPostAttribute('meta');

const metaExample = meta['wholesomecode_meta_key_example'];

Dans le code ci-dessus, je récupère la valeur de mon post meta( wholesomecode_meta_key_example) et la transmets à la variable metaExample.

Pour vous assurer que votre méta de publication est disponible dans Gutenberg, vous devez l’enregistrer et vous assurer qu’elle show_in_restest définie sur true.

add_action( 'init', 'register_meta');

function register_meta() {
    register_post_meta(
        'post',
        'wholesomecode_meta_key_example',
        [
            'show_in_rest' => true,
            'single'       => true,
            'type'         => 'string',
        ]
    );
}

Obtenez le méta à partir d’un autre identifiant de publication

Si vous souhaitez obtenir la méta d’un autre article, vous pouvez utiliser getEntityRecord, et lui transmettre l’ID de l’article que vous souhaitez obtenir :

const {meta} = wp.data.select('core').getEntityRecord('postType', 'post', 42);

Dans l’exemple ci-dessus, la méta du message (à condition qu’il ait été enregistré) se trouve maintenant dans la metavariable.

Utiliser getEntityRecordéquivaut à faire un get_post dans Gutenberg.

Essayez-le dans la console

Connectez-vous à votre site et utilisez l’ wpobjet dans la console tout en éditant un message pour l’essayer par vous-même. Vous devriez obtenir un objet JSON facile à utiliser de la méta post :

wp.data.select('core/editor').getEditedPostAttribute('meta');
{
   wholesomecode_meta_key_example: 'Example',
}

Mise à jour de la méta des publications

Si vous souhaitez mettre à jour la méta des publications depuis WordPress Gutenberg, vous pouvez le faire avec editPosteteditEntityRecord.

Source d’enregistrement: wholesomecode.ltd

This website uses cookies to improve your experience. We'll assume you're ok with this, but you can opt-out if you wish. Accept Read More