いしかわでございます。ほぼメモです。元資料は下記になります。正確に把握したい場合は元資料を参照ください。
I18N Improvements in 6.5 (Performant Translations) – Make WordPress Core
There are a number of internationalization (i18n) improvements in WordPress 6.5, which I’d like to cover in this dedicated dev note.
WordPress 6.4 までは翻訳ファイルは mo ファイルを読み込んでいましたが、6.5 からは php の翻訳ファイルを読み込む事でパフォーマンスが少し向上します。新しい翻訳ファイルは .php の拡張子の前に i10n がついた .l10n.php という末尾になります。
公式ディレクトリのテーマ・プラグインは得に何もしなくても良い
.l10n.php の新しい翻訳ファイルは、公式ディレクトリのテーマやプラグインの場合、自動的に生成されるので特に何もする必要はありません。
公式ディレクトリ以外のテーマやプラグインの場合
.l10n.php のファイルを自分で作る必要があります。
WP-CLI で .mo ファイルから .l10n.php を生成する
元の資料には以下のように書かれています。
# Create PHP files for all PO files in the current directory.
$ wp i18n make-php .
# Create a PHP file from a single PO file in a specific directory.
$ wp i18n make-php example-plugin-de_DE.po languages
WP-CLI を使って、.mo ファイルを元に .l10n.php ファイルを自動で生成してくれるわけです。
- ターミナルで .mo ファイルのあるディレクトリに移動
wp i18n make-php .
を叩く。
で .10n.php ファイルが生成されます。
wp i18n make-php .
を叩いても WP-CLI のバージョンが古いと
'make-php' is not a registered subcommand of 'i18n'. See 'wp help i18n' for available subcommands.
Did you mean 'make-pot'?
と言われてしまいます。その場合は sudo wp cli update
などで WP-CLI のバージョンをアップします。
package.json などに書いておく
手動で毎回やるのは忘れたり面倒なので、ビルドするスクリプトに含めておくのが一般的なのかなと思います。
WP-CLI のバージョンを上げられない・使えない場合
PHPファイルに以下のように書くと生成する事もできます
// 対象 .mo ファイル
$mofile = plugin_dir_path( __FILE__ ) . 'languages/vk-filter-search-pro-ja.mo';
// 出力先
$path_to_php_file = plugin_dir_path( __FILE__ ) . 'languages/vk-filter-search-pro-ja.l10n.php';
$contents = WP_Translation_File::transform( $mofile, 'php' );
if ( $contents ) {
file_put_contents( $path_to_php_file, $contents );
}
この記事を書いた人
-
名古屋のウェブ制作会社数社に10年程度務めた後、株式会社ベクトル設立。
企画・運営・コンサルティング〜WordPressを中心としたシステム開発まで幅広く携わる。
[ 著書 ]
・いちばんやさしいWordPressの教本(共著)
・現場でかならず使われているWordPressデザインのメソッド(共著)
[ 最近のWordPressコミュニティでの活動 ]
WordCamp Tokoy 2023 セッションスピーカー
WordCamp Asia 2023 セッションスピーカー(LT)
WordCamp Niigata 2019 セッションスピーカー
WordCamp Haneda 2019 セッションスピーカー
WordCamp Osaka 2018 セッションスピーカー
WordCamp Kyoto 2017 セッションスピーカー
他
最近の投稿
フルサイト編集対応ブロックテーマ
WordPress テーマ X-T9 は、WordPress 5.9 から実装されたフルサイト編集機能に対応した「ブロックテーマ」と呼ばれる新しい形式のテーマです。
ヘッダーやフッターなど、今までのテーマではカスタマイズが難しかったエリアもノーコードで簡単・柔軟にカスタマイズする事ができます。
パターンを使って
よりクオリティの高いサイトに
パターンとは、WordPressのブロックを組み合わせて作ったデザインテンプレートのようなもの。プロのデザイナーが制作したパターンを300以上公開中!コピペしながら高品質なサイトを簡単に作れます。
ブロックエディターで
ABテストを
自由に作成できる VK AB Testing
VK AB Testing は、ABテストを実施するための WordPress 用プラグインです。ブロックエディターでテストパターンを自由に作成でき、ランダム表示とクリック計測が可能です。Webサイトや広告などの施策の改善にぜひご活用ください。