marcohern/slugifier

There is no license information available for the latest version (1.0.2) of this package.

Slugify your life

1.0.2 2019-08-24 16:43 UTC

This package is auto-updated.

Last update: 2024-04-25 07:20:52 UTC


README

Slug management for Laravel. marcohern/slugifier is not another slug generator (there are plenty of those), it manages slugs by keeping record of whether slugs are unique, and keep a record of repeated slugs with an index.

Installation

Install using composer:

$ composer require marcohern/slugifier

Run migrations to include the slugifier table.

$ php artisan migrate

Use the Slugifier management library.

use Marcohern\Slugifier\Lib\Slugifier;

build the slugifier.

$slugifier = new Slugifier();

you are all set to use the slugifier methods.

slugify

It slugifies, by calling Laravel's standard str_slug helper function.

echo $slugifier->slugify('Death Stranding');
//output: death-stranding

check

Converts the source into a slug and verifies it's status in the database: if it being used, and it's sequence.

$result = $slugifier->check('Death Stranding','Games');
/*
$result == [
  'entity' => 'games',
  'slug' => 'death-stranding',
  'sequence' => 0
]
*/

store

Same as check except it also increments the sequience by 1. Calling it more than once causes the sequence to increase each time.

$result = $slugifier->store('Death Stranding','Games');
/* first time
$result == [
  'entity' => 'games',
  'slug' => 'death-stranding',
  'sequence' => 0
]
*/

$result = $slugifier->store('Death Stranding','Games');
/* second time
$result == [
  'entity' => 'games',
  'slug' => 'death-stranding-1',
  'sequence' => 1
]
*/