WordPressの編集画面にだけ古いコンテンツが表示されてしまう問題への対処
WordPressの編集画面に古いリビジョンのコンテンツが表示されてしまう(最後に保存したものよりも古いリビジョンの内容が表示される)場合の対処方法
Symptom
- Classic Editor プラグインを利用している
- JetPack の Markdown 投稿オプションを有効にしている(実際に利用しているかは関係ない)
- 投稿のリビジョンを表示すると、下の方に「Markdownコンテンツ」として古いコンテンツが表示されている
Resolution
Markdownコンテンツとして古いコンテンツのソースが残ってしまうというバグ。JetPackプラグインの無効化などをきっかけに発症してしまう気がしている。
JetPackのMarkdown 投稿オプションを無効化すれば古いコンテンツが現れることはなくなるが、本質的に解決していない。オプションを有効化すると再び投稿画面に古いコンテンツが現れる。
特にMarkdownで投稿を書いていない(投稿されているMarkdownコンテンツが全て消えても構わない)のなら、一番簡単な解決法はデータベースを開き wp_posts
というテーブルの全行の post_content_filtered
カラムをクリアすることだ。
発行するSQLは以下のようなものでいい :
UPDATE `wp_posts` SET `post_content_filtered`='';
各自で検証とバックアップを済ませてから実行すること。結果の保証はしない。
Appendix
以下の投稿を見るに、Markdown版の投稿コンテンツが post_content_filterd
カラムに保存されているらしい。
- Markdown: why store markdown version in 'post_content_filtered' column in DB? #187
- Search Regex による Markdown 記法の一括置換
formatted などではなく filtered という命名は謎が深い。
一部のサイトで、まれにこのカラムを指して「投稿のフィルタが保存されている」と書いているが、誤りだ。そもそも意味不明だが。