Simplicityの特徴 › フォーラム › テーマファイルのカスタマイズに関する質問など › before-main.phpの画像挿入の記述について
- このトピックには4件の返信、1人の参加者があり、最後ににより2年、 9ヶ月前に更新されました。
-
投稿者投稿
-
-
2016年5月18日 5:54 PM #41104吉野ゲスト
こちらのサイトを参考に「before-main.php」を使いトップページに画像を挿入しました。思い通りにできたのですが、トップページにしか表示されません。これを全てのページ、もしくは個別記事ページでも表示させたいのですがどうすれば良いでしょうか。よろしくお願い致します。
-
2016年5月18日 10:26 PM #41113Hidekichiゲスト
<?php if(is_home()): ?>
これはホームの時だけという条件での設定です。なのでbefore-main.phpに
<div>
から始まるhtmlタグだけを書けばどのページでもdivで入れた画像は出ると思います。 -
2016年5月18日 11:03 PM #41117吉野ゲスト
hidekichiさん
おかげさまで解決できました。ありがとうございました。もう一つ聞きたいことがあるのですが、以前Hidekichiさんに解決していただいたこちらの質問ですが、カスタムフィールドで任意のリンクを付ける事は出来たのですが、カスタムフィールドを設定しないとアイキャッチのリンクが全て個別記事ではなくトップページになります。
全ての記事でカスタムフィールドを設定すればいい話なのですが、できれば設定した場合は任意のリンクへ、設定しない場合は個別記事へというような事は可能でしょうか。
-
2016年5月19日 1:52 AM #41122Hidekichiゲスト
ここにちょっとした例がありますが、
<?php $key_1_value = get_post_meta( get_the_ID(), 'key_1', true ); // カスタムフィールドが値を持つかチェック if ( ! empty( $key_1_value ) ) { echo $key_1_value; } ?>
こういうことかと思います。つまり、$key_1_value(これは何でも良い)と言う変数を作って、get_post_meta( get_the_ID(), ‘key_1’, true );で取得した値を変数に入れています。
if ( ! empty( $key_1_value ) ) {
は、その変数が取得できなかった場合など、中身が「カラ(empty)の場合は」の否定(!)なので、「カラでない場合は」となり、echo #key_1_value
つまり変数の中身を出力しますと言うことです。ここから、<?php $test = get_post_meta( get_the_ID(), 'key_1', true ); //ここは以前のget_post_meta if (!empty($test)) { $link = $test; } else { $link = 任意のアドレス; } ?> <a href="<?php echo $link; ?>" class=...前と同じ...>
というようなことをすれば中身がカラ、つまりカスタムフィードが設定されてなくて何も返ってこなかった場合はelse以降のアドレスがaタグのhrefにセットされるという具合です。
個別記事というのは、元々、
<?php the_permalink(); ?>
で拾っていたと思うので、$test = get_post_meta( get_the_ID(), 'key_1', true ); //ここは以前のget_post_meta if (!empty($test)) { $link = $test; } else { $link = get_permalink(); } <a href="<?php echo $link; ?>" class=...前と同じ...>
こんな感じでしょうか。the_permalink()は出力してしまうと思うんですよ、なのでまずget_permalink()で値だけを取得しておいて、$testと同じくして後々にechoさせるという感じかと思います。いつものことながら、試してませんけれども(笑)
-
2016年5月19日 12:23 PM #41136吉野ゲスト
Hidekichiさん
ご回答ありがとうございます。今の私の知識ではうまく理解できませんでした。もう少し基本的な勉強をしてからご回答を参考にもう一度挑戦してみたいと思います。お手数お掛け致しました。ありがとうございました。
-
-
投稿者投稿
- フォーラム「テーマファイルのカスタマイズに関する質問など」には新規投稿および返信を追加できません。