- ステータス
- 解決済み
問題の概要
Pantheonのような一部のホスティングプロバイダーは、非常に厳格なセキュリティを適用しており、WordPressサイトを展開するための推奨されるベストプラクティスに従っています。
これらのホスティングプロバイダーはインスタンスを保護し、Webサーバーによる書き込み権限をuploadsフォルダーにのみ許可します。
このようなホスティングプロバイダーを使用している場合、文字列翻訳を使用した新しい翻訳方法で問題が発生します。これは、サーバー自体およびWPML 文字列翻訳が、/wp-content/languages/フォルダーおよびその配下のフォルダーツリーに書き込むことを許可されないためです。
回避策
問題を解決してすべてを正常に機能させるには、WordPressの言語フォルダー(通常は /wp-content/languages/ にあります)を再定義する必要があります。
Pantheonホスティングの場合、wp-config.phpに以下のコードを追加することで設定できます。
define( 'WP_LANG_DIR', $_SERVER['HOME'] .'/files/languages' );
このコードは以下の記述の後に追加することをお勧めします。
/** Define appropriate location for default tmp directory on Pantheon */
define('WP_TEMP_DIR', $_SERVER['HOME'] .'/tmp');
その後、ダッシュボード > 更新に移動し、「翻訳を更新」ボタンを押してすべての言語パックを取得するWordPressの処理を実行してみてください。
また、すべてが正常に機能する前に(作成されていない場合は)/languages/ フォルダーおよび /languages/wpml/ フォルダーを手動で作成する必要があるかもしれないと報告されています。