web-dev-qa-db-fra.com

Obtenir l'ID de la page en dehors de la boucle, l'ID de menu correspondant

Comment puis-je obtenir l'ID de l'article/de la page/de la catégorie actuels d'une manière qui corresponde à l'ID obtenu dans les menus à l'aide de get_post_meta( $item->ID )['_menu_item_object_id'][0]? J'ai l'intention de l'utiliser dans une fonction JavaScript.

  • Pour les pages, y compris la page Messages, il s'agit de l'ID de la page.
  • Pour les catégories, c'est l'ID de la catégorie

J'ai essayé d'utiliser global $wp_query; echo $wp_query->post->ID;, mais il donne l'ID d'un message pour les pages de catégorie et la page de messages. (premier ou dernier message affiché, selon qu'il se trouve avant ou après la boucle)

Plus d'informations:

J'ajoute la dernière date de modification et l'ID aux éléments de menu en tant qu'attributs de données de cette question et je souhaite enregistrer la dernière date de visite sur localstorage, associée à l'ID. du menu afin que je puisse les comparer.

1
Malik Drako

Utilisez get_queried_object_id() pour obtenir l'identifiant quel que soit le type d'objet dont il s'agit, post, page.

Il y a aussi la fonction get_queried_object() , qui vous donnera plus de détails, mais aura des différences structurelles en fonction du type d'objet.

2
Milo

Cela devrait le faire ...

global $post;
echo $post->ID;
0
Cedon