Slugify URL - remapping the letters & characters

Hi everyone,

I’d like to customize how CS-Cart converts characters when generating SEO-friendly URLs (slugs). We are using default SEO add-on.

Right now, some local letters are transliterated incorrectly (for example, ə, ş, ğ, “ı” are not being transliterated at all). I’d like to define our own mapping rules — e.g.:

ə → e  
ü → u  
ş → s
ğ → g  
ö → o  
ç → c etc.

Is there a clean way to override or extend the default transliteration table used by the SEO add-on or built-in mechanism? Ideally something that survives upgrades (addon hook or config override).

Thanks in advance!

I think, you can extend the following schema

/app/schemas/literal_converter/umlauts.php

1 Like

Thanks! I believe there’s one more step here — since adding new rules to the schema doesn’t automatically update existing URLs. Could you please advise how to manually trigger a full URL regeneration for all products, categories, and pages?

I hope such trigger would also generate redirection rules?

For example, to regenerate category URLs, run the following query in the phpMyAdmin

DELETE FROM cscart_seo_names WHERE type = 'c';

Unfortunately, this would cause 404 errors due to breaking all the existing URLs without redirection rules.

Not only with category, but product links as well.

Category URLs will be regenerated “on the fly”

I am sorry, but the issue here is the product URLs at first.
This method “DELETE FROM cscart_seo_names WHERE type = ‘c’;” is dangerous, since it breaks the current product links without permanent redirection. That’s why I ask if there is a way to update the URLs with some function that would create the redirection mapping as well.

Yes, if the store is not new and already indexed by the bots, this method is not recommended. But it will not brake the store