wovnrb 3.9.0 → 3.10.0

Sign up to get free protection for your applications and to get access to all the features.
data/README.ja.md CHANGED
@@ -1,211 +1,218 @@
1
- # WOVN.io Ruby Library
2
-
3
- For English users: [English](README.en.md)
4
-
5
- WOVN.io Rubyライブラリは、翻訳を提供するためにWOVN.ioを利用したライブラリです。
6
- WOVN.io Ruby ライブラリは Rack Middleware としてパッケージ化されています。
7
-
8
- このドキュメントでは、WOVN.io Rubyをインストールするまでの手順や、セットアップ・設定の流れを説明しています。
9
-
10
- ## 1. インストール
11
-
12
- ### 1.1. WOVN.ioアカウントを作成
13
-
14
- WOVN.io Ruby Libraryを利用するには、WOVN.ioのアカウントが必要です。
15
- アカウントをお持ちでない方は、まずはWOVN.ioに登録してください。
16
-
17
- ### 1.2. ページ追加
18
-
19
- WOVN.ioにログイン後、翻訳したいページを追加します。
20
-
21
- ### 1.3. Rubyアプリケーションの設定
22
-
23
- WOVN.io Ruby ライブラリを使用するには、以下の行を Ruby アプリケーションの Gemfile に挿入します。
24
- WOVN.ioは現在、バージョン2.0.1以上をサポートしています。
25
-
26
- ```ruby
27
- gem 'wovnrb', '>= 2.0.1'
28
- ```
29
-
30
- 以上の設定を行った後、以下のコマンドを実行して、WOVN.io Rubyライブラリをインストールします。
31
-
32
- ```bash
33
- bundle install
34
- ```
35
-
36
- ライブラリをインストールしたら、Rubyアプリケーションの設定ファイルに以下を挿入します。
37
-
38
- * Ruby on Rails を使っている場合
39
-
40
- `config/application.rb` または `config/environments/` に以下を挿入します。
41
-
42
- ```ruby
43
- ...
44
-
45
- config.wovnrb = {
46
- :project_token => 'EnS!t3',
47
- :default_lang => 'ja',
48
- :supported_langs => ['ja', en'],
49
- :url_pattern => 'path'
50
- }
51
-
52
- ...
53
- ```
54
-
55
- * Sinatra を使っている場合
56
-
57
- アプリケーション・ファイルまたは `config.ru` のいずれかに以下を挿入します。
58
-
59
- ```ruby
60
- ...
61
-
62
- require 'wovnrb'
63
-
64
- use Wovnrb::Interceptor, {
65
- :project_token => 'EnS!t3',
66
- :default_lang => 'ja',
67
- :supported_langs => ['ja', 'en'],
68
- :url_pattern => 'path'
69
- }
70
-
71
- ...
72
- ```
73
-
74
- セットアップが完了したら、Rubyアプリケーションを起動し、WOVN.ioライブラリが正常に動作していることを確認します。
75
-
76
- ## 2. パラメータ設定
77
-
78
- 以下に、WOVN.io Ruby ライブラリの有効なパラメータの一覧を示します。
79
-
80
- パラメータ名 | 必須 | デフォルト設定
81
- ------------------ | -------- | ----------------
82
- project_token | yes | ''
83
- default_lang | yes | 'ja'
84
- supported_langs | yes | ['ja', 'en']
85
- url_pattern | yes | 'path'
86
- lang_param_name | | 'wovn'
87
- query | | []
88
- ignore_class | | []
89
- translate_fragment | | true
90
- ignore_paths | | []
91
- custom_domain_langs| | {}
92
-
93
- ### 2.1. project_token
94
-
95
- WOVN.ioアカウントのプロジェクトトークンを設定します。このパラメータは必須です。
96
-
97
- ### 2.2. default_lang
98
-
99
- これはRubyアプリケーションのデフォルト言語を設定します。デフォルト値は英語('en')です。
100
-
101
- リクエストされたページで、デフォルトの言語パラメータが URL に含まれている場合、リクエストは翻訳前にリダイレクトされます。
102
- このために `default_lang` パラメータを使用します。
103
-
104
- `default_lang` が 'en' に設定されている時に、以下のURLへのリクエストを受信した場合。
105
-
106
- https://wovn.io/en/contact
107
-
108
- ライブラリは以下のURLにリダイレクトされます。
109
-
110
- https://wovn.io/contact
111
-
112
- ### 2.3. supported_langs
113
-
114
- これは、ウェブサイトで使用されている言語(翻訳元を含む)をライブラリに伝えます。
115
- この設定では、SEO(検索エンジン最適化)に必要なメタデータを挿入することができます。
116
-
117
- ウェブサイトが英語で、WOVN.ioを使って日本語にローカライズしている場合は、以下の設定にしてください。
118
- ```
119
- :supported_langs => ['en', 'ja']
120
- ```
121
- **注意:** 配列の言語の順番は関係ありません。
122
-
123
- ### 2.4. url_pattern
124
-
125
- ライブラリはRubyアプリケーションの中で、翻訳されるURLを新たに追加することで動作します。
126
- urlの種類は `url_pattern` パラメータで設定できます。設定できるタイプは4種類。
127
-
128
-
129
- パラメータ | 翻訳されたページのURL | 備考
130
- --------------- | ------------------------------- | -------
131
- 'path' | https://wovn.io/ja/contact | デフォルト値、何も設定されていない場合、 `url_pattern` のデフォルト値はこの値になります
132
- 'subdomain' | https://ja.wovn.io/contact | DNSの設定が必要です
133
- 'query' | https://wovn.io/contact?wovn=ja | セットアップを完了するために必要なアプリケーションへの変更の最小量
134
- 'custom_domain' | `custom_domain_langs`に設定された値 | [2.10.項](#210-custom_domain_langs)を参照してください。
135
-
136
- ※ 上記は、以下のURLを使用してライブラリが翻訳したURLの例です。
137
-
138
- https://wovn.io/contact
139
-
140
- ### 2.5. lang_param_name
141
-
142
- このパラメータは `url_pattern` が `query` に設定されている場合のみ有効です。
143
-
144
- ページの言語を指定するためのクエリパラメータ名を設定することができます。
145
-
146
- この設定のデフォルト値は `wovn` であり、翻訳された英語のページのURLが `https://my-website.com/index.php?wovn=en` という形式になります。
147
- 代わりに `lang` に値を設定すると、URLの例は `https://my-website.com/index.php?lang=en` という形式になります。
148
-
149
- ### 2.6. query
150
-
151
- WOVN.ioは翻訳されたページを検索する際にクエリパラメータを無視します。
152
- 翻訳ページのURLにクエリパラメータを追加したい場合は、`query` パラメータを設定する必要があります。(WOVN.ioも設定する必要があります)
153
-
154
- https://wovn.io/ja/contact?os=mac&keyboard=us
155
-
156
- `default_lang` が `en` でクエリが空に設定されている場合、上記のURLは以下のURLに変更され、ページの翻訳を検索するようになります。
157
-
158
- https://wovn.io/contact
159
-
160
- `default_lang` が `en` でクエリが `os` に設定されている場合、上記のURLは以下のURLに変更され、ページの翻訳を検索するようになります。
161
-
162
- https://wovn.io/contact?os=mac
163
-
164
- ### 2.7. ignore_class
165
-
166
- これは「無視するクラス」を設定し、WOVNがこの配列に含まれるクラスを持つHTML要素を変換できないようにします。
167
-
168
- ### 2.8. translate_fragment
169
-
170
- このオプションでは、部分的なHTMLコンテンツの翻訳を無効にすることができます。
171
- デフォルトでは、部分的なHTMLコンテンツは翻訳されますが、ウィジェットのスニペットは追加されません。
172
- `translate_fragment` を `false` に設定すると、HTMLの一部が翻訳されないようになります。
173
-
174
- ### 2.9. ignore_paths
175
-
176
- このパラメータは、WOVN.rbが指定されたディレクトリ内のコンテンツをローカライズしないように指示します。
177
- 指定されたディレクトリは、URLパスの先頭にのみマッチします。
178
- 例えば、ウェブサイトの管理者ディレクトリをローカライズしたくない場合は、WOVN.rbの設定に次のように追加します。
179
-
180
- ```
181
- 'ignore_paths' => ['/admin/']
182
- ```
183
-
184
- ### 2.10. custom_domain_langs
185
-
186
- このパラメータは、カスタムドメイン言語パターンの場合(`url_pattern = custom_domain` が設定されている場合)のみ有効です。
187
- カスタムドメイン言語パターン使用時は必須パラメータです。
188
- `supported_langs` で設定した全ての言語と元言語に、必ず `custom_domain_langs` を設定してください。
189
-
190
- ```ruby
191
- config.wovnrb = {
192
- # ...
193
- :custom_domain_langs => {
194
- 'en' => { 'url' => 'wovn.io/en' },
195
- 'ja' => { 'url' => 'ja.wovn.io' },
196
- 'fr' => { 'url' => 'fr.wovn.co.jp' }
197
- }
198
- }
199
- ```
200
-
201
- 上記の例では、 `wovn.io/en/*` にマッチするリクエストは英語のリクエストとして扱われます。
202
- それ以外の `ja.wovn.io/*` にマッチするリクエストは日本語のリクエストとして扱われます。
203
- また、 `fr.wovn.co.jp/*` にマッチするリクエストはフランス語のリクエストとして扱われます。
204
- 例えば、`http://ja.wovn.io/about.html` の日本語ページは、`http://wovn.io/en/about.html` という英語ページのURLを持つことになります。
205
-
206
- 必ず `url_pattern = custom_domain`と`custom_domain_langs` は一緒に使用してください。
207
-
208
- `supported_langs` で宣言された各言語に `custom_domain_langs` を与えなければなりません。
209
-
210
- オリジナル言語のために宣言されたパスは、実際のウェブサーバーの構造と一致していなければなりません。
211
- この設定を使用して、オリジナル言語のリクエストパスを変更することはできません。
1
+ # WOVN.io Ruby Library
2
+
3
+ For English users: [English](README.en.md)
4
+
5
+ WOVN.io Rubyライブラリは、翻訳を提供するためにWOVN.ioを利用したライブラリです。
6
+ WOVN.io Ruby ライブラリは Rack Middleware としてパッケージ化されています。
7
+
8
+ このドキュメントでは、WOVN.io Rubyをインストールするまでの手順や、セットアップ・設定の流れを説明しています。
9
+
10
+ ## 1. インストール
11
+
12
+ ### 1.1. WOVN.ioアカウントを作成
13
+
14
+ WOVN.io Ruby Libraryを利用するには、WOVN.ioのアカウントが必要です。
15
+ アカウントをお持ちでない方は、まずはWOVN.ioに登録してください。
16
+
17
+ ### 1.2. ページ追加
18
+
19
+ WOVN.ioにログイン後、翻訳したいページを追加します。
20
+
21
+ ### 1.3. Rubyアプリケーションの設定
22
+
23
+ WOVN.io Ruby ライブラリを使用するには、以下の行を Ruby アプリケーションの Gemfile に挿入します。
24
+ WOVN.ioは現在、バージョン2.0.1以上をサポートしています。
25
+
26
+ ```ruby
27
+ gem 'wovnrb', '>= 2.0.1'
28
+ ```
29
+
30
+ 以上の設定を行った後、以下のコマンドを実行して、WOVN.io Rubyライブラリをインストールします。
31
+
32
+ ```bash
33
+ bundle install
34
+ ```
35
+
36
+ ライブラリをインストールしたら、Rubyアプリケーションの設定ファイルに以下を挿入します。
37
+
38
+ * Ruby on Rails を使っている場合
39
+
40
+ `config/application.rb` または `config/environments/` に以下を挿入します。
41
+
42
+ ```ruby
43
+ ...
44
+
45
+ config.wovnrb = {
46
+ :project_token => 'EnS!t3',
47
+ :default_lang => 'ja',
48
+ :supported_langs => ['ja', en'],
49
+ :url_pattern => 'path'
50
+ }
51
+
52
+ ...
53
+ ```
54
+
55
+ * Sinatra を使っている場合
56
+
57
+ アプリケーション・ファイルまたは `config.ru` のいずれかに以下を挿入します。
58
+
59
+ ```ruby
60
+ ...
61
+
62
+ require 'wovnrb'
63
+
64
+ use Wovnrb::Interceptor, {
65
+ :project_token => 'EnS!t3',
66
+ :default_lang => 'ja',
67
+ :supported_langs => ['ja', 'en'],
68
+ :url_pattern => 'path'
69
+ }
70
+
71
+ ...
72
+ ```
73
+
74
+ セットアップが完了したら、Rubyアプリケーションを起動し、WOVN.ioライブラリが正常に動作していることを確認します。
75
+
76
+ ## 2. パラメータ設定
77
+
78
+ 以下に、WOVN.io Ruby ライブラリの有効なパラメータの一覧を示します。
79
+
80
+ パラメータ名 | 必須 | デフォルト設定
81
+ ------------------ | -------- | ----------------
82
+ project_token | yes | ''
83
+ default_lang | yes | 'ja'
84
+ supported_langs | yes | ['ja', 'en']
85
+ url_pattern | yes | 'path'
86
+ lang_param_name | | 'wovn'
87
+ query | | []
88
+ ignore_class | | []
89
+ translate_fragment | | true
90
+ ignore_paths | | []
91
+ custom_domain_langs| | {}
92
+ insert_hreflangs | | true
93
+
94
+ ### 2.1. project_token
95
+
96
+ WOVN.ioアカウントのプロジェクトトークンを設定します。このパラメータは必須です。
97
+
98
+ ### 2.2. default_lang
99
+
100
+ これはRubyアプリケーションのデフォルト言語を設定します。デフォルト値は英語('en')です。
101
+
102
+ リクエストされたページで、デフォルトの言語パラメータが URL に含まれている場合、リクエストは翻訳前にリダイレクトされます。
103
+ このために `default_lang` パラメータを使用します。
104
+
105
+ `default_lang` が 'en' に設定されている時に、以下のURLへのリクエストを受信した場合。
106
+
107
+ https://wovn.io/en/contact
108
+
109
+ ライブラリは以下のURLにリダイレクトされます。
110
+
111
+ https://wovn.io/contact
112
+
113
+ ### 2.3. supported_langs
114
+
115
+ これは、ウェブサイトで使用されている言語(翻訳元を含む)をライブラリに伝えます。
116
+ この設定では、SEO(検索エンジン最適化)に必要なメタデータを挿入することができます。
117
+
118
+ ウェブサイトが英語で、WOVN.ioを使って日本語にローカライズしている場合は、以下の設定にしてください。
119
+ ```
120
+ :supported_langs => ['en', 'ja']
121
+ ```
122
+ **注意:** 配列の言語の順番は関係ありません。
123
+
124
+ ### 2.4. url_pattern
125
+
126
+ ライブラリはRubyアプリケーションの中で、翻訳されるURLを新たに追加することで動作します。
127
+ urlの種類は `url_pattern` パラメータで設定できます。設定できるタイプは4種類。
128
+
129
+
130
+ パラメータ | 翻訳されたページのURL | 備考
131
+ --------------- | ------------------------------- | -------
132
+ 'path' | https://wovn.io/ja/contact | デフォルト値、何も設定されていない場合、 `url_pattern` のデフォルト値はこの値になります
133
+ 'subdomain' | https://ja.wovn.io/contact | DNSの設定が必要です
134
+ 'query' | https://wovn.io/contact?wovn=ja | セットアップを完了するために必要なアプリケーションへの変更の最小量
135
+ 'custom_domain' | `custom_domain_langs`に設定された値 | [2.10.項](#210-custom_domain_langs)を参照してください。
136
+
137
+ ※ 上記は、以下のURLを使用してライブラリが翻訳したURLの例です。
138
+
139
+ https://wovn.io/contact
140
+
141
+ ### 2.5. lang_param_name
142
+
143
+ このパラメータは `url_pattern` が `query` に設定されている場合のみ有効です。
144
+
145
+ ページの言語を指定するためのクエリパラメータ名を設定することができます。
146
+
147
+ この設定のデフォルト値は `wovn` であり、翻訳された英語のページのURL `https://my-website.com/index.php?wovn=en` という形式になります。
148
+ 代わりに `lang` に値を設定すると、URLの例は `https://my-website.com/index.php?lang=en` という形式になります。
149
+
150
+ ### 2.6. query
151
+
152
+ WOVN.ioは翻訳されたページを検索する際にクエリパラメータを無視します。
153
+ 翻訳ページのURLにクエリパラメータを追加したい場合は、`query` パラメータを設定する必要があります。(WOVN.ioも設定する必要があります)
154
+
155
+ https://wovn.io/ja/contact?os=mac&keyboard=us
156
+
157
+ `default_lang` が `en` でクエリが空に設定されている場合、上記のURLは以下のURLに変更され、ページの翻訳を検索するようになります。
158
+
159
+ https://wovn.io/contact
160
+
161
+ `default_lang` が `en` でクエリが `os` に設定されている場合、上記のURLは以下のURLに変更され、ページの翻訳を検索するようになります。
162
+
163
+ https://wovn.io/contact?os=mac
164
+
165
+ ### 2.7. ignore_class
166
+
167
+ これは「無視するクラス」を設定し、WOVNがこの配列に含まれるクラスを持つHTML要素を変換できないようにします。
168
+
169
+ ### 2.8. translate_fragment
170
+
171
+ このオプションでは、部分的なHTMLコンテンツの翻訳を無効にすることができます。
172
+ デフォルトでは、部分的なHTMLコンテンツは翻訳されますが、ウィジェットのスニペットは追加されません。
173
+ `translate_fragment` を `false` に設定すると、HTMLの一部が翻訳されないようになります。
174
+
175
+ ### 2.9. ignore_paths
176
+
177
+ このパラメータは、WOVN.rbが指定されたディレクトリ内のコンテンツをローカライズしないように指示します。
178
+ 指定されたディレクトリは、URLパスの先頭にのみマッチします。
179
+ 例えば、ウェブサイトの管理者ディレクトリをローカライズしたくない場合は、WOVN.rbの設定に次のように追加します。
180
+
181
+ ```
182
+ 'ignore_paths' => ['/admin/']
183
+ ```
184
+
185
+ ### 2.10. custom_domain_langs
186
+
187
+ このパラメータは、カスタムドメイン言語パターンの場合(`url_pattern = custom_domain` が設定されている場合)のみ有効です。
188
+ カスタムドメイン言語パターン使用時は必須パラメータです。
189
+ `supported_langs` で設定した全ての言語と元言語に、必ず `custom_domain_langs` を設定してください。
190
+
191
+ ```ruby
192
+ config.wovnrb = {
193
+ # ...
194
+ :custom_domain_langs => {
195
+ 'en' => { 'url' => 'wovn.io/en' },
196
+ 'ja' => { 'url' => 'ja.wovn.io' },
197
+ 'fr' => { 'url' => 'fr.wovn.co.jp' }
198
+ }
199
+ }
200
+ ```
201
+
202
+ 上記の例では、 `wovn.io/en/*` にマッチするリクエストは英語のリクエストとして扱われます。
203
+ それ以外の `ja.wovn.io/*` にマッチするリクエストは日本語のリクエストとして扱われます。
204
+ また、 `fr.wovn.co.jp/*` にマッチするリクエストはフランス語のリクエストとして扱われます。
205
+ 例えば、`http://ja.wovn.io/about.html` の日本語ページは、`http://wovn.io/en/about.html` という英語ページのURLを持つことになります。
206
+
207
+ 必ず `url_pattern = custom_domain`と`custom_domain_langs` は一緒に使用してください。
208
+
209
+ `supported_langs` で宣言された各言語に `custom_domain_langs` を与えなければなりません。
210
+
211
+ オリジナル言語のために宣言されたパスは、実際のウェブサーバーの構造と一致していなければなりません。
212
+ この設定を使用して、オリジナル言語のリクエストパスを変更することはできません。
213
+
214
+ ### 2.11. insert_hreflangs
215
+ このパラメータはhreflang属性を持つlinkタグを挿入するかどうかを指定します。
216
+ 例えば設定が有効の場合、`<link rel="alternate" hreflang="en" href="https://my-website.com/en/">`のように、公開されている言語のタグを挿入します。
217
+
218
+ 設定が無効の場合はタグは挿入せず、元からあるhreflang属性を持ったタグに変更は加えません。