Получите одно конкретное изображение из медиа-библиотеки Wordpress
Я загрузил изображения в медиа-библиотеку Wordpress.
Я понимаю, что я могу просмотреть изображение am, а затем получить URL-адрес для этого конкретного изображения, а затем использовать img
HTML-тег для отображения на странице.
alt
, title
, caption
и description
изображения.
на img
не прикреплен к сообщению или полю страницы, поэтому я предполагаю, что вы не можете использовать функцию Get Attachment и т. д.
причина, по которой я хочу использовать функция вместо статического img
HTML-код, так что они сохраняются лучше и проще поддерживать со всеми данными для изображения были обновлены в медиа библиотеке вместо того, чтобы редактировать HTML код, который не является идеи для конечного потребителя.
спасибо заранее.
3 ответов
сначала получить изображения
function get_images_from_media_library() {
$args = array(
'post_type' => 'attachment',
'post_mime_type' =>'image',
'post_status' => 'inherit',
'posts_per_page' => 5,
'orderby' => 'rand'
);
$query_images = new WP_Query( $args );
$images = array();
foreach ( $query_images->posts as $image) {
$images[]= $image->guid;
}
return $images;
}
и отображать изображения
function display_images_from_media_library() {
$imgs = get_images_from_media_library();
$html = '<div id="media-gallery">';
foreach($imgs as $img) {
$html .= '<img src="' . $img . '" alt="" />';
}
$html .= '</div>';
return $html;
}
и используйте php fire event
<?php echo display_images_from_media_library(); ?>
или используйте эту функцию
<?php
if ( $attachments = get_children( array(
'post_type' => 'attachment',
'post_mime_type'=>'image',
'numberposts' => 1,
'post_status' => null,
'post_parent' => $post->ID
)));
foreach ($attachments as $attachment) {
echo wp_get_attachment_link( $attachment->ID, '' , true, false, 'Link to image attachment' );
}
?>
Я полагаю, у вас есть идентификатор вложения? Вы пробовали использовать функции присоединения?
из кодекса:
обратите внимание, что медиа-элементы также являются "сообщениями" в своем собственном праве и могут быть отображается как таковой через иерархию шаблонов WordPress. Темы могут используйте это для перебора медиаэлементов или создания галерей.
следующие функции должны начать работу:
вы можете получить изображение src с помощью: wp_get_attachment_image_src ()
$img= wp_get_attachment_image_src($attachmentID, $imageSizeName);
вы можете получить Заголовок изображения, используя:get_post_field()
get_post_field('post_excerpt', $attachmentID)
вы можете получить тег alt с помощью: get_post_meta ()
get_post_meta($attachmentID, '_wp_attachment_image_alt', true);
пожалуйста, попробуйте ниже код:
<?php
$attachmentID = 1875;
$imageSizeName = "thumbnail";
$img = wp_get_attachment_image_src($attachmentID, $imageSizeName);
//print_r($img);
?>
<img src="<?php echo $img[0]; ?>" alt="image">