【現象】
多言語対応としてBogoを使っているが、翻訳済みの投稿をコピーして別の投稿を作ったところ、元の投稿の翻訳リンクが新しいページとなってしまった。
画面上からは解決する方法は無いようなので、投稿を削除して作り直すか、DBを手で直すしかない。投稿を作り直すのも面倒なので、DBパッチで直したので、参考まで。
【解決方法の調査】
Bogoのソースを見て、どのようにDBを使っているかを調べる。
メタテーブル(※)の、キー項目’_original_post’と’_locale’を使っていることが分かる。
※??_postmetaテーブル(??:WordPressインストール時の設定による。wpとか)
【対応内容】
DBのメタテーブルのレコード状態を見ておかしいものを直せばいい。自分の状態では、以下を対応した。
- コピー先の投稿のメタテーブルに、コピー元を指す余分な‘_original_post’があったので、このレコードを削除。
- コピー元の’_original_post’の値を修正。