WordPressでアップロードした画像を記事以外の場所に表示
ホームページを作っていて特定のページだけヘッダーのロゴを変えたい時などはないですか?
その都度テンプレートを作るのもよいのですが、数が増えてくると管理が面倒。
ということで、カスタムフィールドにファイル名をいれることで、アップロードした画像を記事以外の場所(ヘッダーやフッターなど)に表示できるようにしてみました。
やり方はアップロードした画像のパスさえ分かればよいのでテンプレートの画像を表示したい場所に
<img src="<?php bloginfo('wpurl'); ?>/wp-content/uploads/<?php echo get_post_meta($post->ID,'画像ファイル名',TRUE); ?>" alt="<?php echo get_post_meta($post->ID,'画像説明文',TRUE); ?>" />
てな感じで書けばOK。
あとは、各記事毎に「画像ファイル名」と「画像説明文」というカスタムフィールドを作ればアップロードした画像が表示されます。
OKと書きましたが、実はこのままだと「画像ファイル名」を指定しない時にファイルが見つからないので「?」が表示されてしまいます。
そうなると見苦しいのでif文でカスタムフィールドが空白でない時だけ表示するようにしています。
スポンサーリンク
コメント
この記事へのコメントはありません。
コメントをどうぞ