Налаштування локалізації сайту на узбецьку мову

Наша компанія займається розробкою, підтримкою та обслуговуванням сайтів будь-якої складності. Від простих односторінкових сайтів до масштабних кластерних систем, побудованих на мікро сервісах. Досвід розробників підтверджено сертифікатами від вендорів.

Розробка та обслуговування будь-яких видів сайтів:

Інформаційні сайти або веб-програми
Сайти візитки, landing page, корпоративні сайти, онлайн каталоги, квіз, промо-сайти, блоги, ресурси новин, інформаційні портали, форуми, агрегатори
Сайти або веб-програми електронної комерції
Інтернет-магазини, B2B-портали, маркетплейси, онлайн-обмінники, кешбек-сайти, біржі, дропшиппінг-платформи, парсери товарів
Веб-програми для управління бізнес-процесами
CRM-системи, ERP-системи, корпоративні портали, системи управління виробництвом, парсери інформації
Сайти або веб-програми електронних послуг
Дошки оголошень, онлайн-школи, онлайн-кінотеатри, конструктори сайтів, портали надання електронних послуг, відеохостинги, тематичні портали

Це лише деякі з технічних типів сайтів, з якими ми працюємо, і кожен із них може мати свої специфічні особливості та функціональність, а також бути адаптованим під конкретні потреби та цілі клієнта.

Пропоновані послуги
Показано 1 з 1 послугУсі 2065 послуг
Налаштування локалізації сайту на узбецьку мову
Проста
від 1 робочого дня до 3 робочих днів
Часті питання

Наші компетенції:

Етапи розробки

Останні роботи

  • image_website-b2b-advance_0.png
    Розробка сайту компанії B2B ADVANCE
    1262
  • image_web-applications_feedme_466_0.webp
    Розробка веб-додатків для компанії FEEDME
    1171
  • image_websites_belfingroup_462_0.webp
    Розробка веб-сайту для компанії БЕЛФІНГРУП
    874
  • image_ecommerce_furnoro_435_0.webp
    Розробка інтернет магазину для компанії FURNORO
    1094
  • image_crm_enviok_479_0.webp
    Розробка веб-додатків для компанії Enviok
    831
  • image_bitrix-bitrix-24-1c_fixper_448_0.png
    Розробка веб-сайту для компанії ФІКСПЕР
    851

Налаштування локалізації сайту узбецькою мовою

Узбецька мова — офіційна мова Узбекистану. Важлива особливість: існує два писемні системи — латиниця (uz-Latn, офіційний стандарт з 1993 року) та кирилиця (uz-Cyrl, де-факто використовується більшістю населення). Для комерційного сайту рекомендується підтримувати обидва варіанти або вибирати на основі цільової аудиторії.

Базова конфігурація

// config/app.php
// Латиниця — офіційний стандарт
'locale' => 'uz',
'fallback_locale' => 'ru',
// resources/lang/uz/messages.php — латиниця
return [
    'welcome'       => 'Saytimizga xush kelibsiz',
    'catalog'       => 'Katalog',
    'cart'          => 'Savat',
    'checkout'      => 'Buyurtmani rasmiylashtirish',
    'search'        => 'Qidirish',
    'add_to_cart'   => 'Savatga qo\'shish',
    'price'         => 'Narx',
    'in_stock'      => 'Mavjud',
    'out_of_stock'  => 'Mavjud emas',
    'order_placed'  => 'Buyurtma qabul qilindi',
];
// resources/lang/uz-cyrl/messages.php — кирилиця
return [
    'welcome'       => 'Сайтимизга хуш келибсиз',
    'catalog'       => 'Каталог',
    'cart'          => 'Сават',
    'checkout'      => 'Буюртмани расмийлаштириш',
    'search'        => 'Қидириш',
    'add_to_cart'   => 'Саватга қўшиш',
    'price'         => 'Нарх',
    'in_stock'      => 'Мавжуд',
    'out_of_stock'  => 'Мавжуд эмас',
];

Числівники та множина

Узбецька — аглютинативна мова тюркської групи. Як і казахська, після числівника іменник стоїть у однині:

// "5 mahsulot" — правильно, не "5 mahsulotlar"
function pluralUz(int $n, string $word): string
{
    return "$n $word";
}

echo pluralUz(1, 'mahsulot'); // 1 mahsulot
echo pluralUz(5, 'mahsulot'); // 5 mahsulot
// Intl.PluralRules для узбецької
const rules = new Intl.PluralRules('uz')
// Повертає 'one' для 1, 'other' для решти
// Але семантично в узбецькій після числівника завжди основна форма

const pluralize = (n: number, word: string) => `${n} ${word}`

Форматування дат та валюти

// Дата (латиниця)
const df = new Intl.DateTimeFormat('uz-Latn-UZ', {
  day: 'numeric',
  month: 'long',
  year: 'numeric',
})
df.format(new Date()) // "28-mart, 2026"

// Валюта Узбекистану — сум (UZS)
new Intl.NumberFormat('uz-Latn-UZ', {
  style: 'currency',
  currency: 'UZS',
  maximumFractionDigits: 0,
}).format(150000) // "150 000 сўм" або "UZS 150,000"

// Числа
new Intl.NumberFormat('uz-Latn-UZ').format(1234567.89)
// "1 234 567,89"

// Відносний час
const rtf = new Intl.RelativeTimeFormat('uz', { numeric: 'auto' })
rtf.format(-1, 'day')   // "kecha"
rtf.format(-3, 'day')   // "3 kun oldin"
rtf.format(1, 'hour')   // "1 soatdan keyin"

Специфіка латиниці: апостроф та діакритика

У узбецькій латиниці використовуються:

  • (o з завиванням, U+02BB) — не звичайний апостроф
  • (g з завиванням)
  • sh, ch, ng — діграфи
// Типографічно правильне написання
const word = 'qo\u02BBshish'  // qoʻshish (додати)
// НЕ: qo'shish (ASCII апостроф)

На практиці більшість сайтів використовують звичайний апостроф через проблеми з клавіатурами. Якщо аудиторія — діловою, використовуйте коректний Unicode.

Шрифти

Для латиниці підходять будь-які стандартні шрифти. Для кирилиці (узбецької) специфічні гліфи: Ғ ғ, Қ қ, Ҳ ҳ, Ў ў, Ъ ъ.

body {
  font-family: 'Noto Sans', 'PT Sans', Roboto, Arial, sans-serif;
}

Переключення між латиницею та кирилицею

type UzScript = 'latn' | 'cyrl'

function LanguageToggle() {
  const [script, setScript] = useState<UzScript>('latn')

  return (
    <div>
      <button
        onClick={() => setScript('latn')}
        aria-pressed={script === 'latn'}
      >
        O'zbek (lotin)
      </button>
      <button
        onClick={() => setScript('cyrl')}
        aria-pressed={script === 'cyrl'}
      >
        Ўзбек (кирилл)
      </button>
    </div>
  )
}
// У Laravel: зберігаємо вибір у сесії
Route::get('/locale/uz/{script}', function (string $script) {
    $locale = $script === 'cyrl' ? 'uz-Cyrl' : 'uz';
    session(['locale' => $locale]);
    return back();
});

SEO

<html lang="uz-Latn">
<!-- або lang="uz-Cyrl" для кирилиці -->
<head>
  <meta charset="UTF-8">
  <meta property="og:locale" content="uz_UZ">
  <link rel="alternate" hreflang="uz" href="https://example.uz/uz/" />
  <link rel="alternate" hreflang="ru" href="https://example.uz/" />
</head>

Терміни

Базова локалізація з одним письмом — 1 робочий день. З підтримкою обох варіантів (латиниця + кирилиця) та перемикачем — 2 дні.