サポート » プラグイン » 特定の条件でwp-jquery-lightboxの自動リンク編集が効かない

  • 解決済 slyman

    (@slyman)


    現在wp-jquery-lightboxをインストールし、使用しています。
    自作したTOPや固定ページなどでは正常に動作しております。
    ただ、日記ページで特定のカテゴリのみ、レイアウトを切り替えるよう、
    処理を書いており、その特定のカテゴリのloop系レイアウトを読み込んだ場合のみ、
    wp-jquery-lightboxが動作しません。

    <?php
    /**
     * The Template for displaying all single posts.
     *
     * @package WordPress
     * @subpackage Twenty_Ten
     * @since Twenty Ten 1.0
     */
    
    get_header(); ?>
    <div id="main">
    	<div class="leftbox">
    			<?php
    			/* Run the loop to output the post.
    			 * If you want to overload this in a child theme then include a file
    			 * called loop-single.php and that will be used instead.
    			 */
    			if(in_category(103)){
    				get_template_part( 'loop', 'review' );
    			}else{
    				get_template_part( 'loop', 'single' );
    			}
    			?>
    </div>
    <?php
    if(in_category(103)){
    ?>
    	<div class="rightbar" style="width:215px;">
      	 	<div id="latest_reviwe">
              	<img class="top-subtitle" src="<?php bloginfo('template_directory'); ?>/images/sidebar/latestjournals.gif" alt="illust" height="25" width="200">
              	<ul>
    <?php
    if ( have_posts() ) : query_posts('cat=103&orderby=date&order=DESC&post_status=publish&posts_per_page=10');
    while (have_posts()) : the_post();
    $date = get_the_time("Y/m/d");
    $link = '<li><a href="'.get_permalink().'">'.get_the_title().'</a></li>';
    echo $link;
    endwhile;
    endif;
    ?>
              	</ul>
    		</div>
    	</div>
    <?php
    }else{
    	get_sidebar();
    }
    	get_footer();
    ?>
    	</div><!-- #main_tow_columns -->

    ざっと見たところ読み込んでいるJSファイルやスクリプトにも差分が見つからず、
    途方にくれています。
    どなたか似た現象にあった方は居らっしゃらないでしょうか?

3件の返信を表示中 - 1 - 3件目 (全3件中)
  • こんにちは。

    質問される時は、詳しい環境情報をお願いします。

    お使いのプラグインは、

    WP jQuery Lightbox

    でしょうか?

    バージョンは、最新版で宜しいですか?

    「WP jQuery Lightbox」は画像をマークアップする<a>タグに、

    rel="lightbox[ID番号]"

    と言った属性を追加する仕組みで、この属性がない画像ではLightbox効果は得られません。

    動作しないページで、ソース上にこの属性は追加されていますか?

    下記の正規表現にマッチする場合にのみ、rel属性が追加されますので注意を。

    /(<a(?![^>]*?rel=['\"]lightbox.*)[^>]*?href=['\"][^'\"]+?\.(?:bmp|gif|jpg|jpeg|png)['\"][^\>]*)>/i

    スレッド開始 slyman

    (@slyman)

    正規表現頂いて気付きました。
    不特定多数のユーザーに投稿させていたため、画像を張る時にファイルのURLではなく、
    投稿のURLが選択されていたため、パターンマッチしなかったのが原因でした。
    お騒がせしました。

    slymanさん

    ユーザーに「ファイルのURL」を選択させることが難しければ、「投稿のURL」を「ファイルのURL」に正規表現を使って置換する事も可能かと思います。

    私は昔、よく分からずに「投稿のURL」で、全ての画像を投稿してしまっていたので、「ファイルのURL」に置換するプラグインを作ってLightboxを適用させていました。

3件の返信を表示中 - 1 - 3件目 (全3件中)
  • トピック「特定の条件でwp-jquery-lightboxの自動リンク編集が効かない」には新たに返信することはできません。