我正在尝试让WordPress将缩略图图像包含在附加到帖子的任何图像的图像标记内,以使缩略图可用于RoyalSlider插件。 (我将插件硬编码到网站中 - 由于各种原因,不想使用wordpress版本。)
最终目标是:
<img class="rsImg" src="image.jpg" data-rsTmb="small-image.jpg" alt="image description" />
即。 WordPress显示附加到帖子的图像,但在每个帖子中,相关的缩略图都添加在&#39; data-rsTmb&#39;。
我希望能够通过插入特定页面模板的一些代码来实现这一点,而不是修改主循环,因为我不需要整个站点的这种行为,只需要通过自定义创建一个滑块页面模板。
我目前有这个:
$image = wp_get_attachment_image_src( $attachment_id, 'thumbnail');
/*
$image[0] => url
$image[1] => width
$image[2] => height
*/
echo '<img class="rsImg" src="'. $image[0] .'" data-rsTmb="small-image.jpg" alt="image description" />';
非常感谢任何帮助!
编辑:根据评论中的建议更新我在网站上使用的显示代码:
<?php
/*
Template Name: Gallery
*/
?>
<?php query_posts('cat=7&showposts='.get_option('posts_per_page=1')); ?>
<?php if (have_posts()) : while (have_posts()) : the_post(); ?>
<?php
$image = wp_get_attachment_image_src( $attachment_id, 'full');
$th = wp_get_attachment_image_src( $attachment_id, 'thumbnail');
echo '<img class="rsImg" src="'. $image[0] .'" data-rsTmb="'. $th[0] .'" alt="image description" />';
?>
<p><?php the_content(); ?></p>
<?php endwhile; endif; ?>
<php wp_reset_query(); ?>
编辑#2:previous version of this question中评论的替代代码 - 此代码有效,但不适用于每个图像(?!):
/*
Template Name: Gallery
*/
?>
<?php query_posts('cat=7&showposts='.get_option('posts_per_page=1')); ?>
<?php if (have_posts()) : while (have_posts()) : the_post(); ?>
<?php
$images =& get_children( 'post_type=attachment&post_mime_type=image&post_parent='.$post->ID );
foreach ( (array) $images as $imageID => $imagePost ) {
// Getting the full image size and thumbnail
$thumbnail = wp_get_attachment_image_src( $imageID, 'thumbnail');
$full = wp_get_attachment_image_src( $imageID, 'full');
echo '<img class="rsImg" src="'. $full[0] .'" data-rsTmb="'. $thumbnail[0] .'" alt="'. $imagePost->post_content .'" />';
}
?>
<p><?php the_content(); ?></p>
<?php endwhile; endif; ?>
<php wp_reset_query(); ?>
答案 0 :(得分:0)
使用您的代码,试试这个:
$image = wp_get_attachment_image_src( $attachment_id, 'full');
$th = wp_get_attachment_image_src( $attachment_id, 'thumbnail');
echo '<img class="rsImg" src="'. $image[0] .'" data-rsTmb="'. $th[0] .'" alt="image description" />';
当然你可能需要进行一些调整,特别是如果你想为大图像使用特殊尺寸(而不是全尺寸)但你会明白这个想法