サポート » 使い方全般 » サイトtopに複数のwordpressから新着を表示させたい

  • 解決済 deepdiver

    (@deepdiver)


    いつもお世話になっております。
    wordpressをはじめたばかりの初心者です。

    webサイトのtop下に、./wp01と./wp02というディレクトリを作り、それぞれにwordpressをインストールしております。
    それぞれのwordpressの新着5件を、サイトtopのindexに表示させたいと考えております。

    こちらのフォーラムの、
    「自作トップページのindex.phpに新着5件表示」
    (http://ja.forums.wordpress.org/topic/3475?replies=20)
    を参考にさせて頂き、片方のwordpressについては表示させる事が出来ましたが、複数のwordpressの新着をそれぞれ表示させたい場合のデータ取得について悩んでおります。

    <?php
    	require('./wp01/wp-blog-header.php');
    	$posts = get_posts("numberposts=5&category=&orderby=post_date&offset=0");
    		foreach ($posts as $post):
    		setup_postdata($post);
    ?>
    <li><?php the_time('Y.m.d') ?> <a href="<?php the_permalink() ?>"><?php the_title() ?></a></li>
    <?php endforeach; ?>

    および

    <?php
    	require('./wp02/wp-blog-header.php');
    	$posts = get_posts("numberposts=5&category=&orderby=post_date&offset=0");
    		foreach ($posts as $post):
    		setup_postdata($post);
    ?>
    <li><?php the_time('Y.m.d') ?> <a href="<?php the_permalink() ?>"><?php the_title() ?></a></li>
    <?php endforeach; ?>

    の二つを置いてみたのですが、最初requireしたwordpressのデータのみを拾ってしまうようです。
    解決策をごご教示頂ければ幸いです。

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

    (@gogoweb)

    元のトピでも言われていますがRSS吐き出したのを読み込むのが一番簡単だと思われます。
    元のトピの方法はHTMLから子ディレクトリにあるWordpress関数を読み込んで実行しているので、2個めのWordpressを読み込もうとしても関数がすでに定義されている状態になっているので読み込まれないと思われます。

    あくまでWordpressの機能で実装を目指すなら、各子Wordpressのほうに新着情報を吐き出すphpを作っておいてfile_get_contents関数で実行して返り値を受け取るか、
    いっそWordpressのデータベースを直接操作するとか?

    kjmtsh

    (@kjmtsh)

    データベースがどう使われているかにもよりますが、この方法でやるなら、wpdbクラスのインスタンスを別に用意しなければならないのではないでしょうか。

    トピック投稿者 deepdiver

    (@deepdiver)

    お世話になります。
    お忙しい所、ご協力いただきましてありがとうございました。

    色々悩みましたが、結局、RSSを読み込んで表示させる方法に落ち着きました。
    google Ajax Apiを使い、無事に表示させることが出来ました。

    ありがとうございました。

3件の返信を表示中 - 1 - 3件目 (全3件中)
  • トピック「サイトtopに複数のwordpressから新着を表示させたい」には新たに返信することはできません。