From bfeb513b6b5c52265b3a2820165188dbf15662cd Mon Sep 17 00:00:00 2001 From: f Date: Thu, 28 Apr 2022 10:56:47 -0300 Subject: [PATCH 1/2] =?UTF-8?q?agregar=20modo=20de=20slugificaci=C3=B3n=20?= =?UTF-8?q?en=20el=20sitio?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/models/metadata_slug.rb | 2 +- db/migrate/20220428135113_add_slugify_mode_to_sites.rb | 8 ++++++++ 2 files changed, 9 insertions(+), 1 deletion(-) create mode 100644 db/migrate/20220428135113_add_slugify_mode_to_sites.rb diff --git a/app/models/metadata_slug.rb b/app/models/metadata_slug.rb index 09da23f9..a37451d9 100644 --- a/app/models/metadata_slug.rb +++ b/app/models/metadata_slug.rb @@ -25,7 +25,7 @@ require 'jekyll/utils' class MetadataSlug < MetadataTemplate # Trae el slug desde el título si existe o una string al azar def default_value - title ? Jekyll::Utils.slugify(title) : SecureRandom.uuid + title ? Jekyll::Utils.slugify(title, mode: site.slugify_mode) : SecureRandom.uuid end def value diff --git a/db/migrate/20220428135113_add_slugify_mode_to_sites.rb b/db/migrate/20220428135113_add_slugify_mode_to_sites.rb new file mode 100644 index 00000000..fd887886 --- /dev/null +++ b/db/migrate/20220428135113_add_slugify_mode_to_sites.rb @@ -0,0 +1,8 @@ +# frozen_string_literal: true + +# Permite a los sitios elegir el método de slugificación +class AddSlugifyModeToSites < ActiveRecord::Migration[6.1] + def change + add_column :sites, :slugify_mode, :string, default: 'default' + end +end From cadb3ad6a6fb00547df734a10271d0a4069d7a1c Mon Sep 17 00:00:00 2001 From: f Date: Thu, 28 Apr 2022 10:57:28 -0300 Subject: [PATCH 2/2] normalizar unicode en la string --- app/models/metadata_slug.rb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/models/metadata_slug.rb b/app/models/metadata_slug.rb index a37451d9..b0fe8cec 100644 --- a/app/models/metadata_slug.rb +++ b/app/models/metadata_slug.rb @@ -39,6 +39,6 @@ class MetadataSlug < MetadataTemplate return if post.title&.private? return if post.title&.value&.blank? - post.title&.value&.to_s + post.title&.value&.to_s&.unicode_normalize end end