Javascript と PHP だけで:
PHP
codexthe_post_thumbnail()
に従って使用して、さまざまな画像サイズを取得できます。
the_post_thumbnail(); // without parameter -> 'post-thumbnail'
the_post_thumbnail('thumbnail'); // Thumbnail (default 150px x 150px max)
the_post_thumbnail('medium'); // Medium resolution (default 300px x 300px max)
the_post_thumbnail('large'); // Large resolution (default 640px x 640px max)
the_post_thumbnail('full'); // Full resolution (original size uploaded)
the_post_thumbnail( array(100,100) ); // Other resolutions
Javascript
ここで説明されているように、を使用してウィドウ サイズを取得できますjQuery(window).width()
。
2 つを組み合わせることで、ループ内のテーマのテンプレート ファイルで次のようなことができます。
<script>
if( jQuery(window).width() < 480 ) {
<?php the_post_thumbnail('medium'); ?>
}
else if( jQuery(window).width() < 960 ) {
<?php the_post_thumbnail('large'); ?>
}
else {
<?php the_post_thumbnail('full'); ?>
}
</script>
警告: 私は今これをテストするためのマシンを持っていませんが、上記が機能しない場合は、などに置き換え<?php the_post_thumbnail('medium'); ?>
てみてください (ここimage = <?php get_the_post_thumbnail($post_id, 'medium'); ?>;
に関する情報を参照してください)。get_the_post_thumbnail()
<?php $post_id = get_the_ID(); ?>
<div id=my-div></div>
<script>
if( jQuery(window).width() < 480 ) {
var image = <?php get_the_post_thumbnail($post_id, 'medium'); ?>;
}
else if( jQuery(window).width() < 960 ) {
var image = <?php get_the_post_thumbnail($post_id, 'large'); ?>;
}
else {
var image = <?php get_the_post_thumbnail($post_id, 'full'); ?>;
}
jQuery('#my-div').append(image);
</script>