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

时间:2016-01-14 15:13:15

标签: php wordpress

尝试在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' );
}

3 个答案:

答案 0 :(得分:1)

If you want to get post thumbnail, you can make this like that:

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

This returns image tag. You can find more info here Codex - get_the_post_thumbnail

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

这是将图片附加到帖子的最简便方法。

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

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

Codex - the_post_thumbnail()

如果您想将图片打印为背景,则必须将“大”作为$ size。

答案 1 :(得分:1)

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

在你的例子中:

$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>

答案 2 :(得分:1)

获取可以使用的图像网址

$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

[IMAGE SIZE HERE]你可以用“完整”来测试这个