Jump to content
eyaggelos

Αυτόματη δημιουργία greeklish URL από το όνομα του προϊόντος

Recommended Posts

Καλησπέρα σε όλους. 
Επείδη βαριόμουν 1f61b.png:P κάθε φόρα που καταχωρούσα ένα προιον να βάζω στα greeklish το φιλικό url . εκάτσα και εφτιάξα ένα module για αυτόματη δημιουργία greeklish URL από το όνομα του προϊόντος. 

Δουλεύει σε Prestashop 1.7x 
 

np_greeklishslug.zip

Edited by eyaggelos

Share this post


Link to post
Share on other sites

Καλησπέρα και καλώς ήρθες.

Θέλει λίγη βελτίωση και θα είναι τέλειο.

Θα πρέπει να regular expression να αντικαταστατής όποιον χαρακτήρα δεν είναι αλφαριθμητικό (αγγλικό - ελληνικό) με το κενό.

Μετά πάλι με rexex ότι είναι πάνω από δύο κενά να το κάνεις 1 (squeeze repeats).

Και μετά όπως σωστά κάνεις replace το space με minus.

Ακόμη το char mapping θα μπορούσε να είναι καλύτερο, π.χ. το Χ είναι το ch αλλά αυτά ας τα αλλάξει ο καθένας από μόνο του.

Share this post


Link to post
Share on other sites

Καλησπέρα.

Σε ευχαριστώ για τις παρατηρίσεις σου. 

Quote

Θα πρέπει να regular expression να αντικαταστατής όποιον χαρακτήρα δεν είναι αλφαριθμητικό (αγγλικό - ελληνικό) με το κενό.

 

 

π.χ 

Θήκη Тонкий  TPU Ultra Thin για Samsung S9 Plus διάφανη

λες να γίνει 

thiki-tru-ultra-thin-gia-samsung-s9-plus-diafanh.

καταλάβα σωστα ;' 

 

 

Share this post


Link to post
Share on other sites
1 hour ago, eyaggelos said:

Καλησπέρα.

Σε ευχαριστώ για τις παρατηρίσεις σου. 

 

π.χ 

Θήκη Тонкий  TPU Ultra Thin για Samsung S9 Plus διάφανη

λες να γίνει 

thiki-tru-ultra-thin-gia-samsung-s9-plus-diafanh.

καταλάβα σωστα ;' 

 

 

Δεν είπες πως το Ελληνικό product title θα έχει χαρακτήρες εκτός από ελληνικά και αγγλικά... και προφανώς δεν βρίσκω λόγο να έχει, ειδικά ρώσικα.

Αυτό που πρέπει να γίνετε στην ουσία είναι να αφαιρεθούν όλοι οι special characters. ex. ~!@#$%^&*(){}[];':",.<>/? συν κάτι ® ¶ © ™

 

Edited by sanctusmob

Share this post


Link to post
Share on other sites

έχεις δικαιο .

θα φροντίσω μόλις βρω χρόνο να το διορθώσω  και να το ξανα ανεβάσω την καινουργία εκδοση !

Σε ευχαριστω παρα πολυ!!!!!

Share this post


Link to post
Share on other sites

Είχα κάνει το ίδιο σε C#. Σου δίνω τον κώδικα για να τον κάνεις μετατροπή σε php.

Το είχα κάνει λίγο διαφορετικά από αυτό που αναφέρω πιο πάνω αλλά είναι σωστό και δοκιμασμένο.

Απλός δεν θα σου δώσω το character mapping...

Αν κάνεις από την αρχή σε lower το input string γλυτώνεις από το character mapping τα κεφαλαία...

Εκεί που κάνω replace το "΄"  είναι γιατί για κάποιο λόγω ΔΕΝ το έπιανε το regex, θεωρεί μάλλον πως είναι Ελληνικός χαρακτήρας.

Regex nonAlnu = new Regex(@"[^a-zA-Z0-9\p{IsGreekandCoptic}]"); //Regex for non alphanumeric and Greek
Regex trimminus = new Regex(@"[-]{2,}"); //Regex for repeated minus

strInput = strInput.ToLower();
strInput = nonAlnu.Replace(strInput, "-"); //Replace non alphanumeric and Greek with minus
strInput = toGreeklish(strInput); // Convert to Greeklish
strInput = trimminus.Replace(strInput, "-"); //Squeze repeated minus                 
strInput = strInput.Replace("΄", ""); //Remove wtf
strInput = strInput.Trim('-'); //Trim Start End minus
strInput = strInput.Trim(); //Trim Start End space

 

Share this post


Link to post
Share on other sites
3 hours ago, geogian said:

Σε μενα δεν λειτουργεί.

Το δοκίμασα σε έκδοση  1.7.2.4 και 1.7.3.0

 

στείλε μου μήνυμα αν θες να το δούμε 

Share this post


Link to post
Share on other sites

Ok τώρα 

Δεν είχα καταλάβει πως λειτουργούσε. Θέλει αποθήκευση για να τρέξει το script

Πολύ καλό και χρήσιμο το module .

Ευχαριστούμε 

Share this post


Link to post
Share on other sites
On 11/4/2018 at 10:26 PM, geogian said:

Ok τώρα 

Δεν είχα καταλάβει πως λειτουργούσε. Θέλει αποθήκευση για να τρέξει το script

Πολύ καλό και χρήσιμο το module .

Ευχαριστούμε 

 

Καλησπέρα.

Ξέχασα να το αναφέρω !

σε ευχαριστώ πολύ.

 

---

Συντομα θα ανεβασω & την καινουργια εκδοση 

Edited by eyaggelos

Share this post


Link to post
Share on other sites

Καλησπέρα. 

Όχι δεν δουλεύει σε 1.6, όμως με μικρές διορθώσεις θα μπορούσε να παίζει και σε 1.6. στείλε μου p.m 

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×

Important Information

Cookies ensure the smooth running of our services. Using these, you accept the use of cookies. Learn More