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

如何在WordPress Single Post中隐藏精选图片

我想在帖子页面中隐藏精选图片, 但不在主页上隐藏。

我查看了有关此问题的其他帖子, 但它们对我没有帮助, 因此, 感谢你的帮助。

这是我的single.php

<div id="primary" class="full-width-page">
    <main id="main" class="site-main" role="main">

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

        <?php get_template_part( 'content', 'single' ); ?>

        <?php tesseract_post_nav(); ?>

        <?php
            // If comments are open or we have at least one comment, load up the comment template
            if ( comments_open() || get_comments_number() ) :
                comments_template();
            endif;
        ?>

    <?php endwhile; // end of the loop. ?>

    </main><!-- #main -->
</div><!-- #primary -->

#1


请写下你正在使用的主题。根据你写的内容, 你必须编辑content-single.php。搜索这样的行:

get_the_post_thumbnail( $post->ID, ... );

or

the_post_thumbnail();

并删除或评论。


#2


将此添加到你的functions.php(首选子主题)中, 就是这样。它适用于任何主题, 你无需触摸难看的HTML模板。

function wordpress_hide_feature_image( $html, $post_id, $post_image_id ) {
  return is_single() ? '' : $html;
}
// add the filter
add_filter( 'post_thumbnail_html', 'wordpress_hide_feature_image', 10, 3);

参考:https://helloacm.com/how-to-hide-feature-image-of-posts-in-wordpress/


#3


该代码在模板部分中。你将在名为” content-single”的文件中找到特征图像功能。

有两种禁用方法:

1.查找代码。

删除或注释单个内容模板文件中的功能:

<div class="thumbnail">
  <?php
    // Comment out this function:
    echo get_the_post_thumbnail( $post_id, $size, $attr );
    // or:
    the_post_thumbnail();
    // Or you can remove this <div> entirely
  ?> 
</div>

2. CSS方法。

找到图像div的适当类, 然后在样式表中添加无显示条件。

.thumbnail{display:none}

如果你可以共享网站网址, 我可以回答得更清楚。


#4


如何从Tesseract Theme单篇文章中删除特色图片背景:

1.-首先从原始的content-single.php文件中复制一份。

2.-用纯文本编辑器编辑content-single.php。

3.-如果原始文件是这样的:

<?php
/**
* @package Tesseract
*/
?>

<article id="post-<?php the_ID(); ?>" <?php post_class(); ?>>

  <?php if ( has_post_thumbnail() && 'post' == get_post_type() ) {
    $thumbnail = wp_get_attachment_image_src( get_post_thumbnail_id( $post->ID ), 'tesseract-large' ); ?>
    <div class="entry-background" style="background-image: url(<?php echo esc_url( $thumbnail[0] ); ?>)">
        <header class="entry-header">
            <?php the_title( '<h1 class="entry-title">', '</h1>' ); ?>
        </header><!-- .entry-header -->
    </div><!-- .entry-background -->

  <?php } else { ?>
    <header class="entry-header">
        <?php the_title( '<h1 class="entry-title">', '</h1>' ); ?>
    </header><!-- .entry-header -->
  <?php } ?>

  <div class="entry-content">
    <div class="entry-meta">
        <?php tesseract_posted_on(); ?>
    </div><!-- .entry-meta -->
    <?php the_content(); ?>
    <?php
        wp_link_pages( array(
            'before' => '<div class="page-links">' . __( 'Pages:', 'tesseract' ), 'after'  => '</div>', ) );
    ?>
  </div><!-- .entry-content -->

</article><!-- #post-## -->

(来源:github.com/Conutant/TESSERACT/blob/Master_Branch/content-single.php)

4.-要删除特色图像背景, 请将其更改为:

<?php
/**
* @package Tesseract
*/
?>

<article id="post-<?php the_ID(); ?>" <?php post_class(); ?>>

  <header class="entry-header">
        <?php the_title( '<h1 class="entry-title">', '</h1>' ); ?>
  </header><!-- .entry-header -->

  <div class="entry-content">
    <div class="entry-meta">
        <?php tesseract_posted_on(); ?>
    </div><!-- .entry-meta -->
    <?php the_content(); ?>
    <?php
        wp_link_pages( array(
            'before' => '<div class="page-links">' . __( 'Pages:', 'tesseract' ), 'after'  => '</div>', ) );
    ?>
  </div><!-- .entry-content -->

</article><!-- #post-## -->

5.-请记住, 将主题更新为新版本时, 所有更改都将被覆盖。避免这种情况的一个不错的选择是创建子主题, 这是修改现有主题的推荐方法。可以在以下位置找到更多信息:https://codex.wordpress.org/Child_Themes

6.-测试它, 让我知道你是否有任何问题。

问候。


#5


你的代码中只有一行

<?php get_template_part( 'content', 'single' ); ?>

这意味着它将调用你当前主题的content.php文件。转到该文件并注释以下代码

<?php if ( has_post_thumbnail() && ! post_password_required() && ! is_attachment() ) : ?>       <div class="entry-thumbnail">           <?php the_post_thumbnail(); ?>      </div>      <?php endif; ?>

但是请注意, 在调用content.php文件时, 它会删除所有地方的缩略图, 因此更好的主意是创建自定义single.php文件。为此, 你需要复制成single.php文件, 并用你的帖子名称重命名。例如, 如果你使用post来添加内容, 然后使用single-post.php重命名, 或者如果你使用自定义帖子类型(例如news), 则使用single-news.php重命名。

之后, 打开此文件并删除此代码

<?php get_template_part( 'content', 'single' ); ?>

从文件转到content.php文件, 然后复制要显示的所需代码并将其粘贴到新文件中。

赞(0)
未经允许不得转载:srcmini » 如何在WordPress Single Post中隐藏精选图片

评论 抢沙发

评论前必须登录!