WP - 显示特定页面的缩略图


WP - Show thumbnail of a specific page

尝试在WordPress主题的首页上包含特定页面。

整体 HTML 结构应类似于以下内容:

<div>
     <h1>Om</h1>
     <p>Content comes here</p>
</div>
<div style="background-image: url(...)">
</div>

目前,它成功回显页面的内容。

以下是该部分如何与 PHP 配合使用:

<div class="omtekst col-md-6 half-content-wrapper">
    <h1 class="semibold">Om</h1>
    <?php
        $my_id = 7;
        $post_id_7 = get_post($my_id);
        $content = $post_id_7->post_content;
        $content = apply_filters('the_content', $content);
        $content = str_replace(']]>', ']]>', $content);
        echo $content;
    ?>
</div>

如前所述,我想在此下方包含缩略图。这就是我遇到问题的地方。

但是,我已经开始使用 PHP 来展示我的想法。缩略图应$image或类似。

<div class="ombilde col-md-6" style="background-image: url('<?php echo $image; ?>')">

您有可行的解决方案吗?

编辑

我的自定义拇指不用于此图像:

add_action( 'after_setup_theme', 'mytheme_custom_thumbnail_size' );
function mytheme_custom_thumbnail_size(){
    add_image_size( 'frontpage_thumb', 500 ); // Unlimited height
}

已启用的帖子缩略图:

if ( function_exists( 'add_theme_support' ) ) { 
    add_theme_support( 'post-thumbnails' ); 
    add_theme_support( 'nav-menus' );
    add_theme_support( 'widgets' );
}

获取您可以使用的图像的网址

$image = wp_get_attachment_image_src( get_post_thumbnail_id([ID_HERE]), [IMAGE SIZE HERE] );

然后你可以使用

<div class="ombilde col-md-6" style="background-image: url('<?php echo $image[0]; ?>')">

要获取图像大小字符串,请查看"add_image_size"功能的主题

正如 PGK 所说,必须在函数中启用后缩略图,但我想你已经这样做

编辑:

[ID_HERE] 替换为帖子 ID

[图像大小在这里] 您可以使用"完整"进行测试

使用 wp_get_attachment_url($id) 检索所需帖子的 URL。

在您的示例中:

$my_id = 7;
            $post_id_7 = get_post($my_id);
            $my_thumb =  wp_get_attachment_url($my_id);
<div style="background-image: url('<?php echo $my_thumb; ?>')" class="omtekst col-md-6 half-content-wrapper">
        <h1 class="semibold">Om</h1>
    </div>
如果你想

获得帖子缩略图,你可以这样做:

if ( has_post_thumbnail( $post_id_7->ID ) ) {
    $image = get_the_post_thumbnail( $post_id_7->ID, $size, $args );
}

这将返回图像标记。您可以在此处找到更多信息 法典 - get_the_post_thumbnail

您的主题必须启用"缩略图后"支持。

这是将图像附加到帖子的最常用方法。

如果你在theLoop中,你可以使用the_post_thumbnail()功能,它直接打印缩略图:

<?php the_post_thumbnail( $size, $attr ); ?> 

法典 - the_post_thumbnail()

如果要打印图像作为背景,则必须将"大"作为$size。