当用户未登录时,是否有理由在第一页上返回一个空字符串,但是当通过AJAX加载更多帖子时,返回作者名称的原因是什么? 两种情况下的循环都是相同的。 请帮助我解决这个问题,因为我很无能为力,我需要尽快修复以启动我的网站。
这是整个index.php:
<?php
get_header();
get_sidebar();
?>
<!-- MAIN DIV -->
<div id='content_and_floater'>
<?php get_template_part('social_floater'); ?>
<div id='content'>
<?php get_template_part('loop'); ?>
</div>
</div>
<?php get_template_part('loader'); ?>
<!-- MAIN DIV -->
<?php
get_footer();
?>
以下是infinitePaginator如何在functions.php中调用循环(当向下滚动到底部或点击加载器链接时调用该函数):
function wp_infinitepaginate(){
$loopFile = $_POST['loop_file'];
$paged = $_POST['page_no'];
$posts_per_page = get_option('posts_per_page');
# Load the posts
query_posts(array('paged' => $paged ));
get_template_part( $loopFile );
exit;
}
您可以在test.nowillnoskill.net上看到该行为。 在单个帖子中它也不起作用。我的猜测是query_posts(array('paged'=&gt; $ paged));在查询中改变了一些东西,但我不知道它是什么。 我试图插入setup_postdata($ post);就在loop.php中的the_post()之后,因为我发现它适用于某人,但它不适合我。
我也尝试插入
query_posts(array('paged' => 1 ));
在index.php中调用循环文件之前,但没有显示任何帖子。
这是我的loop.php:
<?php while ( have_posts() ) : the_post() ?>
<!-- POST1 -->
<article class='post'>
<header class='post_header'>
<?php
global $current_user;
$current_user = wp_get_current_user();
if (!empty($current_user)) {
$pid = get_the_id();
$uid = $current_user->ID;
$title = (is_favorite($pid, $uid)) ?
'Remove from favorites' :
'Add to favorites';
$trans = (is_favorite($pid, $uid)) ?
'' :
' transparent';
?>
<div>
<h2>
<a href="<?php the_permalink(); ?>">
<?php the_title(); ?>
</a>
</h2>
<?php if (is_user_logged_in()) { ?>
<a title='<?php echo $title ?>' class='post_favorite' href='#' alt='fpid=<?php echo $pid ?>uid=<?php echo $uid ?>'>
<span class='symbol<?php echo $trans ?>'>R</span>
</a>
<?php } ?>
</div>
<div class='post_header_div'>
<strong class='post_category'>
<?php echo get_the_category_list(', '); ?>
</strong>
<strong class='post_author'>
<span class='symbol'>U</span>
<?php the_author(); ?>
</strong>
</div>
<div>
<span class='post_author'>
<?php edit_post_link('[edit]'); ?>
</span>
</div>
<?php } ?>
</header>
<figure class='post_image'>
<!--<img src='design/img/flashkick.png' alt='logo' />-->
<?php the_post_thumbnail(); ?>
</figure>
<div class='post_perex'>
<?php the_content('Read more'); ?>
</div>
<div class='space'></div>
<footer class='post_footer'>
<div class='post_footer_top'>
<div class='post_tags'>
<?php the_tags('', '', ''); ?>
</div>
<div class='post_time'>
<time datetime="<?php the_time('Y-m-d'); ?>" pubdate>
<span class='symbol'>P </span>
<?php relative_post_the_date(); ?>
</time>
</div>
</div>
</footer>
<div class='space'></div>
</article>
<?php endwhile; ?>
答案 0 :(得分:0)
作者信息由Wordpress在帖子信息中给出。 尝试对query_posts结果执行var_dump,您应该找到存储作者姓名的位置,以便正确显示它。
你能否展示你的循环模板?至少显示作者的部分。