web-dev-qa-db-fra.com

Obtenir des valeurs de champ personnalisées dans la barre latérale/widget?

Je n'ai pas vu cela fait, mais je veux renvoyer les valeurs de champs personnalisés en dehors de la boucle dans la barre latérale.

3
Jason

Certainement faisable avec des tonnes de façons différentes de le réaliser. En gros, vous pouvez utiliser un widget qui permet l'exécution de PHP ou modifier vos fichiers de thème pour exécuter PHP dans l'encadré. La fonction principale dont vous aurez besoin est get_post_meta . Vous devez également accéder au post/page/CPT ID. Vous pouvez utiliser le code suivant pour afficher votre méta de publication.

global $wp_query;
if(is_object($wp_query->queried_object) && $wp_query->queried_object->ID)
{
    echo get_post_meta($wp_query->queried_object->ID, 'my_post_meta_key', true);
}

De toute évidence, vous devez remplacer la valeur "my_post_meta_key" par une clé correspondant aux métadonnées de votre choix. En outre, il existe d'autres moyens d'accéder à la page/au post/à l'identifiant CPT en cours, mais comme je ne connais pas votre contexte spécifique, cela fonctionnera dans la plupart des situations.

5
tollmanz

Si vous avez l'ID, alors un appel à get_post_meta () en passant seulement l'ID vous obtiendrez un tableau de toutes les valeurs:

$meta = get_post_meta( $post_id );
0
fantata