为什么这本书读起来更多,在PHP中不起作用?

时间:2017-12-02 作者:TheDose

只剩下“阅读更多”问题。

<?php
            while(have_posts()): the_post();

         echo \'<h2>\'.get_the_title().\'</h2>\';
        echo  get_the_post_thumbnail(get_the_ID(),\'medium\');
        the_excerpt();
        echo "<br>";
        <a class="button" href="<?php the_permalink(); ?>">Read More</a>
        echo "<hr>";
        endwhile;
        ?>

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

EDIT

基于你最后的担忧,我将如何做到这一点。

代码上剩下的唯一问题是,在PHP中调用一些HTML时没有“echo”。因此,我将所有这些拆分为单独的HTML标记,并在PHP中单独调用它们。

<?php while(have_posts()): the_post(); ?>

        <h2><?php the_title(); ?></h2>

        <figure class="thubmnail">
            <?php the_post_thumbnail(get_the_ID(), \'medium\'); ?>
        </figure>

        <p><?php the_excerpt(); ?></p>

        <br/>

        <a href="<?php the_permalink(); ?>" class="button">Read more</a>

        <hr/>

    <?php endwhile; ?>
你真的应该看看WordPress Codex,了解如何以及何时使用这些功能,因为你的问题还不清楚。

文档链接:https://codex.wordpress.org/Class_Reference/WP_Query#Usage

在PHP文件或模板文件中,您应该有这样的(循环)来显示get_the_title()the_permalink()或者,它将显示父页值。

<?php 
// the query
$the_query = new WP_Query( $args ); ?>

<?php if ( $the_query->have_posts() ) : ?>

    <!-- pagination here -->

    <!-- the loop -->
    <?php while ( $the_query->have_posts() ) : $the_query->the_post(); ?>
        <h2><?php the_title(); ?></h2>
        <a href="<?php the_permalink(); ?>">Read more</a>
    <?php endwhile; ?>
    <!-- end of the loop -->

    <!-- pagination here -->

    <?php wp_reset_postdata(); ?>

<?php else : ?>
    <p><?php esc_html_e( \'Sorry, no posts matched your criteria.\' ); ?></p>
<?php endif; ?>
至于你的第二期,the_title() 不需要在<?php echo ... ?>. 该函数将自动回显。https://codex.wordpress.org/Function_Reference/the_title

显示或返回当前帖子的未替换标题。此标记只能在循环内使用,若要获取循环外帖子的标题,请使用get\\u The\\u title。如果帖子是受保护的或私有的,则会在标题前加上“受保护的:”或“私有的:”字样

希望它能帮助你更清楚地理解这个概念。

如果不清楚,请更新您的问题。

结束