wordpressページ/投稿内でphpを実行する

トップページのサイドバーではなく、
メイン側に最新情報を掲載したと言う要望をよく聞くので、
覚え書きとして残します。

手順としては、
1.wordpressページ/投稿内でphpを実行する準備をします
2.phpコードをwordpressページ/投稿内に直接記入します
以上、これだけです。

以下に詳しい方法を記述します。

1. Exec-PHPのインストール

通常、WordPressはページ/投稿画面でPHPが扱えないので、PHPを使うためのプラグインをインストールします。

  1. Exec-PHPのダウンロード
  2. /plugins/にアップロードし有効化
  3. 管理画面のユーザー⇒あなたのプロフィール下部にExec-PHP Settingsという項目が追加されるので、チェックを入れプロフィールを更新

以上でページ/投稿画面(HTML)内でPHPを利用できるようになるのですが、ビジュアルエディタにしてしまうとコードが崩れて使用できなくなるので注意が必要です。特にクライアントがビジュアルエディタでしか利用しない場合は、バックアップを取っておくことがお勧めします。また、投稿設定の「不正にネスト化した XHTML を自動的に修正する」のチェックも外してください。

2. カテゴリ別の新着記事表示

ここでは、以下の様式で表示される方法をご紹介します。
『・日付 : [カテゴリー]タイトル』

<ul>
<?php $posts = get_posts(‘numberposts=10&cat=21′); global $post;?>
<?php foreach($posts as $post): ?>
<li><?php the_time(‘Y/m/d’); ?> : [ <?php the_category(‘, ‘); ?> ]<a href=”<?php the_permalink(); ?>” title=”<?php the_title(); ?>”> <?php the_title(); ?></a></li>

<?php endforeach; ?>
</ul>

「numberposts=」が表示する記事件数、「cat=」が表示するカテゴリIDです。カテゴリIDはカテゴリ編集画面のURLで確認できます。こんなのが出てると思います→( category&tag_ID=7)。複数のカテゴリを指定する時は「cat=7,8」のようにします。

全カテゴリの新着記事表示

カテゴリに関係なく全ての記事の新着情報を表示したい場合には、上記の「&cat=21」を削除すればOK。

これで設定完了。