J'ai une galerie attachée à une page. Sur cette page, j'exécute la requête suivante:
$events_gallery = new WP_Query( // Start a new query for our videos
array(
'post_parent' => $post->ID, // Get data from the current post
'post_type' => 'attachment', // Only bring back attachments
'post_mime_type' => 'image', // Only bring back attachments that are images
'posts_per_page' => '3', // Show us the first three results
'status' => 'inherit', // Inherit the status of the parent post
'orderby' => 'rand', // Order the attachments randomly
)
);
J'ai expérimenté plusieurs façons et, pour une raison quelconque, je ne peux pas obtenir de pièces jointes à retourner. Suis-je en train de manquer quelque chose d'évident ici?
Mise à jour*
Merci à Wok de m'avoir pointé dans la bonne direction.
Il s'avère que j'utilisais "status" au lieu de "post_status". Le codex avait utilisé "statut" comme exemple dans son explication contextuelle du type de poste "pièce jointe". J'ai mis à jour le codex pour référencer "post_status" à la place. Le code correct est le suivant:
$events_gallery = new WP_Query( // Start a new query for our videos
array(
'post_parent' => $post->ID, // Get data from the current post
'post_type' => 'attachment', // Only bring back attachments
'post_mime_type' => 'image', // Only bring back attachments that are images
'posts_per_page' => '3', // Show us the first three results
'post_status' => 'inherit', // Attachments default to "inherit", rather than published. Use "inherit" or "any".
'orderby' => 'rand', // Order the attachments randomly
)
);
wp-query
attachments
Jonathan Wold
la source
la source
'post_status' => 'inherit'
Merci!Réponses:
Ce sont les paramètres de requête que j'utilise ... fonctionne pour moi lorsque je passe en revue les résultats
la source
Ajoutez
$args
, c'est important.Ne pas:
'post_status' => null
Ceci est important parce que les pièces jointes ne sont pas
post_status
, la valeur par défautpost_status
,published
, trouveront pas de pièces jointes.la source
En regardant la requête qu'il génère, il semble que ce soit un bug de toutes sortes. 'status' => 'inherit' est interprété comme le statut du parent, lorsque l'entrée dans la base de données pour la pièce jointe est littéralement 'inherit'.
Une alternative consiste à utiliser get_children à la place de WP_Query.
la source
J'ai pu afficher toutes les images qui sont des pièces jointes à un message en utilisant ce code.
Et pour faire écho à l'URL de l'image originale en taille réelle, vous pouvez lier cette image à
J'espère que c'est une approche de ce que vous essayez de faire.
la source