静的 HTML に WordPress を埋め込む方法

実は昔の hiromasa.zone なんかがそうだったりしましたが、WordPress の情報を WordPress 管轄以外から取得したいときがあります。

たとえば、静的 HTML のトップページに WordPress の新着をだしたい、、とかですね。 全部のページ WordPress でやるのもおっくうってこともあるわけです。 🙂

そんな場合は以下のようなコードを使うのもひとつの方法かもしれません。

とりあえず、静的 HTML の場合は、拡張子を .php とか変更して PHP が動くようにします。

すでに、.html で他からリンクしちゃっていてリネームできないよーって方は mod_rewrite で化かすとかとかしてください。 / で終わる URL のときは、index.html をリネームして index.php にすれば OK です。

で、こんなコードを元 html に挿入します。

<?php // wp-load.php を include して WordPress をテーマなしで起動する ?>
<?php // 該当 HTML の先頭行に wp-load.php のパスを自分にあわせて以下を挿入 ?>
<?php include_once "../wordpress-another/wp-load.php" ?>
<html>
<head></head>
<body>
 
<!-- このへんまで普通の HTML かく -->
 
<?php // たとえば WordPress から最新5件のエントリ名を持ってきたい場合 ?>
<?php // 以下 7行を HTML にコピペする ?>
<?php query_posts('showposts=5'); // 最終5エントリ取得のループをつくる ?>
<?php if ( have_posts() ) : while ( have_posts() ) : the_post(); ?>
<!-- ここからWordPressのテンプレートタグをかく -->
<p><a href="<?php the_permalink() ?>"><?php the_title(); ?></a></p>
<!-- ここまで -->
<?php endwhile; ?>
<?php endif; ?>
 
<!-- このへんからも普通の HTML かく -->
 
</body>
</html>

wp-load.php を WordPress 以外から include して、query_posts 関数でループをつくってあげれば、好みの条件でループの作成ができます。

一点注意ですが、この方式の場合 WordPress の状態、というかまぁ MySQL の動作にひっぱられるので、MySQL がよくおちるサーバだとページに不具合がでてしまう可能性があります。

それを嫌う場合、をかもとにいさんの方式が良いと思います!

Google AJAX Feed API : dogmap.jp

これを実現するために JavaScript で RSS フィードを取得して表示する方法を調べたので、自分用にメモ。

JavaScript 経由で WordPress の RSS をよんでうめこみます。 非同期なので体感表示速度的にも、をかもとさんの方式が有利だと思います。

ぼくのこの記事、 WordPress 直読みは方式は、ページに投稿を即反映したいとか RSS 以外の情報を取りたいとか、投稿を100件とりたい(笑)とかいった要件がある場合によいかもです。 WP のテンプレートタグがそのまんま使えます。

というわけで、呼ばれて飛び出て、メモおしまい。。

お休み中のためオチはないのです。 ←そこの違いなのか!?

静的 HTML に WordPress を埋め込む方法」への12件のフィードバック

  1. ピンバック: dogmap.jp

  2. ピンバック: EC-CUBEにWordPressの新着を表示させる

  3. ピンバック: Twitter Weekly Updates for 2009-07-26 | I reach towards the sky

  4. いやーほんとに助かりました。
    何日悩んだか分かりません。
    どうもありがとうございました。

  5. ピンバック: ワードプレス 静的ページに新着記事表示 | あれこれ覚え書き

  6. ピンバック: MovableTypeを3年愛用してきたプログラマーが最新のWordPressに触れて気づいたことをまとめてみた。 « INSPIRE TECH

  7. ピンバック: widget_custom(ウィジェットカスタム) – wordpressプラグイン -|zamuu::BLOG

  8. ピンバック: WordPressの最新記事をホームページに反映する。 | PCやぶ医者日記

コメントを残す