问题描述
我想将创建的标记从标准 (dl) 更改为具有差异的 unordered-list 。以下是所需的标记:
<ul>
<li><a href="/path/to/image.jpg"><img src="/path/to/image.jpg" /></a></li>
<li><a href="/path/to/image2.jpg"><img src="/path/to/image2.jpg" /></a></li>
<!-- And so on, all in one ul -->
</ul>
我想要主图像源的链接& img,因为我想通过 php cropper 脚本运行 img src 。
这可能吗?我相信我们可以破解它!
最佳解决方案
感谢您的回复,Jan& Rarst 。他们指出我正确的方向。这是我结束的。
这将禁用内容中的缩写。完美的这个网站& 该功能附加图像& 吐出来作为列表。 (我发现这个功能在某处,并将它缩小一点)
// Removed shortcodes from the content
add_filter('the_content', 'strip_shortcodes');
// Get attached images & spits out a list of them.
function nerdy_get_images($size = 'thumbnail', $limit = '0', $offset = '0') {
global $post;
$images = get_children( array('post_parent' => $post->ID, 'post_status' => 'inherit', 'post_type' => 'attachment', 'post_mime_type' => 'image', 'order' => 'ASC', 'orderby' => 'menu_order ID') );
if ($images) {
$num_of_images = count($images);
if ($offset > 0) : $start = $offset--; else : $start = 0; endif;
if ($limit > 0) : $stop = $limit+$start; else : $stop = $num_of_images; endif;
$i = 0;
foreach ($images as $image) {
if ($start <= $i and $i < $stop) {
$img_title = $image->post_title; // title.
$img_description = $image->post_content; // description.
$img_caption = $image->post_excerpt; // caption.
$img_url = wp_get_attachment_url($image->ID); // url of the full size image.
$preview_array = image_downsize( $image->ID, $size );
$img_preview = $preview_array[0]; // thumbnail or medium image to use for preview.
?>
<li>
<a href="<?php echo $img_url; ?>"><img src="<?php echo $img_preview; ?>" alt="<?php echo $img_caption; ?>" title="<?php echo $img_title; ?>"></a>
</li>
<?
}
$i++;
}
}
}
这是在 single.php 中的调用
<ul>
<?php nerdy_get_images('medium','0','0'); ?>
</ul>
这完全是我想要的一个清单。
再次感谢你们!
次佳解决方案
gallery_shortcode()
功能中的项目输出没有被过滤,所以没有机会改变它。标记只能使用在开始运行的 post_gallery
过滤器完全替换。与通常的过滤最终结果相比,这是一个非常规的方法,可能是出于性能原因 (生成库可能在计算上很重) 。
但它使用 wp_get_attachment_link()
生成链接,其输出通过 wp_get_attachment_link
钩子与大量的细节进行过滤:
apply_filters( 'wp_get_attachment_link', "<a href='$url' title='$post_title'>$link_text</a>", $id, $size, $permalink, $icon, $text );
你需要执行一些非常复杂的作品,你想要单独的脚本来处理它吗?为什么不让 WP 用 add_image_size()
处理它?
参考文献
注:本文内容整合自 Google/Baidu/Bing 辅助翻译的英文资料结果。如果您对结果不满意,可以加入我们改善翻译效果:薇晓朵技术论坛。