ホームページ制作を大阪で安く頼むならプロットハブ!

ホームページ制作を大阪で安く頼むならプロットハブ!
毎月5社限定企画実施中

プロットハブ技術ブログ

コピペで完了!Bogoでカスタム投稿を多言語化する最速の方法

Ryota Ono

Ryota Ono

2024/6/26

こんにちは!株式会社プロットハブのエンジニア小野です。
前回に引き続きBogoについて紹介していきます。
今回はカスタム投稿を多言語対応する方法を紹介します。
Bogoやカスタム投稿の多言語化はデフォルトではできないのでfunctions.phpにコードを追加する必要があります。
Bogoの設定方法や使い方については以下の記事を参考にしてください。

WordPressサイトをBogoで簡単に多言語化!手軽に始める方法を解説
【リライトルールを修正】Bogoでタクソノミーのアーカイブが404になる
WordPressでBogoの言語スイッチャーをカスタマイズする

カスタム投稿を多言語化する

Bogoにはbogo_localizable_post_typesというフィルターフックがあります。
このフィルターフックを使うことでカスタム投稿を多言語化することができます。
functions.phpにコードを記載します。
functions.phpを変更する際は必ずバックアップを取ってから変更してください。

全てのカスタム投稿を多言語化する場合

全てのカスタム投稿を多言語化する場合はget_post_types()関数を使ってカスタム投稿を取得します。
get_post_types関数で全てのカスタム投稿を取得してその値を配列に追加することで多言語対応させることができます。
全てのカスタム投稿を多言語対応したい場合は以下のように記述するだけで多言語化できます。

function my_localizable_post_types($localizable) {
    $args = [
        'public'   => true,
        '_builtin' => false
    ];
    $custom_post_types = get_post_types($args, 'names');
    return array_merge($localizable, $custom_post_types);
}

add_filter( 'bogo_localizable_post_types', 'my_localizable_post_types', 10, 1 );
特定のカスタム投稿を多言語化する場合

特定のカスタム投稿を多言語化する場合は以下のように記述します。
全てのページを多言語対応すると管理が煩雑になるため特定のカスタム投稿のみ多言語対応したい場合に有効です。
$localizableに多言語化したいカスタム投稿のスラッグを追加してください。
custom_post_typeをご自身のカスタム投稿に合わせて変更してください。

function my_localizable_post_types($localizable) {
    $localizable[] = 'custom_post_type';
    return $localizable;
}
add_filter( 'bogo_localizable_post_types', 'my_localizable_post_types', 10, 1 );

まとめ

フィルターフックを使用することで簡単にカスタム投稿を多言語化することができます。
BogoはSEO対策もしやすく、多言語対応も簡単にできるのでWordPressで多言語化をしたい方はぜひ使ってみてください。
弊社ではWordPressで多言語化をしたい方のサポートも行っておりますのでお気軽にお問い合わせください。

プロットハブはホームページ制作を
支援しています。
ご興味のある方はぜひお気軽に
ご相談ください。

一覧ページに戻る

全カテゴリ一覧

全タグ一覧

関連記事

コメント

コメントを残す

コメントが承認されると公開されます。※の入力欄は必須項目です

ホームページ制作が毎月5社限定5万5千円から!ご依頼の方はコチラ!