Wordpress - 自定义帖子存档页面上的特色图像

时间:2013-11-07 14:16:13

标签: wordpress custom-post-type

我创建了一个名为Products的自定义帖子。

register_post_type( 'products',
    array(
        'labels' => array(
            'name' => __( 'Products' ),
            'singular_name' => __( 'Product' )
        ),
    'public' => true,
    'has_archive' => true,
    'supports' => array( 'title', 'editor', 'thumbnail' )
);

我还创建了一个名为 archive-products.php 的php文件,并将其作为模板。

在Wordpress中,我创建了一个名为产品的页面,并选择了产品模板。

在该静态页面上(使用存档模板)我已将图像上传到“特色图像”面板。

在我的标题中,我有代码:

echo get_the_post_thumbnail();

但是这回显了列表中最后一个自定义帖子的精选图片(所有产品帖子也都有精选图片),而不是静态/归档页面的精选图片,这是我想要的是。这有可能实现吗?

谢谢!

1 个答案:

答案 0 :(得分:2)

我做了同样的事情并且遇到了解决我问题的以下答案:https://wordpress.stackexchange.com/a/175228

  1. 将自定义帖子类型存档模板另存为页面。

    例如,page-products.php

  2. 在本地备份并从服务器中删除自定义帖子类型存档模板。

  3. 使用the_post_thumbnail()显示图片,将其放在带有get_the_post_thumbnail()的变量中,或者将其作为背景图片并将页面标题覆盖在其上:

    $bg = wp_get_attachment_image_src( get_post_thumbnail_id( $page->ID ), 'full' ); if( is_page('products') ) : ?> <div style="background: url('<?php echo $bg[0]; ?>') repeat center center #fbfbfb; background-size:cover;"> <?php the_title( '<h1 class="page-title">', '</h1>' ); ?> </div> <?php endif; ?>

  4. 保存永久链接并刷新页面。

  5. 这对我有用。希望它对某人有帮助。 :)