WordPress的帖子重复
问题描述:
嘿家伙我使用WordPress的Imbalance2主题,我已经创建了一个新的循环来处理不同的页面,因为我有一个类别指向一个页面,但是页面上的帖子加载只是重复,因为我向下滚动页面。它使用ajax的东西来加载滚动。下面是我对新的循环代码:WordPress的帖子重复
<?php if (! have_posts()) : ?>
<div id="post-0" class="post error404 not-found">
<h1 class="entry-title"><?php _e('Not Found', 'imbalance2'); ?></h1>
<div class="entry-content">
<p><?php _e('Apologies, but no results were found for the requested archive. Perhaps searching will help find a related post.', 'imbalance2'); ?></p>
<?php get_search_form(); ?>
</div><!-- .entry-content -->
</div><!-- #post-0 -->
<?php endif; ?>
<?php $imbalance2_theme_options = get_option('imbalance2_theme_options') ?>
<div id="boxes">
<?php while (have_posts()) : the_post(); ?>
<div class="box">
<div class="rel">
<a href="<?php the_permalink(); ?>"><?php the_post_thumbnail('homepage-thumb', array('alt' => '', 'title' => '')) ?></a>
<?php if ($imbalance2_theme_options['images_only'] == 0): ?>
<h1 style="padding-top:8px; padding-bottom:2px;"><a href="<?php the_permalink(); ?>"><?php the_title(); ?></a></h1>
<?php the_excerpt() ?>
<div class="categories" style="padding-top:5px;"><?php
$key = 'title';
$themeta = get_post_meta($post->ID, $key, TRUE);
if($themeta != '') {
echo "<strong>Job Title: </strong>";
echo $themeta;
}
?>
<br />
<?php
$key = 'location';
$themeta = get_post_meta($post->ID, $key, TRUE);
if($themeta != '') {
echo "<strong>Location: </strong>";
echo $themeta;
}
?>
</div>
<div class="posted"><?php imbalance2_posted_on() ?> <span class="main_separator">/</span>
<?php echo comments_popup_link(__('No comments', 'imbalance2'), __('One Comment', 'imbalance2'), __('% Comments', 'imbalance2')); ?>
</div>
<?php endif ?>
<div class="texts">
<?php if ($imbalance2_theme_options['images_only'] == 1): ?>
<a class="transparent" href="<?php the_permalink(); ?>"><?php the_post_thumbnail('homepage-thumb', array('alt' => '', 'title' => '')) ?></a>
<?php endif ?>
<div class="abs">
<?php if ($imbalance2_theme_options['images_only'] == 0): ?>
<a href="<?php the_permalink(); ?>"><?php the_post_thumbnail('homepage-thumb', array('alt' => '', 'title' => '')) ?></a>
<?php endif ?>
<h1 style="padding-top:8px; padding-bottom:2px;"><a href="<?php the_permalink(); ?>"><?php the_title(); ?></a></h1>
<?php the_excerpt() ?>
<div class="categories" style="padding-top:5px;"><?php
$key = 'title';
$themeta = get_post_meta($post->ID, $key, TRUE);
if($themeta != '') {
echo "<strong>Job Title: </strong>";
echo $themeta;
}
?>
<br />
<?php
$key = 'location';
$themeta = get_post_meta($post->ID, $key, TRUE);
if($themeta != '') {
echo "<strong>Location: </strong>";
echo $themeta;
}
?>
</div>
<?php the_excerpt() ?>
<div class="posted"><?php imbalance2_posted_on() ?> <span class="main_separator">/</span>
<?php echo comments_popup_link(__('No comments', 'imbalance2'), __('One Comment', 'imbalance2'), __('% Comments', 'imbalance2')); ?>
</div>
</div>
</div>
</div>
</div>
<?php endwhile; ?>
</div>
<?php if ($wp_query->max_num_pages > 1) :
if ($imbalance2_theme_options['navigation'] == 0) : // Default ?>
<div class="fetch">
<?php next_posts_link(__('Load more posts', 'imbalance2')); ?>
</div>
<script type="text/javascript">
// Ajax-fetching "Load more posts"
$('.fetch a').live('click', function(e) {
e.preventDefault();
$(this).addClass('loading').text('Loading...');
$.ajax({
type: "GET",
url: $(this).attr('href') + '#boxes',
dataType: "html",
success: function(out) {
result = $(out).find('#boxes .box');
nextlink = $(out).find('.fetch a').attr('href');
$('#boxes').append(result).masonry('appended', result);
$('.fetch a').removeClass('loading').text('Load more posts');
if (nextlink != undefined) {
$('.fetch a').attr('href', nextlink);
} else {
$('.fetch').remove();
}
}
});
});
</script>
<?php elseif ($imbalance2_theme_options['navigation'] == 1) : // Infinite scroll ?>
<div class="infinitescroll">
<?php next_posts_link(__('Load more posts', 'imbalance2')); ?>
</div>
<script type="text/javascript">
// Infinite Scroll
var href = 'first';
$(document).ready(function() {
$('#boxes').infinitescroll({
navSelector : '.infinitescroll',
nextSelector : '.infinitescroll a',
itemSelector : '#boxes .box',
loadingImg : '<?php echo get_bloginfo('stylesheet_directory') ?>/images/loading.gif',
loadingText : 'Loading...',
donetext : 'No more pages to load.',
debug : false
}, function(arrayOfNewElems) {
$('#boxes').masonry('appended', $(arrayOfNewElems));
if (href != $('.infinitescroll a').attr('href'))
{
href = $('.infinitescroll a').attr('href');
}
});
});
</script>
<?php endif; ?>
<?php endif; ?>
感谢您的帮助, 亚当
答
我认为它的,因为你有两个<?php the_excerpt() ?>
里面一个循环,在54行和73
了看看那个尝试删除其中一个,但没有运气:( – adamhuxtable 2012-02-10 14:50:58
对不起,我错过了一个..总共有三个the_excerpt() – tinyhook 2012-02-10 19:29:06
你有在这里如果陈述''...从我对你的代码的理解中,你只需要其中的一个......我有点儿现在没有时间了,所以我无法给你的代码一个彻底的看,这意味着我可能是错误的以上的东西。 – tinyhook 2012-02-10 19:40:21