0

当用户未登录时,the_author 应该在第一页返回一个空字符串,但是当通过 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' => $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; ?>
4

1 回答 1

0

作者信息由 Wordpress 在帖子信息中提供。尝试对您的 query_posts 结果进行 var_dump,您应该找到作者姓名的存储位置,以便正确显示它。

你能展示你的循环模板吗?至少显示作者的部分。

于 2012-08-27T11:01:07.223 回答