ITblog

WordPressでソースコードにSQLを直書きで新着記事を10件表示する

2018年12月10日

WordPressで、ソースコードにSQLを直書きで新着記事を10件表示するというのをやってみました。

やりたいこと

PHPのファイルにSQLを直書きで、新着記事から10件の記事を表示したい

何故SQL直書きが必要なのか

WordPressには、新着記事を指定件数表示する記述が準備されているので、通常であればSQL直書きで記事を取り出す必要はありません。

しかし、今回やりたいことは、WordPressのサブディレクトリにインストールした別のWordPress(ブログ用)から、新着記事を表示したいということです。

もともと、Simplepieというライブラリを使ってやっていたのですが、サイトをhttps化すると取得ができなくなってしまいました。(理由は分かりません)

そのため、仕方なしで、本体のサイトでブログのデータベースに接続し、そこから最新記事を取り出すことにしました。

SQL文は以下のようなかんじです。

#新着記事を10件取り出す
$s_sql = "
            select post_title, post_date ,guid
              from wp_posts
            where post_status = 'publish' order by post_date desc limit 10";

一応解説すると
wp_posts ・・・ WordPressの記事が格納されているテーブル
post_title ・・・ 記事タイトル
guid ・・・ 記事のURL
post_status = publish ・・・ 記事が公開されている
order by post_date desc limit 10 ・・・・ 最新記事から10件

あとは、普通に while文でループして記事を出力したらOKでした。

コメントを残す

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