kduma / L5-eloquent-sluggable by kduma

Eases using and generating slugs Laravel Eloquent models.
697
2
2
Package Data
Maintainer Username: kduma
Maintainer Contact: oss@krystian.duma.sh (Krystian Duma)
Package Create Date: 2015-01-31
Package Last Update: 2024-11-11
Home Page:
Language: PHP
License: MIT
Last Refreshed: 2024-11-15 15:25:19
Package Statistics
Total Downloads: 697
Monthly Downloads: 7
Daily Downloads: 0
Total Stars: 2
Total Watchers: 2
Total Forks: 0
Total Open Issues: 0

L5-eloquent-sluggable

Latest Stable Version Total Downloads Latest Unstable Version License SensioLabsInsight StyleCI Build Status

Eases using and generating slugs Laravel Eloquent models.

Setup

Add the package to the require section of your composer.json and run composer update

"kduma/eloquent-sluggable": "^1.1"

Prepare models

Inside your model (not on top of file) add following lines:

use \KDuma\Eloquent\Slugabble;

Optionally you can add also SluggableString function which will return string from which slug will be made (default it uses title field):

protected function SluggableString(){
    return $this->year.' '.$this->title;
}  

In database create slug string field. If you use migrations, you can use following snippet:

$table->string('slug')->unique();

Usage

By default it generates slug on first save.

  • $model->newSlug() - Generate new slug. (Remember to save it by yourself)
  • Model::whereSlug($slug)->first() - Find by slug. (whereSlug is query scope)

Eric L. Barnes

A special thanks to Eric L. Barnes, an original code creator that this package is based on.

Packagist

View this package on Packagist.org: kduma/eloquent-sluggable