SanitizerEasySlugger by Robin S

Allows the use of the EasySlugger library as Sanitizer methods.

Sanitizer EasySlugger

A module for ProcessWire CMS/CMF. Allows the use of the EasySlugger library as Sanitizer methods.

Installation


Install the Sanitizer EasySlugger module.

Usage


The module adds four new sanitizer methods.

slugger($string, $options)

Similar to $sanitizer->pageName() - I'm not sure if there are any advantages over that method. Included because it is one of the methods offered by EasySlugger.

$slug = $sanitizer->slugger('Lorem Ipsum');
// Result: lorem-ipsum

utf8Slugger($string, $options)

Creates slugs from non-latin alphabets.

$slug = $sanitizer->utf8Slugger('这个用汉语怎么说');
// Result: zhe-ge-yong-han-yu-zen-me-shuo

seoSlugger($string, $options)

Augments the string before turning it into a slug. The conversions are related to numbers, currencies, email addresses and other common symbols.

$slug = $sanitizer->seoSlugger('The price is $5.99');
// Result: the-price-is-5-dollars-99-cents

See the EasySlugger readme for some more examples.

seoUtf8Slugger($string, $options)

A combination of utf8Slugger() and seoSlugger().

$slug = $sanitizer->seoUtf8Slugger('价钱是 $5.99');
// Result: jia-qian-shi-5-dollars-99-cents

$options argument

Each of the methods can take an $options array as a second argument.

  • separator (string): the character that separates words in the slug. Default: -
  • unique (bool): Determines whether a random suffix is added at the end of the slug. Default: false
$slug = $sanitizer->utf8Slugger('这个用汉语怎么说', ['separator' => '_', 'unique' => true]);
// Result: zhe_ge_yong_han_yu_zen_me_shuo_3ad66c4

Install and use modules at your own risk. Always have a site and database backup before installing new modules.

Twitter updates

  • ProcessWire 3.0.173 adds several new requested features and this post focuses on one of my favorites: the ability to hook into and handle ProcessWire URLs, independent of pages— More
    5 March 2021
  • This week ProcessWire gained powerful new tools for finding pages and controlling how they are loaded. If you like to maximize performance and efficiency, you’ll like what 3.0.172 brings— More
    5 February 2021
  • ProcessWire 3.0.171 dev branch core updates – More
    22 January 2021

Latest news

  • ProcessWire Weekly #356
    In the 356th issue of ProcessWire Weekly we'll cover the latest core updates (ProcessWire 3.0.173), introduce new third party modules RockCalculator and RockIframe, and take a closer look at a brand new site of the week. Read on!
    Weekly.pw / 6 March 2021
  • ProcessWire 3.0.173 core updates: New URL hooks
    ProcessWire 3.0.173 adds several new requested features and this post focuses on one of my favorites: the ability to hook into and handle ProcessWire URLs, independent of pages.
    Blog / 5 March 2021
  • Subscribe to weekly ProcessWire news

“ProcessWire is like a breath of fresh air. So powerful yet simple to build with and customise, and web editors love it too.” —Margaret Chatwin, Web developer