Làm cách nào để lặp lại the_excerpt mà không có trình bao bọc thẻ P?


10

Trong đoạn mã dưới đây, tôi cố gắng viết the_excerpt để viết mà không có thẻ. Tuy nhiên, định dạng nguồn cho thấy the_excerpt luôn được bọc trong các thẻ P. Làm thế nào tôi có thể kéo đoạn trích mà không có thẻ?

foreach($myrecentposts as  $idxrecent=>$post) 
{ ?>
<li class="page_item">
    <a href="<?php the_permalink(); ?>"><?php the_title(); ?></a>
    <?php echo strip_tags(substr( the_excerpt(), 0, 75 ))."..." ?>
</li><?php }    
echo "</ul>
</div>";}

Câu trả lời:


12

trong mã của bạn ở trên sử dụng get_the_excerpt()thay vì the_excerpt(), vì mã cuối cùng sẽ xuất đoạn trích ra màn hình và không chuyển nó sang các chức năng khác của bạn ...


7

Điều gì về việc loại bỏ wpautopbộ lọc trước danh sách của bạn?

remove_filter( 'the_excerpt', 'wpautop' );

(Đảm bảo thêm nó trở lại sau đó, để không làm rối định dạng khác ...)


Đây là câu trả lời đúng và sẽ loại bỏ cụ thể định dạng trên trang cụ thể mà bạn đang sử dụng để xuất nội dung.
Charles

0

Tôi đã thử các câu trả lời trên nhưng không hiệu quả với tôi.

Tôi đã thử sử dụng the_excerpt nhưng không hiển thị bất kỳ nội dung nào nên tôi đã sử dụng bên dưới và nó hoạt động hoàn hảo

// $search_text = the_excerpt();
$search_text = get_the_excerpt();

// Strip the <p> tag by replacing it empty string
$tags = array("<p>", "</p>");
$search_content = str_replace($tags, "", $search_text);

// Echo the content

echo $search_content;

Tôi hy vọng điều này cũng mang lại nhiều ánh sáng hơn cho người khác.

Chúc mừng


-1

Dưới đây đã thực hiện thủ thuật sử dụng plugin ACF:

<p>
    <?php
        $summary = get_field('introductory_text');
        echo strip_tags(substr($summary, 0, 520));
    ?>
    <a href="<?php the_permalink(); ?>"> ...read more</a>
</p>
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.