Bogoプラグインをカスタム投稿タイプでも有効にする方法
きむおば
このブログではアフィリエイト・アドセンス広告を利用しています
当ブログでは、アドセンス・アフィリエイト広告を掲載しています。
消費者庁が発表しているルールに沿って記事を作成していますが、問題のある表現を見つけた際にはご連絡ください。
簡単にWordPressサイトを多言語化できるプラグイン「Bogo」
無料で、しかも作りがシンプルでわかりやすいので、サイトの翻訳でよく利用させていただいてます。
Bogoプラグインは、通常では投稿と固定ページにしか対応していません。カスタム投稿タイプにも対応させるためのコードをご紹介します。
目次(読みたいところへジャンプ!)
Bogoプラグインをカスタム投稿タイプにも対応させるにはフィルターフックを使う
Bogoプラグイン内のpost.phpファイル内に、投稿タイプを変更するためのフィルターフックが用意されています。
function bogo_localizable_post_types() { $localizable = apply_filters( 'bogo_localizable_post_types', array( 'post', 'page' ) ); $localizable = array_diff( $localizable, array( 'attachment', 'revision', 'nav_menu_item' ) ); return $localizable; }
このフィルーターフックを使うだけで、簡単にカスタム投稿タイプも対応させることができるようになります。
functions.phpファイルに次のコードを追加するだけです。
add_filter('bogo_localizable_post_types', 'add_localizable_post_types', 10, 1); function add_localizable_post_types($localizable) { $localizable[] = 'カスタム投稿タイプのスラッグ'; return $localizable; }
これで、カスタム投稿タイプでもBogoが使用できるようになりました。
このコードでは、カスタム投稿タイプ1つずつ設定する必要がありますが、カスタム投稿タイプの種類が多い場合には、QiitaでKazue IGARASHIさんが紹介しているコードを使うと、公開しているカスタム投稿タイプを全て対応させることができるようになります。
https://qiita.com/gatespace/items/75e70f5ae162c2962dcc
Bogoプラグインの詳細やダウンロードはこちらから。