Search by

karnoweb / translation

Polymorphic translation storage for Laravel models. Data layer only — no host UI.

Maintainers

Package info

github.com/karnoweb/translation

pkg:composer/karnoweb/translation

Transparency log

Statistics

Installs: 20

Dependents: 2

Suggesters: 0

Stars: 0

Open Issues: 0

13.0.2 2026-09-03 20:29 UTC

This package is auto-updated.

Last update: 2026-09-03 20:31:07 UTC


README

پکیج دامنهٔ لاراول برای ذخیرهٔ چندزبانهٔ فیلدهای مدل به‌صورت polymorphic. لایهٔ داده فقط — بدون UI میزبان.

مستندات: docs/README.mdمفاهیم و طرز استفاده

Requirements

  • PHP 8.3+
  • Laravel 13.x

Installation

composer require karnoweb/translation:^13.0
php artisan vendor:publish --tag=translation-config       # اختیاری
php artisan vendor:publish --tag=translation-migrations   # الزامی
php artisan migrate

مایگریشن جدول ترجمه‌ها با نام ثابت 2022_01_01_* پابلیش می‌شود.

قابلیت‌ها

قابلیت نقطه ورود
خواندن/نوشتن ترجمه Trait HasTranslation
تنظیمات و مدل قابل‌تعویض فاساد Translation
کش دائمی بر اساس کلید/لوکال translation.cache.enabled

در پکیج نیست: UI ادمین، سوییچر زبان، Policy، همگام‌سازی فایل‌های lang/.

مثال سریع

use Karnoweb\Translation\Concerns\HasTranslation;

class Brand extends Model
{
    use HasTranslation;

    /** @var list<string> */
    protected array $translatable = ['title', 'description'];
}

$brand->setTranslation('title', 'عنوان فارسی', 'fa');
$brand->setTranslation('title', 'English Title', 'en');

app()->setLocale('fa');
echo $brand->fresh()->title; // عنوان فارسی

جزئیات: docs/usage/README.md

License

MIT