Wordpress 获取页面中的所有p标记

Wordpress 获取页面中的所有p标记,wordpress,wordpress-theming,Wordpress,Wordpress Theming,我已经写了一些短代码,可以把最新的文章摘录放在页面的任何地方,但我有一个问题,我已经尝试解决了好几天了!我也找不到为什么get_the_extract()会删除页面其他部分文本周围的所有p标记。当我从代码中删除get_the_extract()时,其他短代码中的其他文本没有问题,但当我把I放回去时,问题又回来了!请看一下代码,告诉我我做错了什么或可以改进什么!谢谢 <?php function show_posts() { global $post; $html =

我已经写了一些短代码,可以把最新的文章摘录放在页面的任何地方,但我有一个问题,我已经尝试解决了好几天了!我也找不到为什么
get_the_extract()
会删除页面其他部分文本周围的所有p标记。当我从代码中删除
get_the_extract()
时,其他短代码中的其他文本没有问题,但当我把I放回去时,问题又回来了!请看一下代码,告诉我我做错了什么或可以改进什么!谢谢

<?php

function show_posts() { 
    global $post;

    $html = "";
    $extra_css = "";
    $latestPosts = new WP_Query('cat=5&posts_per_page=1');

    if($latestPosts->have_posts()): 
        while($latestPosts->have_posts()): $latestPosts->the_post();

        if (has_post_thumbnail()) {     
            $extra_css = "has-thumbnail";
        }

        $html = "<div class='wide'><article class='post {$extra_css}'>";
        $html .= "<div class='post-thumbnail'>";
        $html .= "<a href='" . get_the_permalink() . "'>" . get_the_post_thumbnail(null,'thumbnail') . "</a>";  
        $html .= "<div class='post-thumbnail-date'><h4>" . get_the_time('Y-m-d') . " </h4></div>";
        $html .= "</div><!-- end post-thumbnail -->";
        $html .= "<h3><a href='" . get_the_permalink() . "'>" . get_the_title() . "</a></h3>";
        $html .= "<p class='post-info'>" . get_the_time('Y-m-d') . " | Av " . get_the_author() . "</p>";
        $html .= "<p class='post-text'>" . get_the_excerpt() . "</p><p><a href='" . get_the_permalink() . "'> Läs mer...</a></p>"; 
        $html .= "</article></div>";

        endwhile;
    else:
        // Error message
    endif;

    wp_reset_postdata();
    return $html;
}
add_shortcode('blogg','show_posts');
get_节选()
正在删除其他位置的
标记,因为您正在使用
wpcautop
,并且正在将
get_节选()
嵌套在段落中。这意味着您将得到嵌套的
标记,这是无效的HTML,并导致解析器混淆

相反,您应该在
(或其他块级元素)中嵌套
获取\u摘录()

$html.=''。获取摘录()。“

”;
get_摘录()
正在删除其他位置的
标记,因为您正在使用
wpautop
,并将
get_摘录()
嵌套在段落中。这意味着您将得到嵌套的
标记,这是无效的HTML,并导致解析器混淆

相反,您应该在
(或其他块级元素)中嵌套
获取\u摘录()

$html.=''。获取摘录()。“

”;
谢谢,但是没有用!我复制/粘贴了你的代码行,我认为问题最终会得到解决,但没有:(还有其他想法吗?我的p标签真的嵌套了吗?对我来说,它们似乎是在彼此之后开始和结束的?谢谢,但没有帮助!我复制/粘贴了你的代码行,我认为问题最终会得到解决,但没有:(还有其他想法吗?我的p标签真的嵌套了吗!?对我来说,它们好像是在彼此之后开始和结束的?
$html .= "<div class='post-text'>" . get_the_excerpt() . "</div><p><a href='" . get_the_permalink() . "'> Läs mer...</a></p>";