静的HTMLにwordpressの新着を表示する際に参考にした記事

静的ページにwordpressを組み込みました。

whatsnew00

要は、『wordpress入れてフルリニューアルじゃないけど、ブログだけCMS入れたいんだよね~』

という要望です。目的はSEOですけどね。
やはり、今後のSEOはインデックス数を増やしていかないとですもんね。

静的ページのみのページは更新の手間が掛かるため、クライアント側で記事を追加していくのが大変です。
ページの中身だけを更新していくよりも、オリジナリティのあるブログをどんどん追加していく方がSEOには有利でしょうね。

さて、そのままではHTMLファイルにwordpressの記事一覧を表示することはできませんが、htaccessを変更することでhtmlファイルでもphpを動かし、表示が可能になります。

導入に際して参考にした記事や詰まったところをメモしました。

/blog

にwordpressを導入したとして解説します。

まずは.htaccessに記述を加える

.htaccessに記述を加え、htmlファイルでもPHPを動かしますよ!宣言をします。

追記:あまりに拡散されてビビっております。
※使っているサーバーやPHPバージョンの違いでも変わってくるようなので注意!
僕はプログラマーではないので”真似したらおかしくなったよ”的なご質問にはお答えできません。
ごめんなさい。。

参考例
http://sole-color-blog.com/php/php/217/
http://m630.net/archives/816
http://www.faramoon.com/3009.html

※全てのHTMLファイルに適用されるので注意
AddType application/x-httpd-php .html .htm
トップページだけなら
<Files index.html>
AddType application/x-httpd-php .html
</Files>

PHPをCGIとして実行されている場合は下記

※全てのHTMLファイルに適用されるので注意
AddHandler application/x-httpd-php .html .htm
※トップページだけなら
<Files index.html>
AddHandler application/x-httpd-php .html
</Files>

参考にさせて頂いた記事はコチラ!

記事:
【拡張子「.html」にてphpを実行するための.htaccess】
サイトリンク:
http://blog.trippyboy.com/2011/apache/%E6%8B%A1%E5%BC%B5%E5%AD%90%E3%80%8C-html%E3%80%8D%E3%81%AB%E3%81%A6php%E3%82%92%E5%AE%9F%E8%A1%8C%E3%81%99%E3%82%8B%E3%81%9F%E3%82%81%E3%81%AE-htaccess/

僕が今回導入した環境は.htmだったので、htmlのみのケースなら末尾の.htmは必要ないでしょうね。
というか、.htmについても言及されていたので大変助かりました。もしかしたら.htmlしか記述しないで延々と悩んでいたかもしれません。
ありがとうございました!!

HTMLファイルに記述を加える

HTMLファイルの先頭、1行目に

<?php require('./blog/wp-load.php'); ?>

を記述します。
※wordpressのディレクトリを何にしたかで「blog」部分を適宜変更しましょう!
そして、記事一覧を表示したい箇所に、記事表示のためのフックを記述していきます。

参考にさせて頂いた記事はコチラ!(これら!)

記事:
【ワードプレスの新着情報や更新情報を静的HTMLのトップページに表示する方法】
サイトリンク:
http://webaffi.net/wordp/wp-inputhtml/
記事:
【静的ページにwordpressの最新記事を埋め込むには?】
サイトリンク:
http://ja.forums.wordpress.org/topic/1918

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

しかし!!エラーが!!

あっれー。。エラーがでた。。。
表示されたline数をみると、xml宣言の部分でした。

なるほど、xml宣言の

<?

がPHPと被っちゃってるんですね。

ならば、PHPでxml宣言を出力してしまえばいいんです。
早速「PHP xml宣言」とかでgoogle先生にお聞きしました。
自分でエスケープ調べるより早いと判断しました(苦笑)

<?php print "<?xml version=\"1.0\" encoding=\"Shift_JIS\"?>"; ?>

や、

<?php echo('<?xml version="1.0" encoding="UTF-8"?>') ?> 

こんな感じでエスケープが必要になるというわけですね。
※文字コードは適宜変更してくださいね!

一つ注意して欲しいのは、前述の.htaccessとの関係についてです。
もし、htaccessに

AddType application/x-httpd-php .html .htm

と記述して全てのhtmlファイルでPHPが動くようにさせるとしたら、全てのhtmlファイルのxml宣言をPHPに直さなくてはいけませんからね!!

参考にさせて頂いた記事はコチラ!

記事:
【XHTML文書内でとPHPを使う時のXML宣言の仕方】
サイトリンク:
http://plaza.rakuten.co.jp/oyadomymy/diary/200607020000/
記事:
【XML宣言とDOCTYPE宣言を記載】
サイトリンク:
http://css.uka-p.com/xhtml/declare.html

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

皆様のお陰で、無事静的HTMLにもwordpressの新着記事を表示することができましたよ。

これで、「コスト抑えますのでSEO対策の為にブログ機能を導入しませんか~」という提案ができますね。
そこの貴方!どうですか!?お安くしておきますよ!!

Coments

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

CAPTCHA