使用 the_post_thumbnail() 正确显示缩略图
Properly displaying thumbnails with the_post_thumbnail()
我在 functions.php 中创建了一个名为 bateau 的自定义 post 类型。我还创建了一个页面,其中显示了属于 bateau 自定义 post 类型的所有 post,显示了一些最重要的字段。最后,当我单击其中一个 post 时,link 会将我转到相关的自定义 post 页面,即特定类型的船。
自定义 post bateau 有自己的自定义字段、缩略图和自定义分类法。
当我在特定船只的页面上时,我不仅要检索和显示最重要的内容,还要检索和显示其所有自定义字段、缩略图和分类法。
所以,在functions.php中,我写了这个过滤器:
add_filter('the_content','add_text');
function add_text($text) {
global $post;
$text = "";
if($post->post_type == 'bateau') {
$text.= "<h1 class=\"bateau-entry-title\">".get_post_meta( $post->ID, 'bateau_nom', true )."</h1>";
return $text;
}
}
它工作正常,前提是我不在关闭和打开 PHP 标签内写纯 HTML 文本,也就是说,只有当我将所有 HTML 包装在一个PHP 文本变量。如果我不这样做,内容也会显示在 header 的开头,不是一次,而是两次。很奇怪,不是吗?
如果我添加这一行:
$text.= "<img class=\"thumb\" src=\"the_post_thumbnail();
缩略图在 "article" 中正确显示...但是,你猜怎么着,也在 header 的开头,不是一次,而是两次!!!我就是找不到为什么缩略图会这样。有人可以帮忙吗?
如果您使用 the_post_thumbnail()
,我认为您不需要 img
标签。
尝试做类似的事情:
if ( has_post_thumbnail() )
the_post_thumbnail();
在 Wordpress 中,您调用的页面:
when I'm on the page of a particular boat
被称为single
。而不是使用
在 the_content
上放置过滤器
add_filter('the_content','add_text');
你最好在循环中添加你想要的任何内容。为此,您可以在当前主题的根目录中创建一个名为 single-bateau.php
的文件(这是一个协议,因此您需要将其命名为完全相同),您可能会在其中循环:
if(have_posts()){
while(have_posts()){
the_post();
the_title();
if( has_post_thumbnail() ){
the_post_thumbnail( $thumb_size );
}
the_taxonomies();
the_category();
the_tags();
}
}
我在 functions.php 中创建了一个名为 bateau 的自定义 post 类型。我还创建了一个页面,其中显示了属于 bateau 自定义 post 类型的所有 post,显示了一些最重要的字段。最后,当我单击其中一个 post 时,link 会将我转到相关的自定义 post 页面,即特定类型的船。
自定义 post bateau 有自己的自定义字段、缩略图和自定义分类法。
当我在特定船只的页面上时,我不仅要检索和显示最重要的内容,还要检索和显示其所有自定义字段、缩略图和分类法。
所以,在functions.php中,我写了这个过滤器:
add_filter('the_content','add_text');
function add_text($text) {
global $post;
$text = "";
if($post->post_type == 'bateau') {
$text.= "<h1 class=\"bateau-entry-title\">".get_post_meta( $post->ID, 'bateau_nom', true )."</h1>";
return $text;
}
}
它工作正常,前提是我不在关闭和打开 PHP 标签内写纯 HTML 文本,也就是说,只有当我将所有 HTML 包装在一个PHP 文本变量。如果我不这样做,内容也会显示在 header 的开头,不是一次,而是两次。很奇怪,不是吗?
如果我添加这一行:
$text.= "<img class=\"thumb\" src=\"the_post_thumbnail();
缩略图在 "article" 中正确显示...但是,你猜怎么着,也在 header 的开头,不是一次,而是两次!!!我就是找不到为什么缩略图会这样。有人可以帮忙吗?
如果您使用 the_post_thumbnail()
,我认为您不需要 img
标签。
尝试做类似的事情:
if ( has_post_thumbnail() )
the_post_thumbnail();
在 Wordpress 中,您调用的页面:
when I'm on the page of a particular boat
被称为single
。而不是使用
the_content
上放置过滤器
add_filter('the_content','add_text');
你最好在循环中添加你想要的任何内容。为此,您可以在当前主题的根目录中创建一个名为 single-bateau.php
的文件(这是一个协议,因此您需要将其命名为完全相同),您可能会在其中循环:
if(have_posts()){
while(have_posts()){
the_post();
the_title();
if( has_post_thumbnail() ){
the_post_thumbnail( $thumb_size );
}
the_taxonomies();
the_category();
the_tags();
}
}