Scopes
translatedIn(?string $locale = null)
Returns all posts being translated in english
Post::translatedIn('en')->get();notTranslatedIn(?string $locale = null)
Returns all posts not being translated in english
Post::notTranslatedIn('en')->get();translated()
Returns all posts with existing translations
Post::translated()->get();withTranslation()
Eager loads translation relationship only for the default and fallback (if enabled) locale
Post::withTranslation()->get();listsTranslations(string $translationField)
Returns an array containing pairs of post ids and the translated title attribute
Post::listsTranslations('title')->get()->toArray();[
['id' => 1, 'title' => 'My first post'],
['id' => 2, 'title' => 'My second post']
]where translation
Filters posts by checking the translation against the given value
whereTranslation(string $translationField, $value, ?string $locale = null)
Post::whereTranslation('title', 'My first post')->first();orWhereTranslation(string $translationField, $value, ?string $locale = null)
Post::whereTranslation('title', 'My first post')
->orWhereTranslation('title', 'My second post')
->get();whereTranslationLike(string $translationField, $value, ?string $locale = null)
Post::whereTranslationLike('title', '%first%')->first();orWhereTranslationLike(string $translationField, $value, ?string $locale = null)
Post::whereTranslationLike('title', '%first%')
->orWhereTranslationLike('title', '%second%')
->get();orderByTranslation(string $translationField, string $sortMethod = 'asc')
Sorts the model by a given translation column value
Post::orderByTranslation('title')->get()Last updated
Was this helpful?