Jun 19 2010

Διόρθωσε το πρόβλημα με το λάθος collation σε WordPress

To WordPress έφτασε στην εκδοση 3.0 και μαζί με την αναβάθμιση του αποφάσισα να αντιμετωπίσω ένα παλιό πρόβλημα που είχα στη βάση δεδομένων με το λάθος collation.

Παρόλο που η βάση μου ήταν utf-8 το λάθος collation δημιουργούσε πρόβλημα στην αναζήτηση και έβγαζε διαφορετικά αποτελέσματα όταν έγραφες μια λέξη με κεφαλαία, πεζά, κεφαλαίο το αρχικό γράμμα κλπ.

Μέχρι τώρα για να μη πέσω στα σκληρά (=διορθώσω) είχα ξυλωσει την αναζήτηση του WordPress και είχα προσθέσει την αναζήτηση του Google (=σίδερα μασάει ο κουταλιανός, όλα τα σφάζει όλα τα μαχαιρώνει). Εδώ να σημειώσω πως όταν έχεις λάθος κωδικοποίηση τα ελληνικά μέσα στη βάση όταν τα βλέπεις μέσω phpmyadmin μοιάζουν με κινέζικα ούτως ή άλλως όπως θα δείτε και στην εικόνα της δημοσίευσης μου, αλλά αυτό δε με επηρέαζε καθόλου αν εξαιρέσεις το πρόβλημα με το search.

Για να πάρουμε τα πράγματα από την αρχή όμως, πρέπει να πούμε ότι παρόμοιο πρόβλημα μπορεί να αντιμετωπίσει κάποιος που έστησε αυτόματα το WordPress πριν πολλά χρόνια π.χ. με Fantastico ή την έκανε manual αλλά ξέχασε (ή δε σκέφτηκε) να αλλάξει το collation σε utf_general_ci. Αυτό λογικά είχε ως αποτέλεσμα να εγκατασταθεί η βάση του με collation latin1_swedish_ci το οποίο δημιουργεί το πρόβλημα. Εδώ να σημειώσω πως σε πρόσφατες εγκαταστάσεις με Fantasticο η εγκατάσταση έγινε με σωστό collation.

Φυσικά μέσα από το phpmyAdmin μπορείς εύκολα να αλλάξεις το collation με μια εντολή αλλά κανείς δε σου υπόσχεται ότι δε θα γίνει ολοκαύτωμα στους ελληνικούς χαρακτήρες της βάσης σου. Στην καλύτερη των περιπτώσεων μπορεί να ανατιναχτούν 2-3 χαρακτήρες μόνο αλλά και αυτό μπορεί να σου βγάλει τόση δουλειά σε editing που να καταριέσαι την ώρα και τη στιγμή που το έκανες. Οπότε καταλαβαίνετε γιατί προτιμούσα τη λύση της αναζήτησης του google ως τώρα.

Χθες όμως μάλλον με χτύπησε ο καύσωνας κατακέφαλα και με έκανε να σκεφτώ μια διαφορετική λύση την ώρα που αναβάθμιζα το WordPress. Ως ιδέα σε θεωρητικό επίπεδο μου έμοιαζε καλή και θεώρησα πως θα είχε επιτυχία, όπως και είχε. Οπότε αποφάσισα να μοιραστώ τη λύση μαζί σας.

Ουσιαστικά αυτό που έκανα ήταν να ακολουθήσω τη διαδικασία που θα έκανα σε περίπτωση που θα ήθελα να αλλάξω domain ή hosting.

Αρχικά μετονόμασα το φάκελο με τα αρχεία μέσω ftp και προσπάθησα να κάνω νέα εγκατάσταση μέσω fantastico. Απέτυχε παταγωδώς η προσπάθεια γιατι μου έλεγε πως δε μπορεί να κάνει δεύτερη εγκατάσταση στο ίδιο domain (θυμόταν την προηγούμενη και δε την ξεχνούσε με τίποτα). Οπότε το πήρα αλλιώς και πήγα για χειροκίνητη εγκατάσταση. Ας δούμε τα βήματα.

1. Από τα Tools της sidebar στο WordPress, επέλεξα την καρτέλα Export και αποθήκευσα το αρχείο στον υπολογιστή μου. Αυτό σώζει όλα τα δεδομένα είτε είναι post, είτε σχόλια, είτε κατηγορίες και tags.

2. Έφτιαξα τη βάση και το user και άλλαξα το collation μέσω phphmyadmin σε utf_general_ci.

3. Μέσω ftp δημιούργησα έναν φάκελο με το όνομα που είχε αρχικά ο φάκελος (αν δεν έχετε τέτοιο δικαίωμα κατεβάστε τα αρχεια στον υπολογιστή σας και διαγράψτε τα από τον server για να αδειάσει)

4. Ακολούθησα όλη τη διαδικασία νέας εγκαστάσης του WordPress

5. Μετά την ολοκλήρωση της εγκατάστασης, συνδέθηκα στο WordPress και διέγραψα το συνηθισμένο Hello World post που δημιουργείται με κάθε νέα εγκατάσταση.

6. Από τα Tools της sidebar στο WordPress, επέλεξα την καρτέλα Import και στη συνέχεια WordPress. Πλέον σου λέει να κατεβάσεις ένα plugin για το import. Το κατέβασα το ενεργοποίησα και έκανα import το αρχείο που είχα κατεβάσει στον υπολογιστή μου με τα post κλπ. Πλέον είχα ξανά όλες τις δημοσιεύσεις και τα σχόλια μου.

7. Στη συνέχεια ανεβάζουμε όλο το φάκελο που περιέχει τις φωτογραφίες μας μέσω ftp στην ίδια θέση που ήταν.

8. Αλλάζουμε τα Permalinks για να ταιριάζουν με τα προηγούμενα, ανεβάζουμε και ενεργοποιούμε τα plugin και το Theme που είχαμε και είμαστε έτοιμοι με μια ολόφρεσκη εγκατάσταση για το blog ή την ιστοσελίδα μας.

9. Για λόγους χωρητικότητας διαγράφουμε την παλιά βάση και τα παλιά και πλέον αρχεία από το server μας όταν δούμε ότι όλα λειτουργούν σωστά.

Σημείωση: Για να ακολουθήσεις τη διαδικασία θα πρέπει να έχεις μια σχετική ευχέρεια με τα εξής: ftp, phpmyadmin, wordpress installation. Αν όχι καλύτερα να απευθυνθείς σε κάποιον που δε του μοιάζουν κινέζικα όλα όσα έγραψα.

2 Comments to “Διόρθωσε το πρόβλημα με το λάθος collation σε WordPress”

  1. Ether

    Λειτουργεί μια χαρά και το collation “utf8_unicode_ci”

    Επίσης αν έχεις Mac, αντί για PhpMyAdmin μπορείς να χρησιμοποιήσεις το Sequel Pro (http://www.sequelpro.com/) είναι πολύ γρήγορο και αξιόπιστο.

    6-20-2010
  2. popelix

    Πολύ ενδιαφέρον! Είναι ένα θέμα τα ελληνικά με την MySql αλλά και τις σελίδες php… Ειδικά αν είσαι αρχάριος, βαράς το κεφάλι σου στον τοίχο άνετα! Ευχαριστούμε για την ενημέρωση!!!

    6-20-2010

Leave a Comment