0

ローカルホストにインストールされたワードプレスを使用してサイトを構築しています。

何らかの理由で、post.php ページに投稿のサムネイル (注目の画像) が表示されません。画像の URL を正しく見つけられない timthumb.php に問題があることを確認しました。オンラインで何時間も検索し、いくつかの解決策を試しましたが、何も機能していないようです.

基本的な問題は、私の blog.php ファイルの次の行にあると思います。

<?php
if ( has_post_thumbnail() ) { ?>
    <a href="<?php the_permalink() ?>"><img class="postimg" src="<?php bloginfo('stylesheet_directory'); ?>/timthumb.php?src=<?php get_image_url(); ?>&amp;h=200&amp;w=470&amp;zc=1" alt=""/></a>
<?php }

else { ?>
    <a href="<?php the_permalink() ?>"><img class="postimg" src="<?php bloginfo('template_directory'); ?>/images/dummy.png" alt="" /></a>
<?php } ?>

私の functions.php スクリプトは、次のように get_image_url を定義します。

function get_image_url(){
    $image_id = get_post_thumbnail_id();
    $image_url = wp_get_attachment_image_src($image_id,'large');
    $image_url = $image_url[0];
    echo $image_url;
    }   

サイトでは、dummy.png 画像 (壊れた画像) が返されます。画像を右クリックして新しいタブで開くと、次のエラーが表示されます。

「Timthumb エラーが発生しました - 指定した内部イメージが見つかりません」

次に、クエリ文字列を示します。

Query String : src=http://localhost/wordpress/frouzeh/wp-content/uploads/sites/3/2013/04/PurpleNecklace.png&h=200&w=470&zc=1

ただし、実際に URL を使用して画像にアクセスすると、次のようになります。

http://localhost/wordpress/frouzeh/wp-content/uploads/sites/3/2013/04/PurpleNecklace.png

画像は正常に表示されます

  • ローカル ホストを使用して Windows で開発しているため、フォルダーのアクセス許可を制御することはできません
  • timthumb 2.8.11 の最新バージョンを使用する
  • ファイルからサイズ変更パラメータ &h=200&w=470&zc=1 を削除しようとしましたが、それでも同じエラーが発生します
  • 有効にしました (いくつかのソリューションが timthumb.php ファイルで提案されているように):

    define ('ALLOW_ALL_EXTERNAL_SITES', TRUE);

  • 他のソリューションが示唆するように、サイト名にチルダはありません。

私はここで本当に途方に暮れています。助けていただければ幸いです-単純な構文エラーか何かのようですが、見つかりません。

4

1 に答える 1

1

これを何時間も修正しようとした後、WordPress サイトをライブ サーバー (Linux) に移動することにしました。その後、Cache フォルダーへのアクセス許可を 755 に変更すると、画像が戻ってきました。

これはアクセス許可の問題でしたが、キャッシュ フォルダーのプロパティを調べてアクセス許可を変更した後でも、Windows マシンで動作しない理由はまだわかりません。洞察をいただければ幸いです...

于 2013-08-02T17:36:46.433 に答える