目次
Zen Cart CMS の技術要件
Zen Cart CMSで使用するニューラル自動翻訳には、 Linguise スクリプト(以下からダウンロード可能)が必要です。Linguiseスクリプトをインストールするには、以下の要件を満たす必要があります。
- PHP 7以降を実行
- アパッチ、NGINX
- サーバーでURL書き換えが有効になっていることを確認してください
- Zen Cart CMS 1.5.x 以上
1. APIキーを生成する

その後、次のものが得られます。
- メンバーシップを検証するAPIキー
- 言語切り替え用の Linguise スクリプトへのリンク

APIキーは、 Zen Cart CMSウェブサイトで翻訳を有効にするために必要です。基本的に、APIキーはドメインで有効になっている言語を確認し、コンテンツの自動翻訳を可能にします。.
今のところ、API キーをコピーしてクリップボードに保存しておくことができます。.
2. Linguise 翻訳スクリプトをアップロードして接続する
Linguise 翻訳スクリプトは、 Zen Cart CMSがインストールされているサーバーにアップロードする必要があります。こちらからダウンロードしてください。.
スクリプトをダウンロードしたら、解凍して、 Zen Cart CMS がインストールされているルート フォルダーにアップロードします。.
- ウェブサイトのルートレベル Zen Cart CMSファイルが配置されている場所)に配置されていることを確認してください。
- フォルダ名がデフォルト名の「 linguise 」

Linguise Script Interface にアクセスするにはどうすればいいですか?
Linguiseが完了したら、次のURL形式でウェブサイトにアクセスしてダッシュボードにアクセスできます:
https://www.domain.com/ linguise
ウェブサイトのアドレスに合わせてドメインアドレスを変更します*
Linguise適切な読み取りおよび書き込み権限があることを確認します
パスワードとデータベース接続の設定
スクリプト インターフェイスにアクセスすると、パスワードを作成して希望のデータベースに接続できるセットアップ画面が表示されます。.
あなたはできる:
- 今後このインターフェースにアクセスする際に必要となるパスワードを設定します。.
- 設定と好みに応じて、データベースの種類(MySQL または SQLite)を選択します。.
この初期設定により、安全なアクセスが確保され、環境に応じてスクリプトを構成できるようになります。.

MySQLデータベース接続
MySQL を選択した場合は、以下の MySQL 構成フィールドの接続詳細を尋ねる別のインターフェイスが表示されます。

MySQL データベースへの接続を正常に確立するには、情報が正しいことを確認してください。.
MySQLとSQLiteの違いとは?
MySQLとSQLiteはどちらも、ウェブサイトやアプリケーションのデータの保存と管理によく使われる人気のデータベースシステムです。しかし、それぞれ異なるユースケースを想定して設計されており、いくつかの重要な違いがあります。
| 機能 | SQLite | MySQL |
|---|---|---|
| 設定 | 非常に簡単(SQLiteのインストールが必要) | サーバーのセットアップが必要です |
| ストレージ | 単一ファイル | MySQLサーバーによって管理 |
| パフォーマンス | 小規模アプリに最適 | 大規模で高トラフィックのシステムに最適 |
| 使用事例 | ローカルアプリ、テスト、小規模サイト | ウェブアプリ、eコマース、エンタープライズシステム |
Linguise スクリプトインターフェース: PHP プラットフォームのセットアップ
これまで Joomla と WordPressのみに対応していた Linguise 翻訳ダッシュボードが、PHPをはじめとする他のプラットフォームにもサポートを拡大しました。このアップデートにより、ユーザーはCMSやフレームワークを問わず、統一されたインターフェースから、表示オプション、フラグスタイル、外観のカスタマイズといった言語設定をシームレスに行うことができます。.

管理者は、言語選択ポップアップ、影の効果、地域固有のフラグ選択のバリエーションといった一貫した機能により、 Linguise 設定をより効率的に管理できます。ダッシュボードはユーザーフレンドリーなデザインを維持しながら、多様なWeb環境への幅広い互換性を提供します。.


3. Zen Cart CMSのURL書き換えを設定する
Zen Cart CMSでは、URL書き換えがデフォルトで有効になっています。有効になっていない場合は、ホスティングプロバイダーから有効化できます。.
Zen Cart CMSのデフォルトの.htaccessにある「 RewriteEngine on 」の後に、以下のコードをコピーしてください。
RewriteEngine On
RewriteRule ^(af|sq|am|ar|hy|az|eu|be|bn|bs|bg|ca|ceb|ny|zh-cn|zh-tw|co|hr|cs|da|nl|en|eo|et|tl|fi|fr|fy|gl|ka|de|el|gu|ht|ha|haw|iw|hi|hmn|hu|is|ig|id|ga|it|ja|jw|kn|kk|km|ko|ku|ky|lo|la|lv|lt|lb|mk|mg|ms|ml|mt|mi|mr|mn|my|ne|no|ps|fa|pl|pt|pa|ro|ru|sm|gd|sr|st|sn|sd|si|sk|sl|so|es|su|sw|sv|tg|ta|te|th|tr|uk|ur|uz|vi|cy|xh|yi|yo|zu|zz-zz)(?:$|/)(.*)$ linguise/linguise.php?linguise_language=$1&original_url=$2 [L,QSA]
URL を使用して、翻訳されたすべてのページを読み込むことができます。例: www.shop.com /fr/
言語スイッチャーをロードしてみましょう。.
4.言語スイッチャーを有効にする
4.1 Linguise JSスクリプトをロードする
HTML ヘッダーにフラグと代替 URL を含む言語スイッチャーを表示するには、 Linguise JS スクリプト リンクをすべての Zen Cart CMS ページに読み込む必要があります (SEO 目的)。.
スクリプト リンクをコピーするには、 Linguise ダッシュボードからドメイン設定に移動し、スクリプト リンクをコピーします。.

Zen Cart でこのコードを読み込む最も簡単な方法は、ウェブサイトのヘッダー内に追加するか、コード。Zen Zen Cart CMS には、ヘッダー部分を含むテンプレートが付属しており、ヘッダー部分にLinguise
これはtpl_header.phpのインストールフォルダ(下記)に移動すると見つかります。この例では、 Zen Cart CMSのデフォルトテンプレートであるresponsive_classicです:
/includes/template/*YOUR_TEMPLATE*/common/tpl_header.php。
スクリプト ファイルを編集して、以下のようにヘッダー セクションにスクリプト リンクを含めます。.

言語スイッチャーは、ウェブサイトの右下にデフォルトで表示されます。次の章で説明するように、自由にカスタマイズできます。.

SEOに関する重要な注意:設定する言語の数はSEOに大きな影響を与えます。翻訳言語を設定する際、インデックス登録されたページ数が多い場合(500ページ以上)、検索エンジンによる処理に時間がかかる可能性があります。これは、元の言語でのSEOに影響を与える可能性があります。そのため、最初は最大5言語を追加し、インデックス登録が完了したら、月に3言語ずつまとめて追加することをお勧めします。
言語スイッチャーの設定
言語スイッチャーは、 Linguise ダッシュボード > 設定 > 言語フラグ表示からカスタマイズできます。ここで行った変更はすべてウェブサイトに反映されます。.

画面右側に言語スイッチャーのプレビューが表示されます。設定できる要素は以下のとおりです。
- 3つのレイアウト: サイドバイサイド、ドロップダウン、ポップアップ
- 言語スイッチャーの位置
- 言語切り替えコンテンツ
- 英語または母国語での言語名
- 旗の形と大きさ
- 色とボックスシャドウ
Zen Cart コンテンツに言語スイッチャーを読み込む

Zen Cart内の特定の場所に言語スイッチャーを表示するには、位置を「In place(所定の位置)」に設定する必要があります。LinguiseLinguise
で位置を設定したら、以下のショートコードを追加して表示できます。以下のコードをクリックすると、クリップボードにコピーされます。
[linguise]
追加されると、フロントエンドで、コードを追加した HTML 領域にフラグと言語名が表示されます。.
ローカルキャッシュシステムオプションを有効にする
オプションとして、URLと関連する多言語コンテンツを保存するローカルキャッシュシステムを有効にすることで、ページの表示速度を向上できます。ローカルキャッシュは、 Linguise サーバーとお客様のウェブサイトサーバー間のデータ転送を節約します。このキャッシュは、ページが既に翻訳済みで更新されていない場合にのみ使用されます。優先的に保持されるキャッシュは、最も閲覧されている多言語ページのキャッシュです。.
これを補完するために、保存するキャッシュの量をMB単位で定義できます。次の例では、キャッシュが有効になっており、保持するキャッシュの量は500MBです。.

/** Basic configuration **/
public $cache_enabled = true;
public $cache_max_size = 500; // In megabyte
NGINXサーバーでの自動翻訳
rewrite ^/(af|sq|am|ar|hy|az|eu|be|bn|bs|bg|ca|ceb|ny|zh-cn|zh-tw|co|hr|cs|da|nl|en|eo|et|tl|fi|fr|fy|gl|ka|de|el|gu|ht|ha|haw|iw|hi|hmn|hu|is|ig|id|ga|it|ja|jw|kn|kk|km|ko|ku|ky|lo|la|lv|lt|lb|mk|mg|ms|ml|mt|mi|mr|mn|my|ne|no|ps|fa|pl|pt|pa|ro|ru|sm|gd|sr|st|sn|sd|si|sk|sl|so|es|su|sw|sv|tg|ta|te|th|tr|uk|ur|uz|vi|cy|xh|yi|yo|zu|zz-zz)(?:$|/)(.*)$ /linguise/linguise.php?linguise_language=$1&original_url=$2 last;
SQLiteからMySQLへ
また、Configuration.php には、サーバーに SQLite がインストールされていない場合に、SQLite ではなく MySQL の使用を強制する設定があります。.
この場合、 Configuration.php ファイルのこの部分に MySQL 情報を入力する必要があります。
/** Advanced database configuration **/
/*
* In case you don't want to use Sqlite, you can use MySQL
* To do so, you need to fill the following variables
* Linguise will create the tables for you
*/
public static $db_host = '';
public static $db_user = '';
public static $db_password = '';
public static $db_name = '';
public static $db_prefix = '';