ProcessWire CMSに Linguise 自動翻訳をインストールする

目次

ProcessWire CMS の技術要件

ProcessWire CMSで使用するニューラル自動翻訳には Linguise PHPスクリプト(以下からダウンロード可能)が必要です。Linguiseスクリプトをインストールするには、以下の要件を満たす必要があります。

  • PHP 7以降を実行
  • Apache、LiteSpeed、NGINX、IIS サーバー
  • サーバーでURL書き換えが有効になっていることを確認してください
  • ProcessWire CMS 2.x または 3 以上

1. APIキーを生成する

Linguiseダッシュボードに接続または登録した後、まず新しいドメインを設定し、その設定を保存して API キーを取得する必要があります。

このドキュメントやソース言語、ターゲット言語などの Linguise 登録ドメインに進むには、「その他の PHP」プラットフォームを選択できます。.

ウェブサイトのプラットフォームと翻訳言語の設定

その後、次のものが得られます。

  • メンバーシップを検証するAPIキー
  • 言語切り替え用の Linguise スクリプトへのリンク

 

ウェブサイトの翻訳に関するビデオが掲載されたウェブページのスクリーンショット

APIキーは、 ProcessWire CMSウェブサイトで翻訳を有効にするために必要です。基本的に、APIキーはドメインで有効になっている言語を確認し、コンテンツの自動翻訳を可能にします。

今のところ、API キーをコピーしてクリップボードに保存しておくことができます。.

2. Linguise 翻訳スクリプトをアップロードして接続する

Linguise 翻訳スクリプトは、 ProcessWire CMS がインストールされているサーバーにアップロードする必要があります。

スクリプトをダウンロードしたら、解凍して、 ProcessWire CMS がインストールされているルート フォルダーにアップロードします。

  • ウェブサイトのルートレベル ProcessWire CMSファイルが配置されている場所)にあることを確認してください
  • フォルダ名がデフォルト名の linguise
ProcessWire-CMS-ファイル

Linguise Script Interface にアクセスするにはどうすればいいですか?

Linguiseが完了したら、次のURL形式でウェブサイトにアクセスしてダッシュボードにアクセスできます:
https://www.domain.com/ linguise

ウェブサイトのアドレスに合わせてドメインアドレスを変更します*
Linguise適切な読み取りおよび書き込み権限があることを確認します

パスワードとデータベース接続の設定

スクリプト インターフェイスにアクセスすると、パスワードを作成して希望のデータベースに接続できるセットアップ画面が表示されます。.

あなたはできる:

  • 今後このインターフェースにアクセスする際に必要となるパスワードを設定します。.
  • 設定と好みに応じて、データベースの種類(MySQL または SQLite)を選択します。.

この初期設定により、安全なアクセスが確保され、環境に応じてスクリプトを構成できるようになります。.

MySQLデータベース接続

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

MySQL データベースへの接続を正常に確立するには、情報が正しいことを確認してください。. 

MySQLとSQLiteの違いとは?
MySQLとSQLiteはどちらも、ウェブサイトやアプリケーションのデータの保存と管理によく使われる人気のデータベースシステムです。しかし、それぞれ異なるユースケースを想定して設計されており、いくつかの重要な違いがあります。

機能SQLiteMySQL
設定非常に簡単(SQLiteのインストールが必要)サーバーのセットアップが必要です
ストレージ単一ファイルMySQLサーバーによって管理
パフォーマンス小規模アプリに最適大規模で高トラフィックのシステムに最適
ユースケースローカルアプリ、テスト、小規模サイトウェブアプリ、eコマース、エンタープライズシステム

Linguise スクリプトインターフェース: PHP プラットフォームのセットアップ

これまで Joomla と WordPressのみに対応していた Linguise 翻訳ダッシュボードが、PHPをはじめとする他のプラットフォームにもサポートを拡大しました。このアップデートにより、ユーザーはCMSやフレームワークを問わず、統一されたインターフェースから、表示オプション、フラグスタイル、外観のカスタマイズといった言語設定をシームレスに行うことができます。.

APIインターフェース

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

ディスプレイインターフェース
外観インターフェース
URLの設定と言語スイッチャーの設定は少し技術的であることは承知しておりますが、朗報です!無料でインストールいたします。

3. ProcessWire CMSのURL書き換えを設定する

ProcessWire CMSでは、URL書き換えがデフォルトで有効になっています。有効になっていない場合は、ホスティングプロバイダーから有効化できます。

CMSのProcessWireの.htaccessにある RewriteEngine on の後に、以下のコードをコピーしてください

				
					<IfModule mod_rewrite.c>
  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]
</IfModule>
				
			

最終的に、 ProcessWire CMS .htaccess は次のようになります。

				
					# 8. Enable Apache mod_rewrite (required)
# -----------------------------------------------------------------------------------------------

<IfModule mod_rewrite.c>
  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]
 
  
  # 8A. Optionally (O) set a rewrite base if rewrites are not working properly on your server.
  # -----------------------------------------------------------------------------------------------
				
			

URL を使用して、翻訳されたすべてのページを読み込むことができます。例: www.shop.com /fr/

言語スイッチャーをロードしてみましょう。.

URLの設定と言語スイッチャーの設定は少し技術的であることは承知しておりますが、朗報です!無料でインストールいたします。

4.言語スイッチャーを有効にする

4.1 Linguise JSスクリプトをロードする

HTML ヘッダーにフラグと代替 URL を含む言語スイッチャーを表示するには、 Linguise JS スクリプト リンクをすべての ProcessWire CMS ページに読み込む必要があります (SEO 目的)。

スクリプト リンクをコピーするには、 Linguise ダッシュボードからドメイン設定に移動し、スクリプト リンクをコピーします。.

モジュールのインストール手順を示すグラフ。グラフには青い点線が上向きに表示されています。.

ProcessWire でこのコードを読み込む最も簡単な方法は、ウェブサイトのヘッダー内に追加するか、セクション。ProcessWire CMSProcessWire ヘッダーにスクリプトをロードするための特定のファイルが付属しています。

_main.phpにあります /templates/_main.phpに移動すると見つかります。スクリプトファイルを編集して、ヘッダーセクションにスクリプトリンクを追加してください。

フラグ付きの言語スイッチャーが自動的に読み込まれるようになりました。

ProcessWireスクリプト CMS

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

SEOに関する重要な注意:設定する言語の数はSEOに大きな影響を与えます。翻訳言語を設定する際、インデックス登録されたページ数が多い場合(500ページ以上)、検索エンジンによる処理に時間がかかる可能性があります。これは、元の言語でのSEOに影響を与える可能性があります。そのため、最初は最大5言語を追加し、インデックス登録が完了したら、月に3言語ずつまとめて追加することをお勧めします。

言語スイッチャーの設定

言語スイッチャーは、 Linguise ダッシュボード > 設定 > 言語フラグ表示からカスタマイズできます。ここで行った変更はすべてウェブサイトに反映されます。.

英語のオプションを含む言語設定を選択するためのドロップダウン メニューを示すスクリーンショット。.

画面右側に言語スイッチャーのプレビューが表示されます。設定できる要素は以下のとおりです。

  • 3つのレイアウト: 並べる、ドロップダウン、ポップアップ
  • 言語スイッチャーの位置
  • 言語切替コンテンツ
  • 英語または母国語での言語名
  • フラグの形状とサイズ
  • 色とボックスシャドウ

ProcessWire コンテンツに言語スイッチャーをロードする

フラグ位置のインプレース

ProcessWire内の特定の場所に言語スイッチャーを表示するには、位置を「In place」に設定する必要があります。Linguise
で位置を設定したらLinguiseを含めることができます。以下のコードをクリックすると、クリップボードにコピーされます。

				
					<div>&#091;linguise&#093;</div>
				
			

追加されると、フロントエンドで、コードを追加した HTML 領域にフラグと言語名が表示されます。.

ローカルキャッシュシステムオプションを有効にする

オプションとして、URLと関連する多言語コンテンツを保存するローカルキャッシュシステムを有効にすることで、ページの表示速度を向上できます。ローカルキャッシュは、 Linguise サーバーとお客様のウェブサイトサーバー間のデータ転送を節約します。このキャッシュは、ページが既に翻訳済みで更新されていない場合にのみ使用されます。優先的に保持されるキャッシュは、最も閲覧されている多言語ページのキャッシュです。.

これを補完するために、保存するキャッシュの量をMB単位で定義できます。次の例では、キャッシュが有効になっており、保持するキャッシュの量は500MBです。.

Laravel 翻訳設定コード例。翻訳を設定するための設定。.
				
					    /** Basic configuration **/
    public $cache_enabled = true;
    public $cache_max_size = 500; // In megabyte
				
			

Windows IIS サーバーでの自動翻訳

Web.configファイルに、ウェブサイトビルダーに対応する行を追加します。
この行は、他のリダイレクト、特にPHPメインファイルへのリダイレクトよりも前に設定する必要があります。

				
					<rule name="Linguise" stopProcessing="true">
<match url="^(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)(?:$|/)(.*)$" ignoreCase="false" />
        <conditions logicalGrouping="MatchAll" trackAllCaptures="false" />
            <action type="Rewrite" url="linguise/linguise.php?linguise_language={R:1}&amp;original_url={R:2}" appendQueryString="true" />
</rule>
				
			

NGINXサーバーでの自動翻訳

NGINX サーバー構成ブロックに CMS に対応する行を追加します。.
これは、他のリダイレクト、特に PHP メイン ファイル内のリダイレクトの前に設定する必要があります。.
				
					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;