Dibuat:2026-01-22Terakhir diperbarui:2026-01-22

    Dokumentasi: Fungsi getLocalizedPath di intlayer

    Deskripsi

    Fungsi getLocalizedPath mengubah canonical path (path internal aplikasi) menjadi padanan yang dilokalkan berdasarkan locale dan aturan rewrite yang disediakan. Fungsi ini sangat berguna untuk menghasilkan URL ramah SEO yang berbeda menurut bahasa.

    Fitur Utama:

    • Mendukung parameter route dinamis menggunakan sintaks [param].
    • Menyelesaikan path sesuai aturan rewrite kustom yang didefinisikan dalam konfigurasi proyek Anda.
    • Secara otomatis menangani fallback ke canonical path jika tidak ada aturan rewrite yang ditemukan untuk locale yang ditentukan.

    Tanda Tangan Fungsi

    getLocalizedPath(
      canonicalPath: string,         // Wajib
      locale: Locales,               // Wajib
      rewriteRules?: RoutingConfig['rewrite'] // Opsional
    ): string

    Parameter

    Parameter Wajib

    • canonicalPath: string

      • Deskripsi: Jalur internal aplikasi (mis. /about, /product/[id]).
      • Tipe: string
      • Diperlukan: Ya
    • locale: Locales

      • Deskripsi: Locale target yang akan digunakan untuk melokalkan jalur.
      • Tipe: Locales
      • Diperlukan: Ya

    Parameter Opsional

    • rewriteRules?: RoutingConfig['rewrite']
      • Deskripsi: Objek yang mendefinisikan aturan rewrite kustom. Jika tidak diberikan, akan menggunakan properti routing.rewrite dari konfigurasi proyek Anda.
      • Tipe: RoutingConfig['rewrite']
      • Default: configuration.routing.rewrite

    Pengembalian

    • Tipe: string
    • Deskripsi: Jalur yang telah dilokalkan untuk locale yang ditentukan.

    Contoh Penggunaan

    Penggunaan Dasar (Dengan Konfigurasi)

    Jika Anda telah mengonfigurasi rewrite kustom di intlayer.config.ts Anda:

    import { getLocalizedPath, Locales } from "intlayer";
    
    // Konfigurasi: { '/about': { en: '/about', fr: '/a-propos' } }
    getLocalizedPath("/about", Locales.FRENCH);
    // Keluaran: "/a-propos"
    
    getLocalizedPath("/about", Locales.ENGLISH);
    // Keluaran: "/about"

    Penggunaan dengan Rute Dinamis

    import { getLocalizedPath, Locales } from "intlayer";
    
    // Konfigurasi: { '/product/[id]': { en: '/product/[id]', fr: '/produit/[id]' } }
    getLocalizedPath("/product/123", Locales.FRENCH);
    // Keluaran: "/produit/123"

    Aturan Rewrite Manual

    Anda juga dapat memberikan aturan rewrite manual ke fungsi:

    import { getLocalizedPath, Locales } from "intlayer";
    
    const manualRules = {
      "/contact": {
        en: "/contact-us",
        fr: "/contactez-nous",
      },
    };
    
    getLocalizedPath("/contact", Locales.FRENCH, manualRules);
    // Keluaran: "/contactez-nous"

    Fungsi Terkait

    • getCanonicalPath: Mengembalikan path yang dilokalkan ke canonical path internalnya.
    • getLocalizedUrl: Menghasilkan URL yang sepenuhnya dilokalkan (termasuk protokol, host, dan prefiks locale).