@intlayer/docs 6.0.0 → 6.0.2-canary.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/blog.cjs.map +1 -1
- package/dist/cjs/common.cjs +6 -5
- package/dist/cjs/common.cjs.map +1 -1
- package/dist/cjs/generated/blog.entry.cjs +318 -1863
- package/dist/cjs/generated/blog.entry.cjs.map +1 -1
- package/dist/cjs/generated/docs.entry.cjs +1317 -6282
- package/dist/cjs/generated/docs.entry.cjs.map +1 -1
- package/dist/cjs/generated/frequentQuestions.entry.cjs +197 -1182
- package/dist/cjs/generated/frequentQuestions.entry.cjs.map +1 -1
- package/dist/cjs/generated/legal.entry.cjs +43 -84
- package/dist/cjs/generated/legal.entry.cjs.map +1 -1
- package/dist/esm/blog.mjs.map +1 -1
- package/dist/esm/common.mjs +2 -5
- package/dist/esm/common.mjs.map +1 -1
- package/dist/esm/generated/blog.entry.mjs +318 -1863
- package/dist/esm/generated/blog.entry.mjs.map +1 -1
- package/dist/esm/generated/docs.entry.mjs +1317 -6282
- package/dist/esm/generated/docs.entry.mjs.map +1 -1
- package/dist/esm/generated/frequentQuestions.entry.mjs +197 -1182
- package/dist/esm/generated/frequentQuestions.entry.mjs.map +1 -1
- package/dist/esm/generated/legal.entry.mjs +43 -84
- package/dist/esm/generated/legal.entry.mjs.map +1 -1
- package/dist/types/blog.d.ts +1 -1
- package/dist/types/blog.d.ts.map +1 -1
- package/dist/types/common.d.ts +1 -1
- package/dist/types/common.d.ts.map +1 -1
- package/dist/types/generated/blog.entry.d.ts +1 -1
- package/dist/types/generated/blog.entry.d.ts.map +1 -1
- package/dist/types/generated/docs.entry.d.ts +2 -1
- package/dist/types/generated/docs.entry.d.ts.map +1 -1
- package/dist/types/generated/frequentQuestions.entry.d.ts +1 -1
- package/dist/types/generated/frequentQuestions.entry.d.ts.map +1 -1
- package/dist/types/generated/legal.entry.d.ts +1 -1
- package/dist/types/generated/legal.entry.d.ts.map +1 -1
- package/docs/ar/intlayer_CMS.md +261 -85
- package/docs/ar/releases/v6.md +273 -0
- package/docs/ar/roadmap.md +1 -3
- package/docs/ar/vs_code_extension.md +94 -63
- package/docs/de/intlayer_CMS.md +247 -65
- package/docs/de/releases/v6.md +298 -0
- package/docs/de/roadmap.md +1 -3
- package/docs/de/vs_code_extension.md +89 -58
- package/docs/en/configuration.md +9 -2
- package/docs/en/intlayer_CMS.md +205 -23
- package/docs/en/intlayer_cli.md +4 -4
- package/docs/en/intlayer_visual_editor.md +7 -6
- package/docs/en/intlayer_with_nextjs_14.md +17 -1
- package/docs/en/intlayer_with_nextjs_15.md +17 -1
- package/docs/en/releases/v6.md +268 -0
- package/docs/en/roadmap.md +1 -3
- package/docs/en/vs_code_extension.md +79 -49
- package/docs/en-GB/intlayer_CMS.md +216 -52
- package/docs/en-GB/releases/v6.md +297 -0
- package/docs/en-GB/roadmap.md +1 -3
- package/docs/en-GB/vs_code_extension.md +79 -48
- package/docs/es/intlayer_CMS.md +257 -84
- package/docs/es/releases/v6.md +274 -0
- package/docs/es/roadmap.md +1 -3
- package/docs/es/vs_code_extension.md +90 -60
- package/docs/fr/intlayer_CMS.md +250 -68
- package/docs/fr/releases/v6.md +274 -0
- package/docs/fr/roadmap.md +1 -3
- package/docs/fr/vs_code_extension.md +94 -63
- package/docs/hi/intlayer_CMS.md +253 -77
- package/docs/hi/releases/v6.md +273 -0
- package/docs/hi/roadmap.md +1 -3
- package/docs/hi/vs_code_extension.md +92 -61
- package/docs/it/intlayer_CMS.md +251 -73
- package/docs/it/releases/v6.md +273 -0
- package/docs/it/roadmap.md +1 -3
- package/docs/it/vs_code_extension.md +94 -63
- package/docs/ja/intlayer_CMS.md +282 -97
- package/docs/ja/releases/v6.md +273 -0
- package/docs/ja/roadmap.md +1 -3
- package/docs/ja/vs_code_extension.md +99 -68
- package/docs/ko/intlayer_CMS.md +267 -93
- package/docs/ko/releases/v6.md +273 -0
- package/docs/ko/roadmap.md +1 -3
- package/docs/ko/vs_code_extension.md +88 -57
- package/docs/pt/intlayer_CMS.md +261 -83
- package/docs/pt/releases/v6.md +273 -0
- package/docs/pt/roadmap.md +1 -3
- package/docs/pt/vs_code_extension.md +89 -58
- package/docs/ru/intlayer_CMS.md +240 -65
- package/docs/ru/releases/v6.md +274 -0
- package/docs/ru/roadmap.md +1 -1
- package/docs/ru/vs_code_extension.md +83 -52
- package/docs/tr/intlayer_CMS.md +278 -96
- package/docs/tr/intlayer_with_nextjs_page_router.md +1 -1
- package/docs/tr/intlayer_with_tanstack.md +3 -0
- package/docs/tr/releases/v6.md +273 -0
- package/docs/tr/roadmap.md +1 -1
- package/docs/tr/vs_code_extension.md +100 -71
- package/docs/zh/intlayer_CMS.md +257 -76
- package/docs/zh/releases/v6.md +273 -0
- package/docs/zh/roadmap.md +1 -3
- package/docs/zh/vs_code_extension.md +99 -68
- package/package.json +9 -8
- package/src/blog.ts +1 -1
- package/src/common.ts +2 -6
- package/src/generated/blog.entry.ts +323 -1864
- package/src/generated/docs.entry.ts +1317 -6278
- package/src/generated/frequentQuestions.entry.ts +202 -1183
- package/src/generated/legal.entry.ts +48 -85
package/docs/tr/intlayer_CMS.md
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
---
|
|
2
|
-
createdAt: 2025-
|
|
3
|
-
updatedAt: 2025-
|
|
2
|
+
createdAt: 2025-08-23
|
|
3
|
+
updatedAt: 2025-08-23
|
|
4
4
|
title: Intlayer CMS | İçeriğinizi Intlayer CMS'ye Dışa Aktarın
|
|
5
|
-
description:
|
|
5
|
+
description: İçeriğinizin yönetimini ekibinize devretmek için içeriğinizi Intlayer CMS'ye dışa aktarın.
|
|
6
6
|
keywords:
|
|
7
7
|
- CMS
|
|
8
|
-
- Görsel
|
|
8
|
+
- Görsel Editör
|
|
9
9
|
- Uluslararasılaştırma
|
|
10
10
|
- Dokümantasyon
|
|
11
11
|
- Intlayer
|
|
@@ -21,43 +21,43 @@ youtubeVideo: https://www.youtube.com/watch?v=UDDTnirwi_4
|
|
|
21
21
|
|
|
22
22
|
# Intlayer İçerik Yönetim Sistemi (CMS) Dokümantasyonu
|
|
23
23
|
|
|
24
|
-
<iframe title="Web Uygulamanız için
|
|
24
|
+
<iframe title="Görsel Editör + Web Uygulamanız için CMS: Intlayer Açıklaması" class="m-auto aspect-[16/9] w-full overflow-hidden rounded-lg border-0" allow="autoplay; gyroscope;" loading="lazy" width="1080" height="auto" src="https://www.youtube.com/embed/UDDTnirwi_4?autoplay=0&origin=http://intlayer.org&controls=0&rel=1"/>
|
|
25
25
|
|
|
26
|
-
Intlayer CMS, bir Intlayer projesinin içeriğini dışa aktarmanıza
|
|
26
|
+
Intlayer CMS, bir Intlayer projesinin içeriğini dışa aktarmanıza olanak tanıyan bir uygulamadır.
|
|
27
27
|
|
|
28
|
-
Bunun için
|
|
28
|
+
Bunun için Intlayer, 'uzak sözlükler' kavramını tanıtmaktadır.
|
|
29
29
|
|
|
30
30
|

|
|
31
31
|
|
|
32
32
|
## Uzak sözlükleri anlama
|
|
33
33
|
|
|
34
|
-
Intlayer 'yerel' ve 'uzak' sözlükler arasında
|
|
34
|
+
Intlayer, 'yerel' ve 'uzak' sözlükler arasında ayrım yapar.
|
|
35
35
|
|
|
36
|
-
-
|
|
36
|
+
- 'Yerel' sözlük, Intlayer projenizde tanımlanmış bir sözlüktür. Örneğin bir butonun tanımlama dosyası veya navigasyon çubuğunuz gibi. İçeriğinizi dışa aktarmak bu durumda anlamlı değildir çünkü bu içeriğin sık sık değişmesi beklenmez.
|
|
37
37
|
|
|
38
|
-
-
|
|
38
|
+
- 'Uzak' sözlük ise Intlayer CMS aracılığıyla yönetilen bir sözlüktür. Ekibinizin içeriğinizi doğrudan web sitenizde yönetmesine olanak tanıyabilir ve ayrıca A/B test özelliklerini ve SEO otomatik optimizasyonunu kullanmayı hedefler.
|
|
39
39
|
|
|
40
|
-
## Görsel
|
|
40
|
+
## Görsel editör ve CMS karşılaştırması
|
|
41
41
|
|
|
42
|
-
[Intlayer
|
|
42
|
+
[Intlayer Visual](https://github.com/aymericzip/intlayer/blob/main/docs/docs/tr/intlayer_visual_editor.md) editörü, yerel sözlükler için içeriğinizi görsel bir editörde yönetmenizi sağlayan bir araçtır. Bir değişiklik yapıldığında, içerik kod tabanında değiştirilir. Bu, uygulamanın yeniden derleneceği ve yeni içeriği göstermek için sayfanın yeniden yükleneceği anlamına gelir.
|
|
43
43
|
|
|
44
|
-
Buna karşılık, Intlayer CMS, uzak sözlükler için içeriğinizi görsel bir
|
|
44
|
+
Buna karşılık, Intlayer CMS, uzak sözlükler için içeriğinizi görsel bir editörde yönetmenizi sağlayan bir araçtır. Bir değişiklik yapıldığında, içerik kod tabanınızı **etkilemez**. Ve web sitesi otomatik olarak değiştirilen içeriği gösterir.
|
|
45
45
|
|
|
46
46
|
## Entegrasyon
|
|
47
47
|
|
|
48
|
-
|
|
48
|
+
Paketin nasıl kurulacağına dair daha fazla detay için aşağıdaki ilgili bölüme bakınız:
|
|
49
49
|
|
|
50
50
|
### Next.js ile Entegrasyon
|
|
51
51
|
|
|
52
|
-
Next.js ile entegrasyon için [kurulum kılavuzuna](https://github.com/aymericzip/intlayer/blob/main/docs/docs/
|
|
52
|
+
Next.js ile entegrasyon için, [kurulum kılavuzuna](https://github.com/aymericzip/intlayer/blob/main/docs/docs/tr/intlayer_with_nextjs_15.md) bakınız.
|
|
53
53
|
|
|
54
54
|
### Create React App ile Entegrasyon
|
|
55
55
|
|
|
56
|
-
Create React App ile entegrasyon için [kurulum kılavuzuna](https://github.com/aymericzip/intlayer/blob/main/docs/docs/
|
|
56
|
+
Create React App ile entegrasyon için, [kurulum kılavuzuna](https://github.com/aymericzip/intlayer/blob/main/docs/docs/tr/intlayer_with_create_react_app.md) bakınız.
|
|
57
57
|
|
|
58
58
|
### Vite + React ile Entegrasyon
|
|
59
59
|
|
|
60
|
-
Vite + React ile entegrasyon için [kurulum kılavuzuna](https://github.com/aymericzip/intlayer/blob/main/docs/docs/
|
|
60
|
+
Vite + React ile entegrasyon için, [kurulum kılavuzuna](https://github.com/aymericzip/intlayer/blob/main/docs/docs/tr/intlayer_with_vite+react.md) bakınız.
|
|
61
61
|
|
|
62
62
|
## Konfigürasyon
|
|
63
63
|
|
|
@@ -73,16 +73,16 @@ const config: IntlayerConfig = {
|
|
|
73
73
|
* Gerekli
|
|
74
74
|
*
|
|
75
75
|
* Uygulamanın URL'si.
|
|
76
|
-
* Bu, görsel
|
|
76
|
+
* Bu, görsel editörün hedeflediği URL'dir.
|
|
77
77
|
*/
|
|
78
78
|
applicationURL: process.env.INTLAYER_APPLICATION_URL,
|
|
79
79
|
|
|
80
80
|
/**
|
|
81
81
|
* Gerekli
|
|
82
82
|
*
|
|
83
|
-
*
|
|
84
|
-
*
|
|
85
|
-
* Intlayer Dashboard - Projects
|
|
83
|
+
* Editörü etkinleştirmek için Client ID ve client secret gereklidir.
|
|
84
|
+
* Bunlar, içeriği düzenleyen kullanıcıyı tanımlamaya olanak sağlar.
|
|
85
|
+
* Intlayer Dashboard - Projects (https://intlayer.org/dashboard/projects) üzerinden yeni bir client oluşturarak elde edilebilir.
|
|
86
86
|
* clientId: process.env.INTLAYER_CLIENT_ID,
|
|
87
87
|
* clientSecret: process.env.INTLAYER_CLIENT_SECRET,
|
|
88
88
|
*/
|
|
@@ -90,35 +90,49 @@ const config: IntlayerConfig = {
|
|
|
90
90
|
clientSecret: process.env.INTLAYER_CLIENT_SECRET,
|
|
91
91
|
|
|
92
92
|
/**
|
|
93
|
-
*
|
|
93
|
+
* Opsiyonel
|
|
94
94
|
*
|
|
95
|
-
* Intlayer CMS'yi
|
|
95
|
+
* Intlayer CMS'yi kendi sunucunuzda barındırıyorsanız, CMS'nin URL'sini ayarlayabilirsiniz.
|
|
96
96
|
*
|
|
97
97
|
* Intlayer CMS'nin URL'si.
|
|
98
|
-
* Varsayılan olarak https://intlayer.org olarak
|
|
98
|
+
* Varsayılan olarak https://intlayer.org olarak ayarlanmıştır.
|
|
99
99
|
*/
|
|
100
100
|
cmsURL: process.env.INTLAYER_CMS_URL,
|
|
101
|
+
|
|
102
|
+
/**
|
|
103
|
+
* Opsiyonel
|
|
104
|
+
*
|
|
105
|
+
* Intlayer CMS'yi kendi sunucunuzda barındırıyorsanız, backend'in URL'sini ayarlayabilirsiniz.
|
|
106
|
+
*
|
|
107
|
+
* Intlayer CMS'nin URL'si.
|
|
108
|
+
* Varsayılan olarak https://back.intlayer.org olarak ayarlanmıştır.
|
|
109
|
+
*/
|
|
110
|
+
backendURL: process.env.INTLAYER_BACKEND_URL,
|
|
111
|
+
},
|
|
112
|
+
};
|
|
113
|
+
|
|
114
|
+
export default config;
|
|
101
115
|
```
|
|
102
116
|
|
|
103
117
|
```javascript fileName="intlayer.config.mjs" codeFormat="esm"
|
|
104
118
|
/** @type {import('intlayer').IntlayerConfig} */
|
|
105
119
|
const config = {
|
|
106
|
-
// ... diğer
|
|
120
|
+
// ... diğer yapılandırma ayarları
|
|
107
121
|
editor: {
|
|
108
122
|
/**
|
|
109
123
|
* Gerekli
|
|
110
124
|
*
|
|
111
125
|
* Uygulamanın URL'si.
|
|
112
|
-
* Bu, görsel
|
|
126
|
+
* Bu, görsel editörün hedeflediği URL'dir.
|
|
113
127
|
*/
|
|
114
128
|
applicationURL: process.env.INTLAYER_APPLICATION_URL,
|
|
115
129
|
|
|
116
130
|
/**
|
|
117
131
|
* Gerekli
|
|
118
132
|
*
|
|
119
|
-
*
|
|
120
|
-
*
|
|
121
|
-
* Intlayer Dashboard - Projects
|
|
133
|
+
* Editörü etkinleştirmek için Client ID ve client secret gereklidir.
|
|
134
|
+
* Bunlar, içeriği düzenleyen kullanıcıyı tanımlamaya olanak sağlar.
|
|
135
|
+
* Intlayer Dashboard - Projects (https://intlayer.org/dashboard/projects) üzerinde yeni bir client oluşturarak elde edilebilir.
|
|
122
136
|
* clientId: process.env.INTLAYER_CLIENT_ID,
|
|
123
137
|
* clientSecret: process.env.INTLAYER_CLIENT_SECRET,
|
|
124
138
|
*/
|
|
@@ -126,22 +140,22 @@ const config = {
|
|
|
126
140
|
clientSecret: process.env.INTLAYER_CLIENT_SECRET,
|
|
127
141
|
|
|
128
142
|
/**
|
|
129
|
-
*
|
|
143
|
+
* Opsiyonel
|
|
130
144
|
*
|
|
131
|
-
* Intlayer CMS'yi
|
|
145
|
+
* Intlayer CMS'yi kendi sunucunuzda barındırıyorsanız, CMS'nin URL'sini ayarlayabilirsiniz.
|
|
132
146
|
*
|
|
133
147
|
* Intlayer CMS'nin URL'si.
|
|
134
|
-
* Varsayılan olarak https://intlayer.org olarak
|
|
148
|
+
* Varsayılan olarak https://intlayer.org olarak ayarlanmıştır.
|
|
135
149
|
*/
|
|
136
150
|
cmsURL: process.env.INTLAYER_CMS_URL,
|
|
137
151
|
|
|
138
152
|
/**
|
|
139
|
-
*
|
|
153
|
+
* Opsiyonel
|
|
140
154
|
*
|
|
141
|
-
* Intlayer CMS'yi
|
|
155
|
+
* Intlayer CMS'yi kendi sunucunuzda barındırıyorsanız, backend'in URL'sini ayarlayabilirsiniz.
|
|
142
156
|
*
|
|
143
157
|
* Intlayer CMS'nin URL'si.
|
|
144
|
-
* Varsayılan olarak https://back.intlayer.org olarak
|
|
158
|
+
* Varsayılan olarak https://back.intlayer.org olarak ayarlanmıştır.
|
|
145
159
|
*/
|
|
146
160
|
backendURL: process.env.INTLAYER_BACKEND_URL,
|
|
147
161
|
},
|
|
@@ -153,22 +167,22 @@ export default config;
|
|
|
153
167
|
```javascript fileName="intlayer.config.cjs" codeFormat="commonjs"
|
|
154
168
|
/** @type {import('intlayer').IntlayerConfig} */
|
|
155
169
|
const config = {
|
|
156
|
-
// ... diğer
|
|
170
|
+
// ... diğer yapılandırma ayarları
|
|
157
171
|
editor: {
|
|
158
172
|
/**
|
|
159
173
|
* Gerekli
|
|
160
174
|
*
|
|
161
175
|
* Uygulamanın URL'si.
|
|
162
|
-
* Bu, görsel
|
|
176
|
+
* Bu, görsel editörün hedeflediği URL'dir.
|
|
163
177
|
*/
|
|
164
178
|
applicationURL: process.env.INTLAYER_APPLICATION_URL,
|
|
165
179
|
|
|
166
180
|
/**
|
|
167
181
|
* Gerekli
|
|
168
182
|
*
|
|
169
|
-
*
|
|
170
|
-
*
|
|
171
|
-
* Intlayer Dashboard - Projects
|
|
183
|
+
* Editörü etkinleştirmek için Client ID ve client secret gereklidir.
|
|
184
|
+
* Bunlar, içeriği düzenleyen kullanıcıyı tanımlamaya olanak sağlar.
|
|
185
|
+
* Intlayer Dashboard - Projects (https://intlayer.org/dashboard/projects) üzerinden yeni bir client oluşturarak elde edilebilirler.
|
|
172
186
|
* clientId: process.env.INTLAYER_CLIENT_ID,
|
|
173
187
|
* clientSecret: process.env.INTLAYER_CLIENT_SECRET,
|
|
174
188
|
*/
|
|
@@ -176,22 +190,22 @@ const config = {
|
|
|
176
190
|
clientSecret: process.env.INTLAYER_CLIENT_SECRET,
|
|
177
191
|
|
|
178
192
|
/**
|
|
179
|
-
*
|
|
193
|
+
* Opsiyonel
|
|
180
194
|
*
|
|
181
|
-
* Intlayer CMS'yi
|
|
195
|
+
* Intlayer CMS'yi kendi sunucunuzda barındırıyorsanız, CMS'nin URL'sini ayarlayabilirsiniz.
|
|
182
196
|
*
|
|
183
197
|
* Intlayer CMS'nin URL'si.
|
|
184
|
-
* Varsayılan olarak https://intlayer.org olarak
|
|
198
|
+
* Varsayılan olarak https://intlayer.org olarak ayarlanmıştır.
|
|
185
199
|
*/
|
|
186
200
|
cmsURL: process.env.INTLAYER_CMS_URL,
|
|
187
201
|
|
|
188
202
|
/**
|
|
189
|
-
*
|
|
203
|
+
* Opsiyonel
|
|
190
204
|
*
|
|
191
|
-
* Intlayer CMS'yi
|
|
205
|
+
* Intlayer CMS'yi kendi sunucunuzda barındırıyorsanız, backend URL'sini ayarlayabilirsiniz.
|
|
192
206
|
*
|
|
193
|
-
* Intlayer CMS'nin URL'si.
|
|
194
|
-
* Varsayılan olarak https://back.intlayer.org olarak
|
|
207
|
+
* Intlayer CMS'nin backend URL'si.
|
|
208
|
+
* Varsayılan olarak https://back.intlayer.org olarak ayarlanmıştır.
|
|
195
209
|
*/
|
|
196
210
|
backendURL: process.env.INTLAYER_BACKEND_URL,
|
|
197
211
|
},
|
|
@@ -200,74 +214,87 @@ const config = {
|
|
|
200
214
|
module.exports = config;
|
|
201
215
|
```
|
|
202
216
|
|
|
203
|
-
>
|
|
217
|
+
> Eğer bir client ID ve client secret'ınız yoksa, bunları [Intlayer Dashboard - Projects](https://intlayer.org/dashboard/projects) üzerinden yeni bir client oluşturarak edinebilirsiniz.
|
|
204
218
|
|
|
205
|
-
>
|
|
219
|
+
> Mevcut tüm parametreleri görmek için [konfigürasyon dokümantasyonuna](https://github.com/aymericzip/intlayer/blob/main/docs/docs/tr/configuration.md) bakınız.
|
|
206
220
|
|
|
207
|
-
## CMS
|
|
221
|
+
## CMS Kullanımı
|
|
208
222
|
|
|
209
|
-
### Konfigürasyonunuzu
|
|
223
|
+
### Konfigürasyonunuzu Gönderme
|
|
210
224
|
|
|
211
|
-
Intlayer CMS'yi yapılandırmak için [intlayer CLI](https://github.com/aymericzip/intlayer/tree/main/docs/
|
|
225
|
+
Intlayer CMS'yi yapılandırmak için [intlayer CLI](https://github.com/aymericzip/intlayer/tree/main/docs/tr/intlayer_cli.md) komutlarını kullanabilirsiniz.
|
|
212
226
|
|
|
213
227
|
```bash
|
|
214
228
|
npx intlayer config push
|
|
215
229
|
```
|
|
216
230
|
|
|
217
|
-
> `intlayer.config.ts`
|
|
231
|
+
> `intlayer.config.ts` yapılandırma dosyanızda ortam değişkenleri kullanıyorsanız, istediğiniz ortamı `--env` argümanıyla belirtebilirsiniz:
|
|
218
232
|
|
|
219
233
|
```bash
|
|
220
234
|
npx intlayer config push --env production
|
|
221
235
|
```
|
|
222
236
|
|
|
223
|
-
Bu komut
|
|
237
|
+
Bu komut yapılandırmanızı Intlayer CMS'ye yükler.
|
|
224
238
|
|
|
225
|
-
### Bir
|
|
239
|
+
### Bir sözlük yükleme
|
|
226
240
|
|
|
227
|
-
Yerel
|
|
241
|
+
Yerel sözlüklerinizi uzak bir sözlüğe dönüştürmek için [intlayer CLI](https://github.com/aymericzip/intlayer/tree/main/docs/tr/intlayer_cli.md) komutlarını kullanabilirsiniz.
|
|
228
242
|
|
|
229
243
|
```bash
|
|
230
244
|
npx intlayer dictionary push -d my-first-dictionary-key
|
|
231
245
|
```
|
|
232
246
|
|
|
233
|
-
> `intlayer.config.ts`
|
|
247
|
+
> `intlayer.config.ts` yapılandırma dosyanızda ortam değişkenleri kullanıyorsanız, istediğiniz ortamı `--env` argümanıyla belirtebilirsiniz:
|
|
234
248
|
|
|
235
249
|
```bash
|
|
236
250
|
npx intlayer dictionary push -d my-first-dictionary-key --env production
|
|
237
251
|
```
|
|
238
252
|
|
|
239
|
-
Bu komut
|
|
253
|
+
Bu komut, başlangıç içerik sözlüklerinizi yükler ve Intlayer platformu üzerinden eşzamansız olarak alınmalarını ve düzenlenmelerini sağlar.
|
|
240
254
|
|
|
241
|
-
### Sözlüğü
|
|
255
|
+
### Sözlüğü düzenleme
|
|
242
256
|
|
|
243
|
-
|
|
257
|
+
Daha sonra sözlüğünüzü [Intlayer CMS](https://intlayer.org/dashboard/content) üzerinde görüntüleyip yönetebileceksiniz.
|
|
244
258
|
|
|
245
|
-
##
|
|
259
|
+
## Canlı senkronizasyon
|
|
246
260
|
|
|
247
|
-
|
|
261
|
+
Canlı Senkronizasyon, uygulamanızın CMS içerik değişikliklerini çalışma zamanında yansıtmasını sağlar. Yeniden derleme veya yeniden dağıtım gerekmez. Etkinleştirildiğinde, güncellemeler uygulamanızın okuduğu sözlükleri yenileyen bir Canlı Senkronizasyon sunucusuna aktarılır.
|
|
248
262
|
|
|
249
|
-
|
|
263
|
+
> Canlı Senkronizasyon sürekli bir sunucu bağlantısı gerektirir ve yalnızca enterprise planında kullanılabilir.
|
|
250
264
|
|
|
251
|
-
|
|
265
|
+
Intlayer yapılandırmanızı güncelleyerek Canlı Senkronizasyonu etkinleştirin:
|
|
252
266
|
|
|
253
267
|
```typescript fileName="intlayer.config.ts" codeFormat="typescript"
|
|
254
268
|
import type { IntlayerConfig } from "intlayer";
|
|
255
269
|
|
|
256
270
|
const config: IntlayerConfig = {
|
|
257
|
-
// ... diğer
|
|
271
|
+
// ... diğer yapılandırma ayarları
|
|
258
272
|
editor: {
|
|
259
|
-
// ... diğer konfigürasyon ayarları
|
|
260
|
-
|
|
261
273
|
/**
|
|
262
|
-
*
|
|
263
|
-
* Örneğin,
|
|
274
|
+
* Değişiklik algılandığında yerel ayar yapılandırmalarının sıcak yeniden yüklemesini etkinleştirir.
|
|
275
|
+
* Örneğin, bir sözlük eklendiğinde veya güncellendiğinde, uygulama sayfada görüntülenen içeriği günceller.
|
|
264
276
|
*
|
|
265
|
-
* Sıcak yeniden yükleme
|
|
277
|
+
* Sıcak yeniden yükleme sürekli bir sunucu bağlantısı gerektirdiği için,
|
|
278
|
+
* yalnızca `enterprise` planı müşterileri için kullanılabilir.
|
|
266
279
|
*
|
|
267
280
|
* Varsayılan: false
|
|
268
281
|
*/
|
|
269
282
|
liveSync: true,
|
|
270
283
|
},
|
|
284
|
+
build: {
|
|
285
|
+
/**
|
|
286
|
+
* Sözlüklerin nasıl içe aktarılacağını kontrol eder:
|
|
287
|
+
*
|
|
288
|
+
* - "live": Sözlükler, Live Sync API kullanılarak dinamik olarak getirilir.
|
|
289
|
+
* useIntlayer yerine useDictionaryDynamic kullanılır.
|
|
290
|
+
*
|
|
291
|
+
* Not: Canlı mod, sözlükleri getirmek için Live Sync API'sini kullanır. API çağrısı
|
|
292
|
+
* başarısız olursa, sözlükler dinamik olarak içe aktarılır.
|
|
293
|
+
* Not: Yalnızca uzak içeriğe ve "live" bayraklarına sahip sözlükler canlı modu kullanır.
|
|
294
|
+
* Diğerleri performans için dinamik modu kullanır.
|
|
295
|
+
*/
|
|
296
|
+
importMode: "live",
|
|
297
|
+
},
|
|
271
298
|
};
|
|
272
299
|
|
|
273
300
|
export default config;
|
|
@@ -276,20 +303,34 @@ export default config;
|
|
|
276
303
|
```javascript fileName="intlayer.config.mjs" codeFormat="esm"
|
|
277
304
|
/** @type {import('intlayer').IntlayerConfig} */
|
|
278
305
|
const config = {
|
|
279
|
-
// ... diğer
|
|
306
|
+
// ... diğer yapılandırma ayarları
|
|
280
307
|
editor: {
|
|
281
|
-
// ... diğer konfigürasyon ayarları
|
|
282
|
-
|
|
283
308
|
/**
|
|
284
|
-
*
|
|
285
|
-
* Örneğin,
|
|
309
|
+
* Yerel ayar yapılandırmalarında değişiklik algılandığında sıcak yeniden yüklemeyi etkinleştirir.
|
|
310
|
+
* Örneğin, bir sözlük eklendiğinde veya güncellendiğinde, uygulama sayfada görüntülenen
|
|
311
|
+
* içeriği günceller.
|
|
286
312
|
*
|
|
287
|
-
* Sıcak yeniden yükleme sunucuya sürekli
|
|
313
|
+
* Sıcak yeniden yükleme, sunucuya sürekli bağlantı gerektirdiği için
|
|
314
|
+
* yalnızca `enterprise` planı müşterileri için kullanılabilir.
|
|
288
315
|
*
|
|
289
316
|
* Varsayılan: false
|
|
290
317
|
*/
|
|
291
318
|
liveSync: true,
|
|
292
319
|
},
|
|
320
|
+
build: {
|
|
321
|
+
/**
|
|
322
|
+
* Sözlüklerin nasıl içe aktarılacağını kontrol eder:
|
|
323
|
+
*
|
|
324
|
+
* - "live": Sözlükler, Live Sync API kullanılarak dinamik olarak getirilir.
|
|
325
|
+
* useIntlayer yerine useDictionaryDynamic kullanılır.
|
|
326
|
+
*
|
|
327
|
+
* Not: Canlı mod, sözlükleri getirmek için Live Sync API'sini kullanır. API çağrısı
|
|
328
|
+
* başarısız olursa, sözlükler dinamik olarak içe aktarılır.
|
|
329
|
+
* Not: Yalnızca uzak içeriğe sahip ve "live" bayraklı sözlükler canlı modu kullanır.
|
|
330
|
+
* Diğerleri performans için dinamik modu kullanır.
|
|
331
|
+
*/
|
|
332
|
+
importMode: "live",
|
|
333
|
+
},
|
|
293
334
|
};
|
|
294
335
|
|
|
295
336
|
export default config;
|
|
@@ -298,50 +339,191 @@ export default config;
|
|
|
298
339
|
```javascript fileName="intlayer.config.cjs" codeFormat="commonjs"
|
|
299
340
|
/** @type {import('intlayer').IntlayerConfig} */
|
|
300
341
|
const config = {
|
|
301
|
-
// ... diğer
|
|
342
|
+
// ... diğer yapılandırma ayarları
|
|
302
343
|
editor: {
|
|
303
|
-
// ... diğer konfigürasyon ayarları
|
|
304
|
-
|
|
305
344
|
/**
|
|
306
|
-
*
|
|
307
|
-
* Örneğin,
|
|
345
|
+
* Değişiklikler algılandığında yerel yapılandırmaların sıcak yeniden yüklenmesini etkinleştirir.
|
|
346
|
+
* Örneğin, bir sözlük eklendiğinde veya güncellendiğinde, uygulama sayfada görüntülenen
|
|
347
|
+
* içeriği günceller.
|
|
308
348
|
*
|
|
309
|
-
* Sıcak yeniden yükleme sunucuya sürekli
|
|
349
|
+
* Sıcak yeniden yükleme, sunucuya sürekli bağlantı gerektirdiği için
|
|
350
|
+
* yalnızca `enterprise` planı müşterileri için kullanılabilir.
|
|
310
351
|
*
|
|
311
352
|
* Varsayılan: false
|
|
312
353
|
*/
|
|
313
354
|
liveSync: true,
|
|
355
|
+
|
|
356
|
+
/**
|
|
357
|
+
* Live Sync sunucusunun portu.
|
|
358
|
+
*
|
|
359
|
+
* Varsayılan: 4000
|
|
360
|
+
*/
|
|
361
|
+
liveSyncPort: 4000,
|
|
362
|
+
|
|
363
|
+
/**
|
|
364
|
+
* Live Sync sunucusunun URL'si.
|
|
365
|
+
*
|
|
366
|
+
* Varsayılan: http://localhost:{liveSyncPort}
|
|
367
|
+
*/
|
|
368
|
+
liveSyncURL: "https://live.example.com",
|
|
369
|
+
},
|
|
370
|
+
build: {
|
|
371
|
+
/**
|
|
372
|
+
* Sözlüklerin nasıl içe aktarılacağını kontrol eder:
|
|
373
|
+
*
|
|
374
|
+
* - "live": Sözlükler, Live Sync API kullanılarak dinamik olarak alınır.
|
|
375
|
+
* useIntlayer yerine useDictionaryDynamic kullanılır.
|
|
376
|
+
*
|
|
377
|
+
* Not: Canlı mod, sözlükleri almak için Live Sync API'sini kullanır. API çağrısı
|
|
378
|
+
* başarısız olursa, sözlükler dinamik olarak içe aktarılır.
|
|
379
|
+
* Not: Yalnızca uzak içeriğe sahip ve "live" bayrağı olan sözlükler canlı modu kullanır.
|
|
380
|
+
* Diğerleri performans için dinamik modu kullanır.
|
|
381
|
+
*/
|
|
382
|
+
importMode: "live",
|
|
383
|
+
},
|
|
384
|
+
};
|
|
385
|
+
|
|
386
|
+
module.exports = config;
|
|
387
|
+
```
|
|
388
|
+
|
|
389
|
+
Uygulamanızı sarmak için Live Sync sunucusunu başlatın:
|
|
390
|
+
|
|
391
|
+
Next.js kullanarak örnek:
|
|
392
|
+
|
|
393
|
+
```json5 fileName="package.json"
|
|
394
|
+
{
|
|
395
|
+
"scripts": {
|
|
396
|
+
// ... diğer komutlar
|
|
397
|
+
"build": "next build",
|
|
398
|
+
"dev": "next dev",
|
|
399
|
+
"start": "npx intlayer live --process 'next start'",
|
|
400
|
+
},
|
|
401
|
+
}
|
|
402
|
+
```
|
|
403
|
+
|
|
404
|
+
Vite kullanarak örnek:
|
|
405
|
+
|
|
406
|
+
```json5 fileName="package.json"
|
|
407
|
+
{
|
|
408
|
+
"scripts": {
|
|
409
|
+
// ... diğer komutlar
|
|
410
|
+
"build": "vite build",
|
|
411
|
+
"dev": "vite dev",
|
|
412
|
+
"start": "npx intlayer live --process 'vite start'",
|
|
413
|
+
},
|
|
414
|
+
}
|
|
415
|
+
```
|
|
416
|
+
|
|
417
|
+
Live Sync sunucusu uygulamanızı sarar ve güncellenen içeriği geldiği anda otomatik olarak uygular.
|
|
418
|
+
|
|
419
|
+
CMS'den değişiklik bildirimleri almak için, Live Sync sunucusu backend ile bir SSE bağlantısı sürdürür. CMS'de içerik değiştiğinde, backend güncellemeyi Live Sync sunucusuna iletir ve bu sunucu yeni sözlükleri yazar. Uygulamanız, sonraki gezinme veya tarayıcı yenilemesinde güncellemeyi yansıtacaktır—yeniden derleme gerekmez.
|
|
420
|
+
|
|
421
|
+
Akış şeması (CMS/Backend -> Live Sync Sunucusu -> Uygulama Sunucusu -> Ön Yüz):
|
|
422
|
+
|
|
423
|
+

|
|
424
|
+
|
|
425
|
+
Nasıl çalışır:
|
|
426
|
+
|
|
427
|
+

|
|
428
|
+
|
|
429
|
+
### Geliştirme iş akışı (yerel)
|
|
430
|
+
|
|
431
|
+
- Geliştirme aşamasında, uygulama başladığında tüm uzak sözlükler alınır, böylece güncellemeleri hızlıca test edebilirsiniz.
|
|
432
|
+
- Next.js ile Live Sync'i yerel olarak test etmek için geliştirme sunucunuzu şu şekilde sarmalayın:
|
|
433
|
+
|
|
434
|
+
```json5 fileName="package.json"
|
|
435
|
+
{
|
|
436
|
+
"scripts": {
|
|
437
|
+
// ... diğer scriptler
|
|
438
|
+
"dev": "npx intlayer live --process 'next dev'",
|
|
439
|
+
// "dev": "npx intlayer live --process 'vite dev'", // Vite için
|
|
440
|
+
},
|
|
441
|
+
}
|
|
442
|
+
```
|
|
443
|
+
|
|
444
|
+
Optimizasyonu etkinleştirin, böylece Intlayer geliştirme sırasında Live import dönüşümlerini uygular:
|
|
445
|
+
|
|
446
|
+
```typescript fileName="intlayer.config.ts" codeFormat="typescript"
|
|
447
|
+
import type { IntlayerConfig } from "intlayer";
|
|
448
|
+
|
|
449
|
+
const config: IntlayerConfig = {
|
|
450
|
+
editor: {
|
|
451
|
+
applicationURL: "http://localhost:5173",
|
|
452
|
+
liveSyncURL: "http://localhost:4000",
|
|
453
|
+
liveSync: true,
|
|
454
|
+
},
|
|
455
|
+
build: {
|
|
456
|
+
optimize: true,
|
|
457
|
+
importMode: "live",
|
|
458
|
+
},
|
|
459
|
+
};
|
|
460
|
+
|
|
461
|
+
export default config;
|
|
462
|
+
```
|
|
463
|
+
|
|
464
|
+
```javascript fileName="intlayer.config.mjs" codeFormat="esm"
|
|
465
|
+
/** @type {import('intlayer').IntlayerConfig} */
|
|
466
|
+
const config = {
|
|
467
|
+
editor: {
|
|
468
|
+
applicationURL: "http://localhost:5173",
|
|
469
|
+
liveSyncURL: "http://localhost:4000",
|
|
470
|
+
liveSync: true,
|
|
471
|
+
},
|
|
472
|
+
build: {
|
|
473
|
+
optimize: true,
|
|
474
|
+
importMode: "live",
|
|
475
|
+
},
|
|
476
|
+
};
|
|
477
|
+
|
|
478
|
+
export default config;
|
|
479
|
+
```
|
|
480
|
+
|
|
481
|
+
```javascript fileName="intlayer.config.cjs" codeFormat="commonjs"
|
|
482
|
+
/** @type {import('intlayer').IntlayerConfig} */
|
|
483
|
+
const config = {
|
|
484
|
+
editor: {
|
|
485
|
+
applicationURL: "http://localhost:5173",
|
|
486
|
+
liveSyncURL: "http://localhost:4000",
|
|
487
|
+
liveSync: true,
|
|
488
|
+
},
|
|
489
|
+
build: {
|
|
490
|
+
optimize: true,
|
|
491
|
+
importMode: "live",
|
|
314
492
|
},
|
|
315
493
|
};
|
|
316
494
|
|
|
317
495
|
module.exports = config;
|
|
318
496
|
```
|
|
319
497
|
|
|
320
|
-
|
|
498
|
+
Bu yapılandırma, geliştirme sunucunuzu Live Sync sunucusuyla sarar, başlangıçta uzak sözlükleri getirir ve CMS'den SSE aracılığıyla güncellemeleri aktarır. Değişiklikleri görmek için sayfayı yenileyin.
|
|
321
499
|
|
|
322
|
-
|
|
323
|
-
- İstemci tarafında, sıcak yeniden yükleme uygulamanın içeriği tarayıcıda sıcak yeniden yüklemesine izin verir, sayfayı yeniden yüklemeye gerek olmadan. Ancak, bu özellik sadece istemci bileşenleri için kullanılabilir.
|
|
500
|
+
Notlar ve kısıtlamalar:
|
|
324
501
|
|
|
325
|
-
|
|
502
|
+
- Live sync kaynağını site güvenlik politikanıza (CSP) ekleyin. Live sync URL'sinin `connect-src` içinde (ve ilgili ise `frame-ancestors` içinde) izinli olduğundan emin olun.
|
|
503
|
+
- Live Sync statik çıktı ile çalışmaz. Next.js için, sayfa çalışma zamanında güncellemeleri alabilmek için dinamik olmalıdır (örneğin, tam statik kısıtlamalardan kaçınmak için `generateStaticParams`, `generateMetadata`, `getServerSideProps` veya `getStaticProps` uygun şekilde kullanılmalıdır).
|
|
504
|
+
- CMS'de, her sözlüğün bir `live` bayrağı vardır. Yalnızca `live=true` olan sözlükler live sync API'si aracılığıyla alınır; diğerleri dinamik olarak içe aktarılır ve çalışma zamanında değişmeden kalır.
|
|
505
|
+
- `live` bayrağı her sözlük için derleme zamanında değerlendirilir. Uzaktaki içerik derleme sırasında `live=true` olarak işaretlenmemişse, o sözlük için Live Sync'i etkinleştirmek üzere yeniden derleme yapmanız gerekir.
|
|
506
|
+
- Live sync sunucusunun `.intlayer` dosyasına yazabilmesi gerekir. Konteynerlerde, `/.intlayer` dosyasına yazma erişiminin olduğundan emin olun.
|
|
326
507
|
|
|
327
508
|
## Hata Ayıklama
|
|
328
509
|
|
|
329
510
|
CMS ile ilgili herhangi bir sorunla karşılaşırsanız, aşağıdakileri kontrol edin:
|
|
330
511
|
|
|
331
|
-
-
|
|
512
|
+
- Uygulamanın çalıştığından emin olun.
|
|
332
513
|
|
|
333
|
-
- [`editor`](https://intlayer.org/doc/concept/configuration#editor-configuration)
|
|
514
|
+
- [`editor`](https://intlayer.org/doc/concept/configuration#editor-configuration) yapılandırmasının Intlayer yapılandırma dosyanızda doğru şekilde ayarlandığından emin olun.
|
|
334
515
|
- Gerekli alanlar:
|
|
335
|
-
|
|
336
|
-
|
|
516
|
+
- Uygulama URL'si, editör yapılandırmasında (`applicationURL`) belirttiğinizle eşleşmelidir.
|
|
517
|
+
- CMS URL'si
|
|
337
518
|
|
|
338
|
-
- Proje
|
|
519
|
+
- Proje yapılandırmasının Intlayer CMS'ye gönderildiğinden emin olun.
|
|
339
520
|
|
|
340
|
-
- Görsel
|
|
521
|
+
- Görsel editör, web sitenizi görüntülemek için bir iframe kullanır. Web sitenizin İçerik Güvenlik Politikası'nın (CSP), CMS URL'sine `frame-ancestors` olarak izin verdiğinden emin olun (varsayılan olarak 'https://intlayer.org'). Herhangi bir hata için editör konsolunu kontrol edin.
|
|
341
522
|
|
|
342
523
|
## Doküman Geçmişi
|
|
343
524
|
|
|
344
|
-
| Sürüm | Tarih | Değişiklikler
|
|
345
|
-
| ------ | ---------- |
|
|
346
|
-
| 6.0.
|
|
347
|
-
|
|
|
525
|
+
| Sürüm | Tarih | Değişiklikler |
|
|
526
|
+
| ------ | ---------- | --------------------------------------------- |
|
|
527
|
+
| 6.0.1 | 2025-09-22 | Canlı senkronizasyon dokümantasyonu eklendi |
|
|
528
|
+
| 6.0.0 | 2025-09-04 | `hotReload` alanı `liveSync` ile değiştirildi |
|
|
529
|
+
| 5.5.10 | 2025-06-29 | Geçmiş başlatıldı |
|
|
@@ -15,7 +15,10 @@ keywords:
|
|
|
15
15
|
slugs:
|
|
16
16
|
- doc
|
|
17
17
|
- environment
|
|
18
|
+
- vite-and-react
|
|
18
19
|
- tanstack-start
|
|
20
|
+
applicationTemplate: https://github.com/AydinTheFirst/tanstack-start-intlayer
|
|
21
|
+
author: AydinTheFirst
|
|
19
22
|
---
|
|
20
23
|
|
|
21
24
|
# Intlayer ve TanStack Start (React) ile uluslararasılaştırma (i18n) başlangıç kılavuzu
|