Jump to content

To Prestashop 8.1 δημιουργεί greeklish Friendly URL's?


Prestag0od

Recommended Posts

Παρακαλώ μπορεί να επιβεβαιώσει κάποιος πως το Prestashop 8.1 δημιουργεί Greeklish Friendly URL's αντί για Ελληνικά by default;

π.χ.
www.domain.gr /kathgoria/onoma-proiontos.html
αντί για
www.domain.gr /κατηγορια/ονομα-προιοντοσ.html

Θέλω να το παρακάμψω/απενεργοποιήσω για να επαναδημιουργήσω τα Friendly URL΄s και να εμφανιστούν σε Ελληνικά όπως είναι και στο 1.7.

Υπάρχει κάποια ρύθμιση? Αλλιώς σε ποιο σημείο του κώδικα μπορεί να γίνετε αυτό;

Edited by Prestan0ob (see edit history)
Link to comment
Share on other sites

Δυστυχώς αυτό δεν είναι λύση καθώς τα προϊόντα έχουν μπει με Migration και τα URL θέλω να είναι ίδια ακριβώς με το παλιό eshop. Και σίγουρα το σύστημα που τα μετατρέπει σε greeklish δεν είναι ακριβώς σαν το δικό σου ώστε έτσι να αναστρέψουμε με ακρίβεια όλα τα γράμματα.

Το κουφό είναι πως εαν μπω στο προϊόν και πατήσω Generate URL from name τότε απο Greeklish γίνετε Ελληνικό.
1439991598_.png.b340f776574f686c9752c7ffdbf58f3f.png

Έχω ένα module που κάνει regenerate URL's (Tidy for Prestashop) αλλά δεν λειτουργεί στο prestashop 8 στα προϊόντα που έχουν ελληνικούς τίτλους. Κάνει regenerate μόνο σε αυτά που έχουν μόνο Αγγλικούς χαρακτήρες.

Η τελευταία λύση είναι να μεταφέρω χειροκίνητα απο την παλιά βάση δεδομένων το link_rewrite μια και τα ID τα έχω κρατήσει ίδια όταν έκανα migrate.

Έκανα export τα παρακάτω columns του product_lang σε CSV και πρέπει να θυμηθώ πως κάνω τώρα update την βάση του νέου prestashop.
2120812880_.png.1eeffa9ef7df8b9028a471b1b5279183.png

Link to comment
Share on other sites

INSERT INTO ps_product_lang (id_product, id_lang, link_rewrite) VALUES 
    (1, 1, "my-first-product"),
    (1, 2, "το-πρώτο-προϊόν"),
    (2, 1, "my-second-product"),
    (2, 2, "το-δεύτερο-προϊόν")
    ON DUPLICATE KEY UPDATE link_rewrite = VALUES(link_rewrite);

 

  • Like 1
Link to comment
Share on other sites

6 hours ago, sanctusmob said:

Αν δεν τα είχες βγάλει τότε δεν θα είχες πρόβλημα. Οπότε η πιο ασφαλείς λύση είναι να κάνεις import τα παλιά.

 

Τι σχέση έχουν τα ID με τα Greeklish?

5 hours ago, Kogkalidis said:

Τότε 99% τα greeklish παράγονται απ' το module που βγάζει τα IDs.

Δυστυχώς δεν είναι απο το Module του SEO. Το απενεργοποίησα και πάλι όταν φτιάχνω νέο προϊόν το URL το κάνει greeklish. Έχεις δοκιμάσει το 8.1? Θα κάνω μια καθαρή εγκατάσταση σήμερα να σιγουρευτώ πως είναι πλέον core δυνατότητα του Prestashop και όχι κάποιο module.

 

Edit: σε καθαρή εγκατάσταση Prestashop 8.1.1 με ενεργοποιημένα
766520548_.png.2cc0e2b2851247bf86ee1b7a7acad3e6.png
τα URL's δημιουργούνται με Greeklish. Το κουλό είναι πως όταν πατήσεις να επαναδημιουργήσεις το Frienly URL σε ένα προϊόν τα κάνει Ελληνικά .... 🤨

prestashop_greeklish(1).gif.0dd1520b60df6227dd4f82f2c027773a.gif
*Μόνο όταν έχεις ενεργοποιημένο το Accented URL. Εαν το έχεις απενεργοποιημένο και κάνεις Reset URL σβήνει το URL και το αφήνει κενό!!! 🤪
240404958_.png.cb392b083c7596a36ce06ccbcf92f88f.png

Μπορείτε παρακαλώ να επιβεβαιώσετε με μια καθαρή εγκατάσταση και εσείς?


 

Edited by Prestan0ob (see edit history)
Link to comment
Share on other sites

3 minutes ago, Prestan0ob said:

Τι σχέση έχουν τα ID με τα Greeklish?

Τα ids με τα greeklish καμιά, αλλά τα greeklish -> seo, id -> seo

 

4 minutes ago, Prestan0ob said:

Έχεις δοκιμάσει το 8.1?

Η αλήθεια έχω 8.1.2 αλλά δεν το έχω τσεκαρει.

Link to comment
Share on other sites

2 hours ago, Kogkalidis said:

Τα ids με τα greeklish καμιά, αλλά τα greeklish -> seo, id -> seo

 

Η αλήθεια έχω 8.1.2 αλλά δεν το έχω τσεκαρει.

Για τσέκαρέ το μια πλιζ

58 minutes ago, sanctusmob said:

Δεν έχει σχέσει με τα Greeklish. Απλά θα έπαιζαν όλα τα παλιά url με redirect αυτόματα.

τα παλιά URL στο google πως θα έκαναν redirect αυτόματα στα νέα έστω και εαν είχαν ID?

Link to comment
Share on other sites

Μπες σε ένα presta με ids και δοκίμασε το.

μπες https://www.myringdesign.gr/el/p/kolie/395-kolie-maleficent-ftera-30-1104.html

και εδώ https://www.myringdesign.gr/el/p/εδώ/γράψε/ότι/θέλεις/395-και-εδώ.html

και εδώ https://www.myringdesign.gr/el/p/395-.html

Θα σε κάνουν redirect στο canonical. Aρκεί να υπάρχει το /p/ (ή ότι έχεις βάλεις στο settings στα url για τα products) και το id- (395-)

το ίδιο και σε brand, categories κτλ.

Αυτό από 1.7 και πάνω.

Link to comment
Share on other sites

1 hour ago, sanctusmob said:

Μπες σε ένα presta με ids και δοκίμασε το.

μπες https://www.myringdesign.gr/el/p/kolie/395-kolie-maleficent-ftera-30-1104.html

και εδώ https://www.myringdesign.gr/el/p/εδώ/γράψε/ότι/θέλεις/395-και-εδώ.html

και εδώ https://www.myringdesign.gr/el/p/395-.html

Θα σε κάνουν redirect στο canonical. Aρκεί να υπάρχει το /p/ (ή ότι έχεις βάλεις στο settings στα url για τα products) και το id- (395-)

το ίδιο και σε brand, categories κτλ.

Αυτό από 1.7 και πάνω.

ωραίος! κατανοητό. Το /p/ που το βάζεις?

Link to comment
Share on other sites

On 10/19/2023 at 2:01 AM, Kogkalidis said:
INSERT INTO ps_product_lang (id_product, id_lang, link_rewrite) VALUES 
    (1, 1, "my-first-product"),
    (1, 2, "το-πρώτο-προϊόν"),
    (2, 1, "my-second-product"),
    (2, 2, "το-δεύτερο-προϊόν")
    ON DUPLICATE KEY UPDATE link_rewrite = VALUES(link_rewrite);

 

Επιστρέφει
#1062 - Duplicate entry '4330-1-4' for key 'PRIMARY'
αυτό δηλαδή

(4330, 4, 'προϊόν-δοκιμαστικό')

Link to comment
Share on other sites

Γιατί κάνεις insert? Δεν έχεις μεταφέρει τα δεδομένα από το παλιό? Update θα κάνεις μόνο το link_rewrite.

Υ.Γ. το table ps_product_lang έχει primary key τρία πεδία id_product, id_shop, id_lang , οπότε τα queries να φροντίσεις να τα έχουν.

Link to comment
Share on other sites

Γίνετε και με Insert το mass update όπως γράφει ο Kogka, δηλαδή π.χ.

INSERT INTO students 
    (id, score1, score2)
    VALUES 
        (1, 5, 8),
        (2, 10, 8),
        (3, 8, 3),
        (4, 10, 7)
    ON DUPLICATE KEY UPDATE 
        score1 = VALUES(score1),
    score2 = VALUES(score2);

Αυτό εξυπηρετεί γιατί στα values κάνεις copy-paste ακριβώς ότι έκανες export απο την παλιά βάση χωρίς να χρειάζετε να αλλάζεις τις γραμμές σε π.χ.
UPDATE students SET score1 = 5, score2 = 8 WHERE id = 1;

Το id_shop μάλλον δεν χρειάζετε και σας είναι primary γιατί όταν δεν το δηλώνεις παίρνει default value=1
1377459657_.png.e6134914ed1b88977e25c1e9c7a7e15e.png

To phpMyAdmin μου επέστρεφε
#1062 - Duplicate entry '4330-1-4' for key 'PRIMARY'
γιατί είχε όριο μεγέθους κατά την εισαγωγή! Τα έκανα import-update λίγα λίγα και όλα οκ.

Οπότε για να γυρίσουμε στο topic το ερώτημα παραμένει: Το Prestashop 8 σε ποιο σημείο μετατρέπει στα URL's τα Ελληνικά σε Greeklish? Και τελικά το κάνει σε όλους σε καθαρή εγκατάσταση ή μόνο σε εμένα επειδή έχουμε τσακωθεί;

Edited by Prestan0ob (see edit history)
Link to comment
Share on other sites

  • 2 months later...

Επανέρχομαι γιατί δεν έχει κλείσει το θέμα. Μάλλον το Migration module μεταφέροντας τα URL τα μετατρέπει σε Greeklish. Δεν μπορώ να το εξηγήσω διαφορετικά. Έχει κάποιος παρόμοια εμπειρία μετά απο migration?

 

 

Edited by Prestan0ob (see edit history)
Link to comment
Share on other sites

Δεν κάνει τα url σε greeklish. Δοκιμασμένο σε 8.0.5 και 8.1.3 clean install. Με ή χωρίς Accented URL. Έχει την ίδια συμπεριφορά με πριν.

Δηλαδή στα βάζει - ή το product title στα ελληνικά.

Link to comment
Share on other sites

25 minutes ago, sanctusmob said:

Δεν κάνει τα url σε greeklish. Δοκιμασμένο σε 8.0.5 και 8.1.3 clean install. Με ή χωρίς Accented URL. Έχει την ίδια συμπεριφορά με πριν.

Δηλαδή στα βάζει - ή το product title στα ελληνικά.

Ναι επιβεβαιώνω και εγώ. Ούτε το migrate module το έκανε. Ούτε το module SEO PRO. Τα Greeklish URL δημιουργούνται κατά την εισαγωγή με το migration module και πρέπει να βρω οπωσδήποτε τι τα δημιουργεί για να το απενεργοποιήσω.

Link to comment
Share on other sites

Για τους Developers που έχουν ασχοληθεί με το θέμα στο παρελθόν @Kogkalidis @sanctusmob @nextpointer.gr

Παρακαλώ επιβεβαιώστε πως το Prestashop τελικά έχει δυο μηχανισμούς για να παράγει URL’s. Ο ένας είναι με Javascript μέσα απο την διαχείριση του προϊόντος στο SEO Tab ή όταν απλά δημιουργείς ένα νέο προϊόν. Αυτό παράγει Ελληνικά URL απο τον τίτλο.
 
Και δεύτερο function σε PHP που μετατρέπει τους τίτλους των προϊόντων σε Greeklish για να φτιάξει τα URL, όταν εισάγεις με οποιονδήποτε τρόπο προϊόντα είτε με CSV ή οτιδήποτε άλλο αρχείο είτε με Migration.

Εαν ισχύει κάτι τέτοιο θα πρέπει να διορθωθεί. Ίσως κάποιος ήδη έχει αναφέρει το ζήτημα στο github. Αλλιώς πρέπει να βρεθεί λύση για όσους κάνουν εισαγωγή προϊόντων με οποιοδήποτε τρόπο και θέλουν URL με Ελληνικά και όχι Greeklish.

*Ένα Module που έχω προμηθευτεί και λέγετε Tidy for Prestashop κάνει mass regenerate τα URL's αλλά δυστυχώς χρησιμοποιεί και αυτό τον δεύτερο τρόπο.
 

Edited by Prestan0ob (see edit history)
Link to comment
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
×
×
  • Create New...