获取特定页面的内容(按ID)


14

我制作了以下首页模板:

在此处输入图片说明

代替那些大的Lorem Ipsum块,我需要显示特定页面的“节选”以填充该框(一定数量的字符)。

如何获取String格式的页面内容,以便可以将其回显并缩小为一定数量的字符?

Answers:


22
<?php

// would echo post 7's content up until the <!--more--> tag
$post_7 = get_post(7); 
$excerpt = $post_7->post_excerpt;
echo $excerpt;

// would get post 12's entire content after which you
// can manipulate it with your own trimming preferences
$post_12 = get_post(12); 
$trim_me = $post_12->post_content;
my_trim_function( $trim_me );

?>

21

干得好 !

<?php
$my_id = 5369;
$post_id_5369 = get_post($my_id);
$content = $post_id_5369->post_content;
$content = apply_filters('the_content', $content);
$content = str_replace(']]>', ']]>', $content);
echo $content;
?>

4
请说明代码的作用以及它如何回答问题。一些用户可能会在不加解释的情况下不理解该代码。
cybmeta

我真的很喜欢您添加the_content过滤器的方式。+1。
Mohammad Mursaleen '16

作品漂亮!
查尔斯·泽维尔

2

您可以使用此代码,将页码更改为page_id = 19可以正常工作:

<?php $the_query = new WP_Query( 'page_id=19' ); ?>

<?php while ($the_query -> have_posts()) : $the_query -> the_post();  ?>

                       <?php the_excerpt(); ?>


     <?php endwhile;?>

1
欢迎来到这个网站。看来这是您的第一个答案。对于您的答案为何以及如何解决问题的解释总是很好的。
cybmeta


0

如果您处于循环中,请执行以下操作:

<?php
$my_excerpt = get_the_excerpt();
if ( $my_excerpt != '' ) {
    // Some string manipulation performed
}
echo $my_excerpt; // Outputs the processed value to the page

或者,如果您有ID,则获取帖子,然后起诉post_excerpt成员var

例如

$post = get_post( $post_id );
echo $post->post_excerpt;

0

试试此代码,只需更改您的 page_id

<?php $my_query = new WP_Query('page_id=20');
while ($my_query->have_posts()) : $my_query->the_post();
$do_not_duplicate = $post->ID;?>
 <h3><?php the_title(); ?></h3>
    <div class="text">

        <?php echo wp_trim_words( get_the_content(), 15, '...' ); ?>
 <a href="<?php echo get_page_link(); ?>" class="read-more">Read More</a>
    </div>

 <?php endwhile; ?>

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.