个性化阅读
专注于IT技术分析

在WordPress中获取第一段内容

我遇到了第一个问题

形成the_excerpt();

该功能正常工作, 但仅适用于第一篇文章。我在functions.php中添加了

function get_first_paragraph(){
global $post;

$str = wpautop( get_the_content() );
$str = substr( $str, 0, strpos( $str, '</p>' ) + 4 );
$str = strip_tags($str, '<a><strong><em>');
return '<p>' . $str . '</p>';
}

我在The Loop <?php echo内部的index.php中称呼此功能。echo get_first_paragraph(); ?>

我不知道为什么它只在第一篇文章中提到…


#1


你可以将此代码放在主题的function.php文件中,

获取第一段

function awesome_excerpt($text, $raw_excerpt) {
    if( ! $raw_excerpt ) {
        $content = apply_filters( 'the_content', get_the_content() );
        $text = substr( $content, 0, strpos( $content, '</p>' ) + 4 );
    }    
    return $text;
}
add_filter( 'wp_trim_excerpt', 'awesome_excerpt', 10, 2 );

有关更多信息, 你可以点击参考链接WORDPRESS THE_EXCERPT仅显示第一段


#2


该代码在古腾堡时代对我不起作用。因此, 我使用了部分代码, 并进行了一些搜索并提出了此解决方案。希望能帮助到你。

function get_paragraph_content($paragraph_number){
    global $post;
    $i = 0;
    $paragraph = '';
    if ( has_blocks( $post->post_content ) ) {
        $blocks = parse_blocks( $post->post_content );
        foreach( $blocks as $block ) {
            if( 'core/paragraph' === $block['blockName']){
                $paragraph = render_block($block);                
                if (++$i == $paragraph_number) break;
            }
        }
        $paragraph = substr( $paragraph, 0, strpos( $paragraph, '</p>' ) + 4 );
        $paragraph = strip_tags($paragraph, '<a><strong><em>');        
    }
    return $paragraph;
}
赞(0)
未经允许不得转载:srcmini » 在WordPress中获取第一段内容

评论 抢沙发

评论前必须登录!