1. ホーム
  2. php

[解決済み] サムネイルサポートが有効な場合、the_post_thumbnail_url() が致命的なエラーになる。

2022-02-18 22:05:53

質問

twentythirteenの子テーマで作業しています。 20thirteenはサムネイルに対応しています。

add_theme_support( 'post-thumbnails' );

しかし、私が使用すると

the_post_thumbnail_url()

致命的なエラーが発生します。 googleの回答には全て以下のように書かれています。 add_theme_support( 'post-thumbnails')です。 は親テーマのfunctions.phpになければなりません。まあ、この場合はそこにあるのですが、とにかく致命的なエラーが発生するのです。

子functions.phpにsupportの文章を重複して入れたりもしましたが(念のため)、それでもこのままでは困ってしまいます。

そのコードです。

        query_posts('category_name=curso&showposts=3');
        ?>
        <?php if (have_posts()) : ?>
        <h2>Cursos</h2>
        <?php while ( have_posts() ) : the_post(); ?>
            <div class = "ficha curso">
        <?php
                if ( has_post_thumbnail() && ! post_password_required() ) : ?>
                    <div class="ficha-thumbnail" style = "background: url('<?php the_post_thumbnail_url('large'); ?>') no-repeat; background-size: 300px auto"></div>
                    <?php endif; ?>

                    <h3 class="ficha-title"><?php the_title(); ?></h3>


                <div class="ficha-resumen">
                    <?php the_excerpt(); ?>
                </div><!-- .entry-content -->
            </div>
        <?php endwhile; endif;

解決方法は?

このロジックを試してみてください。

        <?php
            if ( has_post_thumbnail() && ! post_password_required() ) : 
                $imgURL = wp_get_attachment_url( get_post_thumbnail_id(get_the_ID()) );
        ?>
                <div class="ficha-thumbnail" style = "background: url('<?php echo $imgURL; ?>') no-repeat; background-size: 300px auto"></div>
                <?php endif; ?>

これでうまくいくといいのですが... ;-)