2021.06.03
【SQL】データベースから最近の投稿を取得してブラウザ上に表示する phpMyAdmin
データベースを入れ替えた時に投稿記事が2件抜け落ちていたのでphpMyAdminで該当記事のデータだけ抜き出して修正しました。
最近の投稿からタイトル、本文、スラッグを取得するSQL文
SQLでインサートはまだ慣れていないのでSECECT句で必要なデータだけ抜き出して投稿画面にコピペする感じです。
SELECT
post_date, -- 投稿日時
post_title, -- タイトル
post_content, -- 本文
post_name -- スラッグ
FROM
wp_posts
WHERE
post_status = 'publish' AND post_type = 'post' -- 公開されている記事の中から
order by id desc -- 新しい順に並び替え
LIMIT 3 -- 3件取得
「LIMIT 3」にしたのは投稿順に間違いがないか確認するためです。
SQL文で取り出したデータは以下のような感じです。
この状態で本文をデータをコピーできればいいんですができないのでCSVでエクスポートしました。
ただ、何故か全記事のデータは入っていたり、本文が長過ぎてセルを隠れて選択できなかったりして操作しずらかったので他の方法を探りました。
クエリ結果操作に「印刷用画面(全テキストを含む)」というのがあるのでそちらをクリック。
するとブラウザ上に抽出したテーブルがHTMLとして表示されるのであとはコピペするだけです。
投稿日時のデータもあった方が好かったのでSQLは修正しています。
データベースを入れ替える予定がある場合は記事の新規投稿や更新はやらない方がいいのは分かってはいたんですが、ついつい書きたくなって書いてしまって失敗しました。