TacoTranslate Kullanımı
Dizelerin Çevirisi
Şu anda metinleri çevirmek için üç yöntem vardır: Translate
bileşeni, useTranslation
kancası veya translateEntries
aracı.
Translate
bileşeninin kullanımı.
Çevirileri span
elementi içinde çıktı olarak verir ve HTML render etmeyi destekler.
import {Translate} from 'tacotranslate/react';
function Page() {
return <Translate string="Hello, world!" />;
}
Örneğin, bileşen üzerinde as="p"
kullanarak öğe türünü değiştirebilirsiniz.
useTranslation
kancasını kullanmak.
Çevirileri düz bir metin olarak döndürür. Örneğin, meta
etiketlerinde kullanışlıdır.
import {useEffect} from 'react';
import {useTranslation} from 'tacotranslate/react';
function Page() {
const helloWorld = useTranslation('Hello, world!');
useEffect(() => {
alert(helloWorld);
}, [helloWorld]);
return (
<title>{useTranslation('My page title')}</title>
);
}
translateEntries
yardımcı programını kullanmak.
Sunucu tarafında dizeleri çevirin. OpenGraph görsellerinizi güçlendirin.
import {createEntry, translateEntries} from 'tacotranslate';
async function generateMetadata(locale = 'es') {
const title = createEntry({string: 'Hello, world!'});
const description = createEntry({string: 'TacoTranslate on the server'});
const translations = await translateEntries(
tacoTranslate,
{origin: 'opengraph', locale},
[title, description]
);
return {
title: translations(title),
description: translations(description)
};
}
Metinler nasıl çevrilir
Dizeler sunucularımıza ulaştığında, önce onları doğrular ve kaydederiz, ardından hemen bir makine çevirisi döneriz. Makine çevirileri genellikle AI çevirilerimize kıyasla daha düşük kalitede olsa da, hızlı bir ilk yanıt sağlarlar.
Aynı anda, metniniz için yüksek kaliteli, son teknoloji bir Yapay Zeka çevirisi oluşturmak üzere eşzamanlı olmayan bir çeviri işi başlatıyoruz. Yapay Zeka çevirisi hazır olduğunda, makine çevirisinin yerini alacak ve çevirilerinizi talep ettiğinizde gönderilecektir.
Eğer bir metni manuel olarak çevirdiyseniz, bu çeviriler öncelikli olur ve onun yerine döndürülür.
Kökenleri kullanma
TacoTranslate projeleri, bizim origins adını verdiğimiz şeyleri içerir. Onları, dizgileriniz ve çevirileriniz için giriş noktaları, klasörler veya gruplar olarak düşünün.
import {TacoTranslate} from 'tacotranslate/react';
function Menu() {
return (
<TacoTranslate origin="application-menu">
// ...
</TacoTranslate>
);
}
Origins, dizeleri anlamlı konteynerlere ayırmanıza olanak tanır. Örneğin, bir origin belge için, diğerini ise pazarlama sayfanız için kullanabilirsiniz.
Daha ayrıntılı kontrol için, originleri bileşen seviyesinde yapılandırabilirsiniz.
Bunu başarmak için, projenizde birden fazla TacoTranslate sağlayıcısı kullanmayı düşünün.
Lütfen aynı stringin farklı kaynaklarda farklı çeviriler alabileceğini unutmayın.
Sonuç olarak, dizeleri kökenlere nasıl ayıracağınız size ve ihtiyaçlarınıza bağlıdır. Ancak, bir kökende çok sayıda dize bulundurmanın yükleme sürelerini artırabileceğini unutmayın.
Değişkenlerin Yönetimi
Dinamik içerik için her zaman kullanıcı isimleri, tarihler, e-posta adresleri ve benzeri gibi değişkenler kullanmalısınız.
Değişkenler stringlerde çift süslü parantez kullanılarak tanımlanır, örneğin {{variable}}
.
import {Translate} from 'tacotranslate/react';
function Greeting() {
const name = 'Juan';
return <Translate string="Hello, {{name}}!" variables={{name}} />;
}
import {useTranslation} from 'tacotranslate/react';
function useGreeting() {
const name = 'Juan';
return useTranslation('Hello, {{name}}!', {variables: {name}});
}
HTML içeriğinin yönetimi
Varsayılan olarak, Translate
bileşeni HTML içeriğini destekler ve render eder. Ancak, bu davranımdan vazgeçmek için useDangerouslySetInnerHTML
değerini false
olarak ayarlayabilirsiniz.
Kullanıcı tarafından oluşturulan içerik gibi güvenilmeyen içeriği çevirirken HTML render'ını devre dışı bırakmanız kesinlikle önerilir.
Tüm çıktı her zaman render edilmeden önce sanitize-html ile temizlenir.
import {Translate} from 'tacotranslate/react';
function Page() {
return (
<Translate
string={`
Welcome to <strong>my</strong> website.
I’m using <a href="{{url}}">TacoTranslate</a> to translate text.
`}
variables={{url: 'https://tacotranslate.com'}}
useDangerouslySetInnerHTML={false}
/>
);
}
Yukarıdaki örnek düz metin olarak render edilecektir.