使用FancyBox在自定义POST类型内打开div

时间:2011-09-30 作者:remi90

我确实有类似的问题,但从未找到解决方案。。。

我有一个带有许多页面的自定义帖子类型,但我想做的是从页面中获取一个特定的div,并在链接到它们时将其显示在Fancybox中。以下是HTML:

about.php - 此页面有fancybox链接,因此我希望此页面上的链接从另一个名为single-team.php:

        <ul id="teamScroller" class="jcarousel jcarousel-skin-tango">
        <?php $teamFeed = new WP_Query(array(\'post_type\' => \'team\', \'orderby\' => \'name\')); ?>
        <?php while ($teamFeed->have_posts() ) : $teamFeed->the_post(); ?>
        <li class="teamItem">
            <?php if (has_post_thumbnail( $post->ID )): ?>
                <?php $image = wp_get_attachment_image_src( get_post_thumbnail_id( $post->ID ), \'full\' ); ?>
                <a href="<?php the_permalink() ?>" rel="bookmark" class="teamThumb" title="<?php the_title(); ?>"><img src="<?php bloginfo(\'template_directory\'); ?>/thumbs.php?src=<?php echo $image[0]; ?>&w=71&h=71&zc=1" alt="<?php the_title(); ?>" /></a>
            <?php endif; ?>
            <a href="<?php the_permalink() ?>"><h2 class="redSubHeader teamThumb"><?php echo substr($post->post_title,0,50); // short title ?>...</h2></a>
        </li>
        <?php endwhile;?>
    </ul>
single-team.php - 这是我想在上的Fancybox div中显示的内容about.php. single-team.php 里面有其他元素,但我刚刚粘贴了我要在这里获取的代码。。。

<section>
    <div id="productMainPanel">
        <h1 class="bottomBorder"><?php the_title(); ?></h1>
        <?php if (has_post_thumbnail( $post->ID )): ?>
            <?php $image = wp_get_attachment_image_src( get_post_thumbnail_id( $post->ID ), \'full\' ); ?>
            <a href="<?php the_permalink() ?>" rel="bookmark" title="<?php the_title(); ?>"><img src="<?php bloginfo(\'template_directory\'); ?>/thumbs.php?src=<?php echo $image[0]; ?>&w=640&h=157&zc=1" alt="<?php the_title(); ?>" /></a>
        <?php endif; ?>
        <?php while (have_posts()): the_post(); ?>
            <?php the_content(); ?>
        <?php endwhile; ?>
    </div>
</section>
当然,jquery:

$(document).ready(function() {
    $(\'a.teamThumb\').live(\'click\', function(e){
        e.preventDefault();
        var url = $(this).attr(\'href\');
        url = url + \' #productMainPanel\';
        $(\'#productMainPanel\').load(url, function(data, stat, req){
            $(this).fancybox();
        });
    })


});
有人知道我该怎么做吗?因为到目前为止,它要么直接链接到页面,要么打开Fancybox,但显示整个single-team.php

谢谢

1 个回复
最合适的回答,由SO网友:Jamal Jama 整理而成

删除get_header(), get_footer(), 和get_sidebar() 引用自single-team.php.

结束

相关推荐

TwentyEleven菜单中的jQuery HoverIntent插件

TwentyEleven主题中的默认菜单非常好,纯CSS,但不幸的是,响应速度太快。如果它能以管理栏菜单响应的相同方式响应,那将是一件非常好的事情,即即时下拉,但在鼠标移出时会有一点延迟,以便在光标滑出菜单时让访问者返回菜单。在默认的TwentyEleven菜单中实现HoverIntent jQuery插件最有效的方法是什么?谢谢拍打