如何删除带有_Content()的帖子中显示的图片?

时间:2014-09-22 作者:DᴀʀᴛʜVᴀᴅᴇʀ

试图了解更多关于创建自己的主题和不使用任何插件的信息,我希望能够在帖子中显示所有图像,不包括我的single-foobar.php 文件,我可以使用:

<?php if ( have_posts() ) : while ( have_posts() ) : the_post();    

$thumb_ID = get_post_thumbnail_id( $post->ID );
 $args = array(
   \'post_type\' => \'attachment\',
   \'numberposts\' => -1,
   \'post_status\' => null,
   \'post_parent\' => $post->ID,
   \'exclude\' => $thumb_ID
  );

$attachments = get_posts( $args );
 if ( $attachments ) {
    foreach ( $attachments as $attachment ) {
       echo \'<div class="portproject">\';
       $image_res = wp_get_attachment_image( $attachment->ID, \' img-responsive\' );
       echo $image_res;
       echo \'</div>\';
      }
 }
 else { ?>
    <span> No pictures loaded at this time</span>
 <?php } endwhile; endif; ?>
然而,当我应用静态HTML并尝试调用get_the_content() 使用:

<?php 
$content = get_the_content();
$content = preg_replace("/<img[^>]+\\>/i", "(image) ", $content);          
$content = apply_filters(\'the_content\', $content);
$content = str_replace(\']]>\', \']]>\', $content);
echo $content;
?>
它会删除图像,但会留下(image) 在带有空格的帖子中,然后显示剩余的文本。我确实找到了一个类似的question 但它建议使用get_the_content() 但这就剥夺了这篇文章的所有风格。所以我的问题是如何从the_content()? 我确实找到了“Getting the_content WordPress Text Only (Strip Out Image Tags)“从我的搜索中,但仍使用get_the_content() 方法

3 个回复
最合适的回答,由SO网友:Bernie 整理而成

尝试删除(图像),如下所示:

<?php 
$content = get_the_content();
$content = preg_replace("/<img[^>]+\\>/i", " ", $content);          
$content = apply_filters(\'the_content\', $content);
$content = str_replace(\']]>\', \']]>\', $content);
echo $content;
?>

SO网友:derekshirk

我喜欢使用的方法比前面的答案略短。

<php $myExcerpt = wp_trim_words( get_the_content(), 20, \'\' ) ; 
echo $myExcerpt ; ?>
WordPress功能wp_trim_words() 仅返回文本(无图像)。

wp_trim_words ( string $text, int $num_words = 55, string $more = null )

SO网友:6clicks - WP2

几乎和derekshrink直接为WordPress开发人员做的一样。

<?php echo wp_trim_words( get_the_content(), 40, \'...\' ); ?>

您可以更改要显示的字数

结束

相关推荐

Why aren't my posts showing?

我正在为我的投资组合网站创建一个主题。经过一段时间的反复试验和研究,我陷入了困境。这将是一个内容非常少的网站,因此我决定创建一个单页网站。我正在使用get_pages($args); 在我的首页中显示每页。php文件。这很有效。现在我陷入了困境。。。我想使用一个页面来显示我的博客帖子,它将包含在我的一个页面流中,并与其他页面一样在我的WP\\U查询中调用。到目前为止,我已经尝试了我能找到的记录最多的方法;这将更改用于在“设置”>“阅读”中显示帖子的页面。为了确认我有一个静态主页(FrontPage.