我想在帖子页面中隐藏精选图片, 但不在主页上隐藏。
我查看了有关此问题的其他帖子, 但它们对我没有帮助, 因此, 感谢你的帮助。
这是我的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文件, 然后复制要显示的所需代码并将其粘贴到新文件中。
评论前必须登录!
注册