web-dev-qa-db-fra.com

Obtenir la méta du champ personnalisé de l'URL de l'image

J'ai un champ personnalisé qui est une image et la valeur de retour du champ est l'URL de l'image.

J'ai des modèles de page personnalisés où je rends ces champs d'image. Existe-t-il un moyen d'obtenir les méta-informations de l'image via l'URL de l'image? Je ne souhaite pas modifier la valeur de retour en objet ou ID d'image.

1
essjay

J'avais besoin du code dans functions.php pour pouvoir le réutiliser. Voici ma solution ci-dessous:

function get_img_alt($attachment) {    
  $post = get_post();
  $image_id  = get_post_meta( $post->ID, $attachment, true );
  $image_alt = get_post_meta($image_id, '_wp_attachment_image_alt', true);
  print $image_alt;
}
0
essjay

Je peux déjà dire que vous utilisez ACF. Si vous ne souhaitez pas modifier les paramètres de retour pour le champ, vous pouvez contourner ACF et extraire simplement l'ID de l'image directement à partir de Post Meta:

$image_url  = get_field( 'my_field_name' );
$image_id   = get_post_meta( $post->ID, 'my_field_name', true );
$image_meta = wp_get_attachment_metadata( $image_id );
2
TheDeadMedic