サポート » プラグイン » Custom Field Templateで出力した情報をトップページに表示できません

  • 解決済 tomy26

    (@tomy26)


    トップページの画像スライドショーの画像を管理画面で選択できるようにしたいと思い、Custom Field Templateを使い、まずは下記コードで設定した固定ページに表示するところまではできているのですが、この情報をトップページに表示する方法がわかりません。

    <?php
    //サイズの定義
    $size = ‘full’;
    //エントリーに属しているアタッチメントIDを取得する
    $postCustomMulti = post_custom(‘SLIDEImage’);

    if($postCustomMulti) {
    ?>
    <?php
    //アタッチメントIDの配列から画像を取得する
    foreach($postCustomMulti as $var) {
    $postImg = wp_get_attachment_image($var, $size);
    ?>
    <div><?php echo $postImg; ?></div>
    <?php } //foreach ?>
    <?php } //if ?>

    こちらのコードに固定ページのページIDかなにかで「こちらのページのフィールド情報を取得して」みたいな命令文を書くのかなとか思うんですが、初心者の為、どう書いたらいいかわかりません。

8件の返信を表示中 - 1 - 8件目 (全8件中)
  • 関数リファレンス/get post custom values
    正解かどうかとか画像が表示できるかとかわかりませんが(もっぱら検索とコピペなので)、希望の機能はこれで行けるんじゃないですかね。

    ご回答ありがとうございます!
    <?php get_post_custom_values( $key, $post_id ); ?>

    <?php get_post_custom_values( ‘SLIDEImage’, 20 ); ?>
    このような使い方でしょうか?
    色々な部分に追記してみたんですがうまくいきません。
    上記のコードに対してどこに、どのように追記、もしくは書き換えすればいいかわらないんですが、どこに置けばいいのでしょうか?
    すいませんPHP初心者なもので。。。

    関数リファレンス/get post meta
    こっちのほうが普通だったのかも。すいません。
    検索頼りなんであまり詳しくわわかりません。

    oisitさんありがとうございます。
    私がしたいことはoisitさんの言う部分で間違いないとは思うんですが、
    やっぱりPHPの理解が足りないせいか、どこに教えていただいたコードを書けばいいかわかりません。。。

    いくつか確認させてください。

    ・上記コードはどのテンプレートファイルに書かれていますか?
    ・当該固定ページはトップページとは独立して表示させるものですか?
    ・設定—表示設定の「フロントページの表示」の設定はどのようになっていますか?
    ・CFTでのSLIDEImageの設定はどのようになっていますか?

    ikaringさんご連絡ありがとうございます。

    ・上記コードはどのテンプレートファイルに書かれていますか?
    >index.php(トップページ)のスライドショーの<div>画像</div>の部分に書いています。(ですが、あくまで上記のコードは、カスタムフィールドに設定したページ(slide-single.php)に書いあるものと同じものです。)
    ・当該固定ページはトップページとは独立して表示させるものですか?
    >あくまでトップページのスライドショーの画像切り替えだけに使うために作った固定ページなので、独立して表示するものではありません。
    ・設定—表示設定の「フロントページの表示」の設定はどのようになっていますか?
    >最初から触っていないので、「最新の投稿」に選択されています。
    ・CFTでのSLIDEImageの設定はどのようになっていますか?
    >プラグイン「Custom Field Template」の管理画面設定
    [SLIDEImage]
    type = file
    label = 画像をアップロードしてください。
    mediaLibrary = true
    mediaPicker = true
    mediaRemove = true
    multiple = true
    multipleButton = true

    このご回答でよろしいでしょうか?
    よろしくお願いいたします。

    おそらくですね、今カスタムテンプレートslide-single.phpで当該固定ページがうまく表示されているのであれば、その固定ページをフロントページにしてしまうのが早いと思います。
    side-single.phpを複製してfront-page.phpにリネームします。ヘッダーコメント行は削除してください。

    それで、設定—表示設定の「フロントページの表示」を「固定ページ」としてフロントページを当該固定ページにすることで、トップページをその固定ページにするとともに、front-page.phpがテンプレートとして使用されるようになります。

    あと、その固定ページのテンプレート設定をデフォルトテンプレートに直しておいたほうがいいかもしれないです。

    解決しました!ありがとうございます。

8件の返信を表示中 - 1 - 8件目 (全8件中)
  • トピック「Custom Field Templateで出力した情報をトップページに表示できません」には新たに返信することはできません。