Wordpress永久链接没有链接到content.php

时间:2017-07-04 01:49:13

标签: php html wordpress

我正在从头开发一个Wordpress自定义主题。我已经设法在index.php中使用自定义网格显示。每个帖子都会显示一个图片,其中帖子的标题和类别为副标题。这是index.php代码:

<?php get_header(); ?>

<div class="container-fluid bg-3 text-center Site-content" style="padding:60px; padding-top:100px;">
    <?php
    $counter = 1; //start counter

    $grids = 2; //Grids per row

    query_posts($query_string . '&caller_get_posts=1&posts_per_page=12');


    if (have_posts()) : while (have_posts()) : the_post();
            ?>
            <?php
//Show the left hand side column
            if ($counter == 1) :
                ?>   
                <div class="col-sm-4">
                    <a href="<?php the_permalink(); ?>" title="<?php the_title_attribute(); ?>">
                        <img src="<?php the_post_thumbnail_url(); ?>" class="img-responsive" style="width:100%;" alt=""></a>
                    <strong><?php the_title(); ?></strong>
                     <?php
                     foreach ((get_the_category()) as $category) {
                         echo "<h6>".$category->category_nicename. "</h6>";   
                     }
                     ?>
                </div>    
                <?php
//Show the right hand side column
            elseif ($counter == $grids) :
                ?>
                <div class="col-sm-4">
                    <a href="<?php the_permalink(); ?>" title="<?php the_title_attribute(); ?>">
                        <img src="<?php the_post_thumbnail_url(); ?>" class="img-responsive" style="width:100%;" alt=""></a>
                    <strong><?php the_title(); ?></strong>
                     <?php
                     // heres just the name and permalink:
                     foreach ((get_the_category()) as $category) {
                         echo "<h6>".$category->category_nicename. "</h6>";   
                     }
                     ?>
                </div>   
                <?php
                $counter = 0;
            endif;
            ?>
            <?php
            $counter++;
        endwhile;
    endif;
    ?>
</div>
<?php get_footer(); ?>

帖子的缩略图包含指向帖子永久链接的链接,该链接应链接到content.php。这是content.php:

<div class="container" style="padding:100px;">
	<strong><?php the_title(); ?></strong>
        <?php
        foreach ((get_the_category()) as $category) {
            echo "<h5>" . $category->category_nicename . "</h5>";
        }
        ?>
        <h5> / <?php the_date(); ?> </h5>
        <h5> <?php the_content(); ?> </h5>
   </div>

问题是,当我点击index.php缩略图时,它会链接到自身的较小版本,而不是content.php页面。我的猜测是我需要告诉固定链接去哪里,但我真的找不到这个配置的位置。

谢谢!

1 个答案:

答案 0 :(得分:1)

在WordPress中,the_permalink()get_permalink()会返回帖子或页面的单页网址。这是一个WordPress template hierarchy,单个帖子页面将加载single.php文件。

你有两个选择,

1)将您的代码从content.php复制到single.php,您就可以开始了。当然,您需要包含get_header()get_footer()才能正确加载页面。

2)在循环内的single.php中,您可以包含content.php作为模板部分。以下内容位于single.php,替换循环。

while ( have_posts() ) :
    the_post();
    get_template_part( 'content' );
endwhile;

此外,在上面的代码中,我假设您的content.php位于主题目录根目录中。