• 解決済 gcr005

    (@gcr005)


    お世話になっております。
    質問させていただきます。

    現在カスタムフィールドテンプレートでカスタム投稿を作成中ですが
    うまくいきません。どなたかお力を貸していただけないでしょうか。

    投稿した記事が一覧用に用意したページに
    カスタム投稿の項目のみが反映されません。
    タイトルなどは反映されていて、デフォルトのブログ記事一覧の仕様になっているようです。
    記事詳細へのリンクもページ(single-hoge.php)も正常に反映されます。

    一覧ページのソースは以下です。

    <?php
    /*
    Template Name: NEWS
    */
    ?>
    <?php include (TEMPLATEPATH . ‘/header.php’); ?>
    <?php the_content() ?>
    <?
    query_posts(
    Array(
    ‘post_type’ => ‘news’,
    ‘orderby’ => ‘date’,
    ‘order’ => ‘DESC’,
    ‘posts_per_page’ => 10,
    ‘paged’ => $paged,
    )
    );
    while ( have_posts() ) : the_post();
    ?>
    <!–ループ–>
    <?php echo wp_get_attachment_image(get_post_meta($post->ID,”画像1″,true),’large’); ?>
    <?php echo get_post_meta($post->ID , ‘テキスト’ ,true); ?>
    <!–ループ–>
    <?php
    endwhile;
    ?>
    <?php get_footer(); ?>

    ちなみに関係ないかもしれませんが、スマイルサーバーを使用しておりまして
    以前に他のサーバーで同じコードでやった際は全く問題なかったです。
    php.iniはUTF-8にエンコード済みです。

    以上、どなたかご教授いただければ幸いです。よろしくお願いします。

1件の返信を表示中 - 1 - 1件目 (全1件中)
  • mocomoco

    (@silent_dandy)

    ソースを拝見した限り、カスタムフィールドテンプレートの問題というより、ソースの記述方法自体に問題があるように思われます。

    <?php the_content() ?>
    はセミコロンが抜けているようです。

    他のサーバーで動いていたのに今のサーバーで動かないという原因はおそらく
    query_posts手前のphp開始タグが<?phpではなく省略形の<?が使用されているためですね。
    参考:
    http://php.net/manual/ja/language.basic-syntax.phptags.php

    省略形の開始タグはサーバーの設定によって使用できるかどうかが違いますので、
    phpの開始タグは必ず<?phpで始めるようにしたほうが無難です。

    なお、query_posts()を使用された時はループ後に必ず
    wp_reset_query();
    を記述するように心がけたほうがよいです。
    (query_posts自体の使用が推奨されていないという話はとりあえず置いておきます。)

1件の返信を表示中 - 1 - 1件目 (全1件中)
  • トピック「カスタムフィールドテンプレートで投稿が一覧ページに反映されない」には新たに返信することはできません。