wp_postmetaテーブルに上記のようなデータが大量にできていて、これなんだろう?という話と削除しても問題ないのか?という話です。
・「oEmbed」機能で自動で作成されるデータ
・おそらく、キャッシュなので削除しても再作成される
・{{unknown}}というデータができるのは、バグっぽい気がする
記事にYoutube,TwitterのURLがあると自動で作成されるようです。埋め込み機能を使っていなくてもこのデータは作成されるようでその時に「{{unknown}}」というデータを生成するようです。
で、削除してみたところ問題なく記事も表示されたのですが、やはりその時点で再生成されてしまいます。ゴミみたいなデータが残るということになります。
oEmbed機能を無効化する方法
// ====================================
// auto-embeds を無効化
// http://wpengineer.com/2487/disable-oembed-wordpress/
// =========================================================
// Disable auto-embeds for WordPress >= v3.5
remove_filter( 'the_content', array( $GLOBALS['wp_embed'], 'autoembed' ), 8 );
functions.phpに上記を追加してください
参考:How to disable auto-embeds (oEmbed) in WordPress 3.5 - WP Engineer
oEmbed機能を使用していないので、この機能自体を停止させればレコードは生成されないのではないか?ということで停止させてみたら、該当レコードは生成されなくなりました。
検索で調べた結果
・Clearing oEmbed Cache - SiteOrigin・#17210 (Massive duplication of oEmbed postmeta) – WordPress Trac
上記あたりから、oEmbed機能とそのレコードがキャッシュデータだというのがわかるかと思う。
So there's an old plugin called:
Better YouTube Embeds
and the first thing it does is to clear the oembed cache from Post_Meta. :-)
alan
WordPress › Support » Is it safe to delete _oembed_* from the post_meta table
What is the meta_key "_oembed_longkeynumber" used for? The value is {{unknown}}. Can I delete those entries in the database?
WordPress › Support » meta_key " _oembed_"
・WordPress › Support » _oembed_ meta_value {{unknown}}
上記あたりで、このようなレコードが生成される可能性と、それがyoutube関係にあたるものだというのがわかるかとは思う。
スポンサーリンク
コメントを残す