uri_seperator and url encoding

Discussions and requests related to new CMSimple features, plugins, templates etc. and how to develop.
Please don't ask for support at this forums!
Korwin
Posts: 115
Joined: Sat Oct 13, 2018 3:27 pm
Location: Russia, Yekaterinburg
Contact:

Re: uri_seperator and url encoding

Post by Korwin » Sun Dec 18, 2022 11:58 pm

olape wrote:
Fri Dec 09, 2022 8:22 pm
Die richtige Lösung wäre, wenn es in der URL nur a-z, 0-9 und - gäbe.
Das heißt, alles was in der URL encodiert würde, ersetzen.
Wir hatten das schon mehrfach angedacht.
Derzeit geht das leider nur per Hand in der jeweiligen Sprachdatei.

Ist bei ADC-Core die Option „CORRECTED enc-url-seperator“ abgeschaltet?
Ist es möglich, ein Plugin oder eine Funktion in userfuncs.php zu erstellen, die die URL-Transliteration implementiert?


Oder verstehe ich das Problem nicht?

olape
Posts: 2342
Joined: Fri Mar 13, 2015 8:47 am
Contact:

Re: uri_seperator and url encoding

Post by olape » Mon Dec 19, 2022 7:27 am

Korwin wrote:
Sun Dec 18, 2022 11:58 pm
Ist es möglich, ein Plugin oder eine Funktion in userfuncs.php zu erstellen, die die URL-Transliteration implementiert?
Als Addon oder Plugin wird das nicht funktionieren.
Das muss direkt in den Core.

viewtopic.php?f=16&t=16443&p=76532&hilit=urlify#p76532

Zurzeit geht das wirklich nur, etwas mühsam, über die Sprachdatei. (Einstellungen -> Sprachdatei)
Screenshot 2022-12-19 082622.jpg
You do not have the required permissions to view the files attached to this post.

olape
Posts: 2342
Joined: Fri Mar 13, 2015 8:47 am
Contact:

Re: uri_seperator and url encoding

Post by olape » Mon Dec 19, 2022 11:09 am

Code: Select all

'а' => 'a',
'б' => 'b',
'в' => 'v',
'г' => 'g',
'д' => 'd',
'е' => 'e',
'ё' => 'jo',
'ж' => 'zh',
'з' => 'z',
'и' => 'i',
'й' => 'j',
'к' => 'k',
'л' => 'l',
'м' => 'm',
'н' => 'n',
'о' => 'o',
'п' => 'p',
'р' => 'r',
'с' => 's',
'т' => 't',
'у' => 'u',
'ф' => 'f',
'х' => 'ch',
'ц' => 'c',
'ч' => 'ch',
'ш' => 'sh',
'щ' => 'shh',
'ъ' => '',
'ы' => 'y',
'ь' => '',
'э' => 'e',
'ю' => 'ju',
'я' => 'ja',
'А' => 'A',
'Б' => 'B',
'В' => 'V',
'Г' => 'G',
'Д' => 'D',
'Е' => 'E',
'Ё' => 'Jo',
'Ж' => 'Zh',
'З' => 'Z',
'И' => 'I',
'Й' => 'J',
'К' => 'K',
'Л' => 'L',
'М' => 'M',
'Н' => 'N',
'O' => 'O',
'П' => 'P',
'Р' => 'R',
'С' => 'S',
'Т' => 'T',
'У' => 'U',
'Ф' => 'F',
'Х' => 'Ch',
'Ц' => 'C',
'Ч' => 'Ch',
'Ш' => 'Sh',
'Э' => 'E',
'Ю' => 'Ju',
'Я' => 'Ja',
Vielleicht besser immer alles zu Kleinbuchstaben wandeln.

olape
Posts: 2342
Joined: Fri Mar 13, 2015 8:47 am
Contact:

Re: uri_seperator and url encoding

Post by olape » Wed Dec 21, 2022 11:38 am

/cmsimple/languages/ru.php

Code: Select all

$tx['urichar']['org']="&|'|§|%|:|/|?|#|[|]|@|!|\$|&|(|)|*|+|,|;|=|\"|а|б|в|г|д|е|ё|ж|з|и|й|к|л|м|н|о|п|р|с|т|у|ф|х|ц|ч|ш|щ|ъ|ы|ь|э|ю|я|А|Б|В|Г|Д|Е|Ё|Ж|З|И|Й|К|Л|М|Н|O|П|Р|С|Т|У|Ф|Х|Ц|Ч|Ш|Э|Ю|Я";
$tx['urichar']['new']="-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|a|b|v|g|d|e|jo|zh|z|i|j|k|l|m|n|o|p|r|s|t|u|f|ch|c|ch|sh|shh||y||e|ju|ja|a|b|v|g|d|e|jo|zh|z|i|j|k|l|m|n|o|p|r|s|t|u|f|ch|c|ch|sh|e|ju|ja";
Ungetestet
Ich hoffe, ich habe nichts vergessen oder durcheinander gebracht.

olape
Posts: 2342
Joined: Fri Mar 13, 2015 8:47 am
Contact:

Re: uri_seperator and url encoding

Post by olape » Thu Dec 29, 2022 6:13 pm

url transliteration correction and extension

https://github.com/olape-git/cmsimple-x ... 1f2bb8e659

Download

cmb
Posts: 14141
Joined: Tue Jun 21, 2011 11:04 am
Location: Mü-Sa, RLP, DE
Contact:

Re: uri_seperator and url encoding

Post by cmb » Tue Jan 24, 2023 12:08 am

olape wrote:
Thu Dec 29, 2022 6:13 pm
url transliteration correction and extension

https://github.com/olape-git/cmsimple-x ... 1f2bb8e659
Nett! Aber zumindest wenn die Intl-Extension verfügbar ist, sollte folgendes viele individuelle Einstellungen unnötig machen:

Code: Select all

transliterator_transliterate('Any-Latin; Latin-ASCII', $string)
Christoph M. Becker – Plugins for CMSimple_XH

olape
Posts: 2342
Joined: Fri Mar 13, 2015 8:47 am
Contact:

Re: uri_seperator and url encoding

Post by olape » Tue Jan 24, 2023 6:39 am

cmb wrote:
Tue Jan 24, 2023 12:08 am
Nett!
Nett ist die kleine Schwester von Sch... ;)

cmb wrote:
Tue Jan 24, 2023 12:08 am
Aber zumindest wenn die Intl-Extension verfügbar ist, sollte folgendes viele individuelle Einstellungen unnötig machen:
Ja, wenn. Aber was, wenn nicht?
Wie wahrscheinlich ist es, dass die Erweiterung vorhanden ist?
Man hat hier aber kaum Möglichkeiten, Einfluss zu nehmen.
Ich schau mir das mal an.
Vielleicht kann man das kombinieren, um eine Art Backuplösung zu haben.

cmb
Posts: 14141
Joined: Tue Jun 21, 2011 11:04 am
Location: Mü-Sa, RLP, DE
Contact:

Re: uri_seperator and url encoding

Post by cmb » Tue Jan 24, 2023 11:53 am

olape wrote:
Tue Jan 24, 2023 6:39 am
cmb wrote:
Tue Jan 24, 2023 12:08 am
Nett!
Nett ist die kleine Schwester von Sch... ;)
War aber nicht so gemeint. :)
olape wrote:
Tue Jan 24, 2023 6:39 am
Ja, wenn. Aber was, wenn nicht?
Wie wahrscheinlich ist es, dass die Erweiterung vorhanden ist?
Man hat hier aber kaum Möglichkeiten, Einfluss zu nehmen.
Ich schau mir das mal an.
Vielleicht kann man das kombinieren, um eine Art Backuplösung zu haben.
Ja, das ist das Problem. Zumindest vor ein paar Jahren (vielleicht als wir ext/intl optional für die Datumsformatierung eingeführt haben?), hatten einige Nutzer berichtet, dass die Extension bei ihnen zumindest nicht per Default verfügbar ist. Hat sich in der Zwischenzeit vielleicht geändert.
olape wrote:
Tue Jan 24, 2023 6:39 am
Vielleicht kann man das kombinieren, um eine Art Backuplösung zu haben.
Das könnte Probleme geben, wenn die Alternative nicht genauso funktioniert, wie der Transliterator. Schaltet ein Nutzer die Intl-Extension später zu, oder ab, dann ändern sich möglicherweise die URLs. Das ist auch mein größtes Bedenken, wenn man manuelle Konfiguration erlaubt/erfordert. Jedenfalls gibt es auch Lösungen in PHP, z.B. https://github.com/cocur/slugify (braucht nur PHP ≥ 7.1.0 mit der MBString-Extension).
Christoph M. Becker – Plugins for CMSimple_XH

olape
Posts: 2342
Joined: Fri Mar 13, 2015 8:47 am
Contact:

Re: uri_seperator and url encoding

Post by olape » Tue Jan 24, 2023 12:13 pm

cmb wrote:
Tue Jan 24, 2023 11:53 am
Das könnte Probleme geben, wenn die Alternative nicht genauso funktioniert, wie der Transliterator. Schaltet ein Nutzer die Intl-Extension später zu, oder ab, dann ändern sich möglicherweise die URLs. Das ist auch mein größtes Bedenken, wenn man manuelle Konfiguration erlaubt/erfordert.
OK, aber das Problem haben wir ja schon immer. Und früher, durch die direkte Abhängigkeit von den Überschriften noch viel mehr, denke ich.
Aber wenn i.e. jemand den Provider wechselt und die Extension dann nicht mehr verfügbar wäre, würde sich die urls auf jeden Fall ändern. Mit manueller Möglichkeit könnte man da aber noch gegensteuern.
Andersherum wäre es natürlich genauso. Allerdings könnte man die Verwendung ja optional machen.

Was mich stört, ist eigentlich gerade, dass man so gar keine richtige Möglichkeit hat korrigierend einzugreifen.

olape
Posts: 2342
Joined: Fri Mar 13, 2015 8:47 am
Contact:

Re: uri_seperator and url encoding

Post by olape » Fri Jan 27, 2023 10:53 am

cmb wrote:
Tue Jan 24, 2023 12:08 am

Code: Select all

transliterator_transliterate('Any-Latin; Latin-ASCII', $string)
https://github.com/cmsimple-xh/cmsimple-xh/pull/569

Post Reply