目次
TYPO3 CMSの技術要件
TYPO3 CMSで使用するニューラル自動翻訳には、PHPスクリプトの使用が必要です(以下からダウンロード可能)。Linguiseスクリプトをインストールするには、次の要件が必要です:
- PHP 7+ を実行
- Apache、LiteSpeed、NGINX、IIS サーバー
- サーバーでURLリライトが有効になっていることを確認してください
- TYPO3 CMS 9以上
1. API キーを生成する
Linguise ダッシュボードへの接続または登録が完了したら、 Linguise dashboard、まず新しいドメインを設定し、その設定を保存して API キーを取得する必要があります。
このドキュメントやソース言語・対象言語のように、Linguise の登録ドメインを進めるために “Other PHP” プラットフォームを選択できます。.
その後、以下が取得できます:
- メンバーシップを検証する API キー
- 言語スイッチャー用の Linguise スクリプトへのリンク
APIキーは、TYPO3 CMSサイトで翻訳を有効化するために必要なものです。基本的に、APIキーはドメインで有効化されている言語を確認し、コンテンツの自動翻訳を可能にします。.
今のところ、APIキーをコピーしてクリップボードに保存できます。.
2. Linguise 翻訳スクリプトをアップロードして接続する
Linguise翻訳スクリプトは、TYPO3 CMSがインストールされているサーバーにアップロードする必要があります。
スクリプトをダウンロードしたら、解凍して、TYPO3 CMSがインストールされているルートフォルダーにアップロードしてください。.
- 必ずそれが ルートレベル あなたのウェブサイト (TYPO3 CMS ファイルが配置されている場所)
- フォルダーが デフォルト名 「linguise」
Linguiseスクリプトインターフェースへのアクセス方法は?
Linguise のインストールが完了したら、次の URL 形式でウェブサイトにアクセスしてダッシュボードに入ることができます:
https://www.domain.com/linguise
ウェブサイトのアドレスに合わせてドメインアドレスを変更してください*
Linguise に適切な読み取り・書き込み権限があることを確認してください*
パスワードとデータベース接続の設定
スクリプトインターフェースにアクセスすると、設定画面が表示され、パスワードを作成し、希望のデータベースに接続できます。.
以下が可能です:
- このインターフェースへの今後のアクセスに必要となるパスワードを設定してください。.
- データベースの種類を選択してください — MySQL または SQLite のいずれか、設定や好みに応じて。.
この初期設定により安全なアクセスが確保され、環境に合わせてスクリプトを構成できるようになります。.
MySQL データベース接続
MySQL を選択した場合、以下の MySQL 設定項目の接続詳細を入力する別のインターフェースが表示されます。
情報が正しいことを確認し、MySQL データベースへの接続を成功させてください。.
MySQL vs SQLite – What’s の違いは何ですか?
MySQL と SQLite は、ウェブサイトやアプリケーションのデータを保存・管理するために使用される人気のデータベースシステムです。ただし、用途が異なり、いくつかの重要な違いがあります:
| 機能 | SQLite | MySQL |
|---|---|---|
| 設定 | 非常に簡単(SQLite のインストールが必要) | サーバーの設定が必要 |
| ストレージ | 単一ファイル | MySQL サーバーによって管理されます |
| パフォーマンス | 小規模アプリに最適 | 大規模でトラフィックの多いシステムに最適 |
| ユースケース | ローカルアプリ、テスト、小規模サイト | ウェブアプリ、eコマース、エンタープライズシステム |
Linguise スクリプトインターフェース:PHP プラットフォームの設定
Linguise 翻訳ダッシュボードは、以前は Joomla と WordPress のみで利用可能でしたが、現在は PHP およびその他のプラットフォームにも対応しています。このアップデートにより、ユーザーは CMS やフレームワークに関係なく、統一されたインターフェースから直接、言語設定—表示オプションやフラッグスタイル、外観カスタマイズなど—をシームレスに構成できるようになります。.
管理者は Linguise の設定をより効率的に管理でき、言語選択ポップアップや影効果、地域別フラグ選択バリエーションなどの一貫した機能を備えています。ダッシュボードはユーザーフレンドリーなデザインを保ちつつ、多様なウェブ環境に対する互換性を拡大しています。.
3. TYPO3 CMS の URL 書き換えを設定
デフォルトでは、URL 書き換えは TYPO3 CMS で有効です。もしそうでない場合は、ホスティングプロバイダーから有効化できます。.
.htaccessで言語別のURLを設定する必要があります。以下のコードを、コードの後にコピーしてください “RewriteEngine on” デフォルトで利用可能 TYPO3 CMS .htaccess.
# PHPバージョンを7.4に設定 >> LinguiseがPHP v7.4で動作するように、Rewriteルールの前にこのコードを追加してください AddHandler application/x-httpd-php74 .php 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]
最後に、あなたのTYPO3 CMS .htaccessファイルは次のようになるはずです:
# PHPバージョンを7.4に設定 AddHandler application/x-httpd-php74 .php # URL書き換えを有効化 RewriteEngine On RewriteBase /typo10/ # RewriteBaseをサブフォルダに設定 # サブフォルダで始まるかチェックする条件を追加 RewriteCond %{REQUEST_URI} !^/typo10/ # サブフォルダで始まらないリクエストをサブフォルダに含めるよう書き換え RewriteRule ^(.*)$ /typo10/$1 [L] RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteCond %{REQUEST_FILENAME} !-l 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)(?:$|/)(.*)$ /typo10/linguise/linguise.php?linguise_language=$1&original_url=$2 [L,QSA]
URL を使用して、すべての翻訳ページをロードできます。例: www.shop.com/fr/
言語スイッチャーをロードします。.
4. 言語スイッチャーを有効化
4.1 Linguise JS スクリプトをロード
Linguise JS スクリプトリンクは、すべての TYPO3 CMS ページで読み込まれる必要があります。フラグと代替 URL を含む言語スイッチャーを HTML ヘッダーに表示するためです(SEO 目的)。.
スクリプトリンクをコピーするには、Linguise ダッシュボードのドメイン設定へ移動し、スクリプトリンクをコピーしてください。.
このコードをTYPO3 CMSにロードする最も簡単な方法は、ウェブサイトのヘッダー内に追加することですまたは <head> コード。 TYPO3 CMSは特別な環境を備えており、ヘッダーにスクリプトを追加するための特定のファイルを作成する必要があります。
以下の手順に従うことでこれを実現できます:
- ログイン Typo3 管理者、
- 選択 “ページ” > “+コンテンツ” > クリックして 特別要素タブ > プレーンHTML
以下のように、HTMLコードセクションにスクリプトリンクを含めるようにスクリプトファイルを編集します。.
言語スイッチャーはデフォルトで、ウェブサイトの右上の浮かんだ位置に表示されます。次の章で説明されているように、カスタマイズしていただいて構いません。.
SEO 重要な注意点: 設定する言語数は SEO に大きな影響を与えます。翻訳言語を設定する際、インデックスされたページが多数(>500)ある場合、検索エンジンの処理に多くの時間がかかることがあります。これにより、元の言語での SEO に影響が出る可能性があります。That’は、最初に最大5言語を追加することを推奨する理由です。その後、インデックスが完了したら、月に3言語ずつ追加できます。
TYPO3 CMSで言語スイッチャーを設定する
言語スイッチャーは Linguise ダッシュボード > 設定 > 言語フラッグ表示 からカスタマイズできます。ここでのすべての変更はウェブサイトに反映されます。.
画面の右側に言語スイッチャーのプレビューがあります。設定できる要素は以下の通りです:
- 3つのレイアウト:横並び、ドロップダウン、ポップアップ
- 言語スイッチャーの位置
- 言語スイッチャーの内容
- 英語または母国語での言語名
- 旗の形状とサイズ
- 色とボックスシャドウ
TYPO3 CMSコンテンツに言語スイッチャーをロードする
特定の場所に言語スイッチャーを表示するには、TYPO3 コンテンツ内で位置を “In place” に設定する必要があります。
Linguise ダッシュボードで位置を設定したら、以下のショートコードを追加して組み込むことができます。下のコードをクリックしてクリップボードにコピーしてください。
[linguise]
一度それ’が追加されたら、フロントエンドであなた’はフラグと語名が表示され、コードを追加したHTML領域に表示されます。.
ローカルキャッシュシステムオプションを有効化する
オプションとして、URL とそれに関連する多言語コンテンツを保存し、ページを高速に提供するローカルキャッシュシステムを有効化できます。ローカルキャッシュは Linguise サーバーとウェブサイトサーバー間のデータ転送を削減します。キャッシュは、ページが既に翻訳済みで更新されていない場合にのみ使用されます。優先的に保持されるキャッシュは、最も閲覧された多言語ページのキャッシュです。.
それを補完するために、キャッシュの容量を MB 単位で定義できます。以下の例では、キャッシュが有効化され、保持するキャッシュ容量は 500 MB です。.
/** 基本設定 **/ public $cache_enabled = true; public $cache_max_size = 500; // メガバイト単位
NGINX サーバーでの自動翻訳
書き換え ^/(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 最後;
Windows IIS サーバー上での自動翻訳
Web.config ファイルに、あなたのウェブサイトビルダーに対応する行を追加してください。
他のリダイレクトよりも先に設定すべきです。特に、PHP のメインファイルへのリダイレクトの前に設定してください。
SQLite から MySQL へ
Configuration.php の中には、サーバーに SQLite がインストールされていない場合に備えて、SQLite の代わりに MySQL の使用を強制する設定があります。.
この場合、MySQL の情報を入力する必要があります Configuration.php ファイルのこの部分:
/** 高度なデータベース構成 **/ /* * SQLiteを使用したくない場合は、MySQLを使用できます * そのためには、以下の変数を入力する必要があります * Linguiseがテーブルを作成します */ public static $db_host = ''; public static $db_user = ''; public static $db_password = ''; public static $db_name = ''; public static $db_prefix = '';