web-dev-qa-db-fra.com

Obtenir le chemin du premier média attaché (single.php)

Je développe actuellement un site Web pour fonds d'écran avec WordPress et j'essaie de comprendre comment récupérer le chemin du premier média joint dans l'article afin que je puisse l'afficher dans l'article (par exemple, /wp-content/uploads/image.png). J'ai essayé beaucoup de fonctions WordPress telles que get_attached_media() mais je n'ai pas eu de chance.

1
r00t

J'ai donc enfin découvert comment afficher le chemin du premier média attaché à la publication. Voici le code que j'ai inséré dans single.php pour afficher le chemin à la fin du contenu:

<?php
$image_url = wp_get_attachment_image_src( get_post_thumbnail_id( $post->ID ), 'full' );
$path = parse_url($image_url[0], PHP_URL_PATH);

echo /var/www/wordpress/wp-content/uploads$path;
?>

Résultat (par exemple): /var/www/wordpress/wp-content/uploads/2015/12/image.jpg

J'espère que ça va aider quelqu'un d'autre!

1
r00t

J'ai essayé d'écrire un extrait à l'aide du codex WordPress. S'il vous plaît vérifier ci-dessous et le mettre à jour plus loin selon vos besoins. J'espère que ça aide:

global $post;

$args = array(
    'numberposts' => 1,
    'order' => 'ASC',
    'post_mime_type' => 'image',
    'post_parent' => $post->ID,
    'post_status' => null,
    'post_type' => 'attachment',
);

$attachments = get_children( $args );

if ( $attachments ) {
   foreach ( $attachments as $attachment ) {
      $image_attributes = wp_get_attachment_image_src( $attachment->ID, 'full' );
      echo wp_get_attachment_url($attachment->ID);
      echo '<img src="' . wp_get_attachment_thumb_url( $attachment->ID ) . '" class="current">';
}
}
1
Prasad Nevase