Wordpress post Loop无法按预期工作

时间:2015-01-22 09:25:42

标签: php wordpress loops if-statement

我使用的主题使用博客页面在博客页面上显示其所有内容而不是摘录,然后当我点击帖子时我想要显示整个内容。

我使用以下代码:

$postId = get_the_ID();
        $ex = the_excerpt();

        if($postId == 19){

            echo $ex;


        }

        else{

            echo $content;

        }

博客页面位于post = 19

我希望只有摘录才会显示在博客页面上以及要在帖子页面上显示的内容。然而两者都表明。如果我在if语句中更改数字19也是无关紧要的。谁能看到我哪里错了?

编辑更改,屏幕截图:

enter image description here enter image description here

3 个答案:

答案 0 :(得分:1)

the_excerpt()等函数仅在循环内或调用函数the_post()后可用

您可能只想在index.php

中显示except
while (has_posts()) {
    the_post();

    the_excerpt();
}

在您的single.php中,您可能希望显示整个内容

if(has_posts()) {
    the_post();

    the_content();
}

答案 1 :(得分:1)

您需要在条件中使用the_excerpt();表示您要显示摘录的位置,但如果您想获取摘录值但不想直接显示它,则必须使用{{1}所以你需要改变

get_the_excerpt();

$ex = the_excerpt(); to $ex = get_the_excerpt();

的情况也是如此

希望它对你有所帮助。

答案 2 :(得分:0)

Use $postId = get_queried_object_id(); instead of $postId = get_the_ID();