状況
Easy Fancyboxなどのプラグインを入れても、ちゃんと拡大されない。困った。
原因
サムネイルの出力を単純化し過ぎている可能性がある。例えば、以下のような書き方。
example-before.php
<?php the_post_thumbnail('large'); ?>
解決策
とりあえず、出力することをやめて、画像へのパスを変数として取得することを考える。このために、the_post_thumbnail関数の使用から、get_post_thumbnail_id関数の使用に変更する。
変数として取得した後は、それぞれの必要な所で出力すればいい。下の例では、jQueryプラグインのlightboxに合わせた書き方をしている。
ちなみに、jQueryプラグインではなく、WordPressプラグインのEasy Fancyboxをする際に、data-lightbox=""を取り除いてしまうと、上手く表示されないという現象が起こった。Easy Fancyboxは、Lightboxの対抗馬であるFancyboxに依存しているはずなのだが…。
example-after.php
<?php $image = wp_get_attachment_image_src( get_post_thumbnail_id( $post->ID ), 'full' ); ?>
<a href="<?php echo $image[0]; ?>" data-lightbox="<?php echo $image[0]; ?>" title="<?php the_title(); ?>">
<img src="<?php echo $image[0]; ?>" alt="<?php the_title(); ?>" />
</a>
参考
jquery - Open div inside a custom post-type with Fancybox - WordPress Development Stack Exchange