WordPress個別サポート

書きかけの投稿は、下書きとして保存するのが一般的です。

投稿を下書きとして保存

投稿を下書きとして保存

当然、下書きにした投稿は、最新の投稿一覧などには表示されません。

最新の投稿一覧

最新の投稿一覧

投稿は完成してから見てもらえば良いのですが、「今、こんな記事を書いてます!」とお伝えする目的で、下書き中の投稿のタイトルだけでもチラっと見せることができれば、完成するまでに読者の興味を引いたり、見込み客をつなぎ止めることができるかもしれません。

下書きのタイトルを画面に表示するには、sidebar.phpやcontent.phpなどのテンプレートの中でSQLを実行して、下書きデータを直接取得する方法があります。

WordPressデータベースを直接操作するということです。

コードの例は次のようになります。ここではsidebar.phpの中に記述しています。

<aside>
<h3 class="widget-title">【現在、執筆中です!】</h3>
<ul>
<?php
$sql = "SELECT * FROM $wpdb->posts
           WHERE post_type = 'post' AND post_status = 'draft'
           ORDER BY post_date DESC LIMIT 3";
$rows = $wpdb->get_results($sql);
foreach ($rows as $row) {
    echo "<li>$row->post_title</li>";
}
?>
</ul>
</aside>

いくつかの命令を説明します。

  • SELECT * FROM $wpdb->posts … --- 投稿データが格納されているテーブルからデータを取得します。
  • WHERE post_type = 'post' AND post_status = 'draft' --- 取得する条件は、下書き(draft)の投稿(post)です。
  • ORDER BY post_date DESC --- 日付の新しい順に …
  • LIMIT 3 --- 3件を取得します。
  • $rows = $wpdb->get_results($sql); --- WordPressデータベースに対してそのSQL($sql)を実行して、結果を$rowsに格納します。
  • foreach( … ) --- 取得した3件のデータを反復処理(一覧表示)します。
  • echo "<li>$row->post_title</li>"; --- 投稿タイトルを表示します。

実行すると、下書きのタイトルが一覧表示されます。もちろん、内容は見られません。

下書きのタイトルが一覧表示される

下書きのタイトルが一覧表示される

完成した投稿は、このリストから消えて、最新の投稿一覧から参照できるようになります。

この記事をSNSで共有する
WordPressでお困りのときはご相談を
この記事を書いた西沢直木が直接、WordPress個別サポートで対応します。
こんなときはご相談を
  • WordPressの使い方(ページやメニューの作り方を教えてほしい)
  • カスタマイズ(機能の追加やデザイン調整をお願いしたい)
  • トラブル対応(画面真っ白・「ログインできない」を解決したい)
マンツーマンなので相談内容は自由です。いただいた課題をその場で解決、CSSやPHPも目の前で修正します。気軽にご相談ください。
WordPress講座の問い合わせ先

関連記事

BizVektorのカスタマイズ

WordPressによるサイト作成のヒント

WordPressプラグイン

スポンサーリンク
西沢直木によるWordPress講座の紹介
ホームページ作成講座WordPress個別サポート