Wordpress & Fancybox - проблема петли?- fancybox продолжает перезагружать страницу - PullRequest
0 голосов
/ 21 августа 2010

Страница проблемы: www.kendraschaefer.com/mandapop (проблема с изображениями в тонкой средней колонке)

Привет

Я работаю над новым шаблоном Wordpress и столкнулся с проблемой с Fancybox. Я пытаюсь получить изображения в тонкой средней колонке на странице выше, чтобы при щелчке на них всплыть в fancybox с прикрепленными данными постов.

В основном это работает нормально - при первом нажатии, нет проблем. Нажмите на изображение, сообщение всплывает в необычной коробке. Но закройте fancybox и попробуйте снова, и вы заметите, что сообщение загружается один раз, а затем снова загружается. Нажмите на другое, и на этот раз пост загружается несколько раз. (Не нажимайте слишком много раз, ваш браузер взбесится). Похоже, проблема рекурсии, но я не уверен, где я иду не так.

Я попытался использовать другие всплывающие плагины, такие как Facebox и Lightbox, с той же проблемой, поэтому это должен быть мой цикл или что-то в этом роде. Я также закомментировал все остальные javascript на странице, чтобы увидеть, был ли конфликт - все еще была проблема.

Вот мой код (есть два цикла - один для изображений галереи и один для записей в блоге):

<div id="homeGalleryCol">
<div id="homeGalleryContent">
<?php 
query_posts('post_type=galleryimage&posts_per_page=7');

if(have_posts()) : while(have_posts()) : the_post(); ?>
        <div class="singlePhotoPost">
        <h3 class="galleryListDate"><?php the_time('M d'); ?></h3>
                <a href="<?php the_permalink(); ?>" class="fancybox"><?php the_post_thumbnail('gallery-pic-thumbnail'); ?></a>
        </div><!-- end singlePhotoPost -->
    <?php endwhile; ?>
<?php endif; ?>
</div><!-- end homeGalleryContent -->
</div><!-- end homeGalleryCol -->

<div id="thinRightCol">
<div id="rightColContent">
        <div id="blogListColWrapper">
    <div id="blogListCol">


<?php 
query_posts('posts_per_page=3');

global $more;
$more = 0;


if(have_posts()) : while(have_posts()) : the_post(); ?>
        <div class="singlePost">
        <h3 class="blogListDate"><?php the_time('M d'); ?></h3>
                <a href="<?php the_permalink(); ?>"><?php the_post_thumbnail(); ?></a>
        <h2 class="postTitle"><a href="<?php the_permalink(); ?>"><?php the_title(); ?></a></h2>
        <?php the_content('<span class="moretext">&nbsp;</span>'); ?>
        </div><!-- end singlePost -->

    <?php endwhile; ?>  
    <?php endif; ?>
    </div><!-- end blogListCol -->
    </div><!-- end blogListColWrapper -->

</div><!-- end rightColContent -->
</div><!-- end thinRightCol -->

Большое спасибо.

Ответы [ 2 ]

0 голосов
/ 05 января 2016

Попробуйте с этой функцией <?php wp_reset_postdata(); ?>

Поскольку эта функция используется для восстановления глобальной переменной $ post основного цикла запроса после вторичного цикла запроса с использованием нового WP_Query. Восстанавливает переменную $ post для текущей записи в основном запросе.

Пример: http://pastebin.com/kSEg5JPg
Обратите внимание на <?php wp_reset_postdata(); ?>

Надеюсь, что это поможет вам

0 голосов
/ 13 марта 2012

Кажется, вы удалили фактический вывод.Вы можете восстановить его, и я дам вам знать, что происходит?Спасибо.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...