ワードプレスのタイトルと内容を取得し、ホームページに埋め込む方法

更新日:2018年2月26日

ホームページ自体は静的なホームページで作られているのですが、新着情報部分だけは自分で更新したいというお客様は多いです。

お客様が更新するのは新着情報部分だけなので、その場合全てをワードプレスで制作するのは割高ですし、だったら新着情報部分だけをワードプレスにして、それを埋め込んじゃいましょうという提案に至る訳です。

まずホームページのデータがあるサーバー内にワードプレスをインストールします。例えばトップディレクトリに「wp」という名前のフォルダを作成し、その中にワードプレスをインストールしましょう。今回の例では「wp」という名前にしましたが、名前は任意ですので、どんな名前でも大丈夫です。

インストールに成功すると「wp」フォルダの中には「wp-admin」、「wp-content」、「wp-includes」といったフォルダやindex.php、wp-activate.php、wp-blog-header.php等といったファイルが生成されている状態になります。

これで下準備完了。
こちらについてはワードプレスから通常通り投稿をすればいいだけです。

さて、投稿するシステム(=ワードプレス)の準備は完了しました。
次にそこから投稿された内容をホームページに埋め込む為の記述を掲載します。

注意点としては拡張子はhtmlではなく、phpを使って下さい。
例えば埋め込みたいファイルがindex.htmlだった場合、index.phpにして下さい。

では埋め込みたいファイルに下記の記述をして下さい。

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

記述場所としては、ソースの一番上がベストだと思います。
HTMLタグが始まる前の本当に一行目の箇所です。

次に埋め込みたいファイルにこちらの記述もして下さい。
こちらの記述は新着情報を表示させたいピンポイントの場所にして下さい。

<?php
$args = array( 'posts_per_page' => 10, 'order'=> 'DESC', 'orderby' );
$posts = get_posts($args);
foreach ($posts as $p) :
?>
<?php echo $p->post_title; ?>
<?php echo $p->post_content; ?>
<?php endforeach; ?>

この記述は
<dt>タグの部分にワードプレスの投稿のタイトルを表示し、
<dd>タグの部分にワードプレスの投稿の内容を表示します。

下記画像参照(クリックで拡大します)。
ワードプレス管理画面

最新の投稿を最大10件まで表示するという記述になっていますが、最大99件までにしたいのであれば、
array( 'posts_per_page' => 10
の所を
array( 'posts_per_page' => 99
に変更すればOKです。

これにてワードプレスの投稿のタイトルと内容の取得が完了しました。
是非お試し下さい!