我已经看过如何在媒体库中获取所有图像,反之亦然,从图库中获取图像,特色缩略图但尚未找到基于图像ID的方式。
我正在创建一个自定义图库短代码,并且有一个名为ids的属性,就像wordpress的默认内置图库一样,它会根据id输出图像。
我也查看了WordPress文档并获取图片网址,我们需要wp_attachment_src函数。
我有短代码:
//他们输入的ID是图片ID而不是图片ID或特色缩略图来自媒体库的特定图片ID
[some-gallery ids =“8,4,23,9”]
add_shortcode('some-gallery', 'example_shortcode');
function example_shortcode($atts){
extract(shortcode_atts(array(
'ids' => '8,6,9', // 8 is just a default placement
), $atts));
$arr = explode(",",$ids); //convert list of ids as an array
echo "<div id=\"container\">\n";
foreach($arr as $id) {
$img = wp_get_attachment_image_src($id); //get images using image id not working!!
echo "<div>$img</div>\n"; //result is the word Array
}
echo "</div>\n";
}
答案 0 :(得分:0)
你试过wp_get_attachment_image?
<?php wp_get_attachment_image( $attachment_id, $size, $icon, $attr ); ?>
答案 1 :(得分:0)
使用wp_get_attachment_image_src获取图片的网址。
<?php wp_get_attachment_image_src( $attachment_id, $size, $icon ); ?>
它返回一个有序数组,其值对应于(0)url,(1)width,(2)height和(3)图像附件的比例(或表示任何附件的图标)。
这是一个例子
$image = wp_get_attachment_image_src( get_post_thumbnail_id($post->ID), 'product_image_size');
答案 2 :(得分:0)
我发现如果我按照它的作用分解图像结果。
$arr= explode(",",$ids); //prints an array of numbers
echo "<div id=\"container\">\n";
foreach($arr as $id) {
$img = wp_get_attachment_image_src($id, medium);
echo "<div class=\"$class\"><img src=\"$img[0]\" width=\"$img[1]\" height=\"$img[2]\"></div>\n";
}
echo "</div>\n";