Skip Navigation

WPMLの実行には以下が必要です:

以前のPHPとMySQL バージョンの使用について

WPMLは以前のPHPと MySQLバージョンで実行できる可能性がありますが、これをテストすることはできません。 以前のバージョンをご使用の場合、WPMLのデバグモードを有効にすることをお薦めします。 これによりPHPエラーを特定し、不具合の発生をお知らせします。

WPMLを他のバージョンで試された方はここにご自由にコメントをお残しください。

ご使用のPHPバージョンの確認方法

共有ホスト会社には、PHP5とPHP7の両方をインストールしている会社もあります。 どのバージョンを使用しているかを調べるには、(ホスト会社の技術者ではなく) PHPプロセッサに聞くことが一番よいでしょう。

php_info.php というファイルを作成し、これをあなたのWordPress ディレクトリの中に入れます (wp-config.phpのすぐ横)。 このファイルには以下が含まれます:
<?php phpinfo(); ?>

簡単でしょう? 必要でしたら、これをZIPファイルでダウンロードすることも可能です。 php_info.zip (自分のサーバーにアップロードする前にまず解凍してください)を選択します。

その後ブラウザを開き、https://yourdomain.com/php_info.php へ移動します。

以下が表示されます:

サーバーのPHPバージョンを示すphp-info.php
サーバーのPHPバージョンを示すphp-info.php

上部に実行中のPHPバ―ジョンが示されます。 PHP バージョン 5.5と表示される場合、ご使用いただけません。 ホスト会社にメールを送り、PHP5.6以上を有効にする方法をお問い合わせください。

パーマリンク構造

WPMLは言語情報をURLに追加します。 以下のパームリンク構造でテストされています:

  • デフォルト
  • /%year%/%monthnum%/%postname%/

説明:

他のパーマリンク構造も使用できるかもしれませんが、異なるコンフィギュレーションで問題が起きるかもしれません。 弊社の全サイトでは以下を使用しています:/%year%/%monthnum%/%postname%/

ページには、 /%postname%/と全く同じURLを得ます。 しかしながらこのパーマリンクの構造では、 WordPressがページと投稿を混同したり、言語解決で潜在的な問題を起こすことはあり得ません。

eval() 機能の使用

WPMLはその構造とテンプレートにTWIG フレームワークを使用し、その機能に依存するため、eval()機能を有効にする必要があります。

SmartyTWIGなど、最も人気の高いテンプレートエンジンは、ファイルにPHPコードを書き込む方が速いことを発見しています。 これにより、OPcodeキャッシングの利点を利用し、テンプレートコードのランタイム構築の必要性を避けることができます。

TWIGは、攻撃の可能性を避けるために多くのチェックと清掃を実施するため、WPMLと安全に使用できます。 しかし他の開発者が当社の品質保証プロセスと同様のチェックを行っているかどうかはわかりません。

現在私たちはテンプレートをコンパイルしたり、 eval()機能を不必要に使用しない解決方法を調査しています。 しかし現在のところ、これが最適なソリューションです。

eval()機能はPHP内では無効にすることができませんが、Suhosinなどの拡張機能ではこれが可能であることにご注意ください。 これらの拡張機能は、ホストプロバイダーによりインストールと設定が行われる必要があります。