サポート » 使い方全般 » 新着記事一覧について

  • 解決済 tokoroten

    (@tokoroten)


    皆様のお知恵をお借りしたく質問させてください。

    トップページに投稿の新着記事(日付の新しいものから5件)を掲載するというのはよくある話ですが、「固定ページ」の更新したものも一緒に表示したい場合は、どういった書き方になるのでしょうか?

    どうぞよろしくお願いいたします。

12件の返信を表示中 - 1 - 12件目 (全12件中)
  • get postsで取得するときに$post_type=anyとかやったらどうかな?すんません未検証です・・・
    参考:Template Tags/get posts

    ちょうど、さっっき作ってたところですが

    <ul>
    <?php query_posts('orderby=modified&post_type=page&tag=wordpress&posts_per_page=5'); ?>
    <?php while (have_posts()) : the_post(); ?>
    <li><?php the_modified_date('m月d日'); ?> <a href="<?php the_permalink() ?>" rel="bookmark"><?php the_title(); ?></a> を更新</li>
    <?php endwhile; ?>
    <?php wp_reset_query();?>
    </ul>

    こんなんで対応しました。

    お使いのテーマの前後関係がわかりませんので、このままいけるかどうかわかりませんが、参考までに。

    トピック投稿者 tokoroten

    (@tokoroten)

    kvexさま、shokun0803さま、返信ありがとうございました。
    これから作成してみます!

    トピック投稿者 tokoroten

    (@tokoroten)

    お二人のご意見を参考に以下のようにすることで対応できました。
    どうもありがとうございます。

    <ul>
    <?php query_posts('orderby=modified&post_type=any&posts_per_page=5'); ?>
    <?php while (have_posts()) : the_post(); ?>
    <li><?php the_modified_date('m月d日'); ?> <a href="<?php the_permalink() ?>" rel="bookmark"><?php the_title(); ?></a> を更新</li>
    <?php endwhile; ?>
    <?php wp_reset_query();?>
    </ul>

    ちなみに、これでは全てに、~を更新と語尾についてしまいますが、固定ページには、語尾に「~を更新」、投稿については、語尾に「UP」とできますでしょうか?

    ご教授願います。

    is_pageで分岐させられませんか?

    トピック投稿者 tokoroten

    (@tokoroten)

    kvexさん、こんばんは。

    正直PHPの知識が0に等しいのですが自分なりに、
    <?php while (have_posts()) : the_post(); ?>
    の下で

    if ( is_page() ) {
    echo ・・・・・・・
    } elseif ( is_posts() ) {
    echo ・・・・・・・
    }

    のようにしてみたのですが、タイトルが2回づつ表示されてしまいました。
    また、echoの中にphpタグがあったりで、変なタグが表示されて、正直どこを直していいかわからず混乱中です・・。

    トピック投稿者 tokoroten

    (@tokoroten)

    以下のように書いてみたのですが、どちらも表示されません。
    トップページに、このページが投稿だったら、とか書いてるんでしょうから当たり前ですよね・・・。

    <ul>
    <?php query_posts('orderby=modified&post_type=any&posts_per_page=5'); ?>
    <?php while (have_posts()) : the_post(); ?>
    
    <?php if(is_single()): ?>
    <li><?php the_modified_date('m月d日'); ?> <a href="<?php the_permalink() ?>" rel="bookmark"><?php the_title(); ?></a> UP</li>
    <?php elseif(is_page()): ?>
    <li><?php the_modified_date('m月d日'); ?> <a href="<?php the_permalink() ?>" rel="bookmark"><?php the_title(); ?></a> を更新</li>
    <?php endif; ?>
    
    <?php endwhile; ?>
    <?php wp_reset_query();?>
    </ul>

    そうか、このケースじゃis_pageじゃダメですね。イージーミスですごめんなさい。

    get_post_type 関数ですかね?

    トピック投稿者 tokoroten

    (@tokoroten)

    $a = get_post_type(‘post’);
    $b = get_post_type(‘page’);

    みたいなかんじで使ってみたのですが、なかなかうまくいかないですね・・・。

    CODEX見ましたか?
    <?php while (have_posts()) : the_post(); ?>
    の直後あたりで

    $a = get_post_type();
    var_dump($a);

    などとダンプしてみたら、なにかつかめませんか?

    ただ、同じ環境が作れる状態にないので、検証できませんけど・・・

    <li><?php the_modified_date('m月d日'); ?> <a href="<?php the_permalink() ?>" rel="bookmark"><?php the_title(); ?></a> を更新</li>

    を更新

    <?php if(get_post_type() == 'page') : echo 'を更新'; elseif (get_post_type() == 'post') : echo 'UP'; endif; ?>

    に。こんなのでいかがでしょう。

    トピック投稿者 tokoroten

    (@tokoroten)

    kvexさま、define.co.jpさま、返信いただきましてありがとうございました。

    define.co.jpさんのとおりに変更したところ出来ました!

    本当に助かりました。ありがとうございます!

12件の返信を表示中 - 1 - 12件目 (全12件中)
  • トピック「新着記事一覧について」には新たに返信することはできません。