Wordpress si problema cu diacriticele

Scris de Costin in data de 19 Februarie 2008 la ora 18:41
14 comentarii. Tu ce zici? | 601 vizualizari |

Nu cred ca sunt singurul care a facut upgrade la wordpress si si-a furat-o rau cu diacriticile. De taguri nici sa nu vorbim. Ultimate Tag Warrior e un nesimtit si un prost crescut. :)

Cand am schimbat tema m-am trezit cu urmatoarele semne prin textele mele: ş, î, â si ţ. Verificat baza de date, ok. Verificat UTF-8 peste tot, ok. Am luat decizia sa renunt definitiv la diacritice. Nu stiu ce a fost in capul meu cand m-am apucat sa scriu cu diacritice! Am schimbat cateva posturi de mana pana mi-am dat seama de urmatoarea relatie:

ÅŸ -> s
î -> i
â -> a
Å£ -> t

Astfel am ajuns aici:

UPDATE wp_posts SET post_title = replace( post_title, ‘ă’, ‘a’ ) ;
UPDATE wp_posts SET post_title = replace( post_title, ‘ÅŸ’, ’s’ ) ;
UPDATE wp_posts SET post_title = replace( post_title, ‘î’, ‘i’ ) ;
UPDATE wp_posts SET post_title = replace( post_title, ‘â’, ‘a’ ) ;
UPDATE wp_posts SET post_title = replace( post_title, ‘Å£’, ‘t’ ) ;

UPDATE wp_posts SET post_content = replace( post_content, ‘ă’, ‘a’ ) ;
UPDATE wp_posts SET post_content = replace( post_content, ‘ÅŸ’, ’s’ ) ;
UPDATE wp_posts SET post_content = replace( post_content, ‘î’, ‘i’ ) ;
UPDATE wp_posts SET post_content = replace( post_content, ‘â’, ‘a’ ) ;
UPDATE wp_posts SET post_content = replace( post_content, ‘Å£’, ‘t’ ) ;

Asa ca daca ai aceeasi problema, deschide un phpmyadmin (daca nu stii ce inseamna intreaba pe cel ce iti tine hostingul) si executa comenzile de mai sus. Merg cu wordpress 2.3.3. dar nu cred ca ar face probleme in nici o distributie. Tabela si coloanele ar trebui sa fie in principiu aceleasi.

Deci am rezolvat diacriticele in 5 minte. Definitiv! Spor.

Later edit: Am mai descoperit Î -> I, Ş -> S, Ţ -> T

Later edit: si pentru tabela de comentarii.

UPDATE wp_comments SET comment_content = replace( comment_content, ‘ă’, ‘a’ ) ;
UPDATE wp_comments SET comment_content = replace( comment_content, ‘ÅŸ’, ’s’ ) ;
UPDATE wp_comments SET comment_content = replace( comment_content, ‘î’, ‘i’ ) ;
UPDATE wp_comments SET comment_content = replace( comment_content, ‘â’, ‘a’ ) ;
UPDATE wp_comments SET comment_content = replace( comment_content, ‘Å£’, ‘t’ ) ;

UPDATE wp_comments SET comment_author = replace( comment_author, ‘ă’, ‘a’ ) ;
UPDATE wp_comments SET comment_author = replace( comment_author, ‘ÅŸ’, ’s’ ) ;
UPDATE wp_comments SET comment_author = replace( comment_author, ‘î’, ‘i’ ) ;
UPDATE wp_comments SET comment_author = replace( comment_author, ‘â’, ‘a’ ) ;
UPDATE wp_comments SET comment_author = replace( comment_author, ‘Å£’, ‘t’ ) ;

14 comentarii. Tu ce zici?

Cateva sute de persoane s-au abonat si citesc eCostin.com folosind un rss reader (ex: Google Reader sau Bloglines) ori pur si simplu pe e-mail, aici! Tu ce astepti? Cerere'n scris? :)

14 Responses to “Wordpress si problema cu diacriticele”

  1. Fac un backup la db si incerc sa modific, ca am aceasta problema si eu ma gindeam sa-i fac chiar un Find/Replace la tot fisierul cu backup la aceste caractere :) dar vad ca este metoda mai simpla :)

    Pavel Ciorici’s last blog post..Orange nu se lasa in urma

  2. Am intrat in phpmyadmin dar nu prea imi dau seama ce si unde trebuie sa modific… poti sa ma ajuti si sa-mi explici pas cu pas?

    Pavel Ciorici’s last blog post..Orange nu se lasa in urma

  3. Prima si prima oara -> BACKUP!

    - In stanga selectezi baza de date (daca ai mai multe :P)
    - In stanga (Dupa selectie) click pe wp_posts si ti se incarca tabela wp_posts in dreapta
    - unul din taburile din drepta sus e SQL. Click.
    - Copy Paste liniile de mai sus.
    - Fa-ti o cruce.
    - Apasa GO. :D

  4. e ok.. merge deja… era problema in apostrof.. ` si ‘ este un pic de diferenta :)

    Pavel Ciorici’s last blog post..Orange nu se lasa in urma

  5. E?ti sigur c? este de la WordPress? C? eu nu am nici o problem? în urma update-ului pe nici unul din bloguri (?i am câteva), toate cu diacritice. Din cât php ?tiu eu (nu prea mult, recunosc) nu are cum s? strice el.

    Cristian Banu’s last blog post..Regrup?ri ?i permut?ri

  6. @Paul: da, apostroafele mai sunt si vezi ca am mai facut un update. Cand ajung acasa termin si restul de scris.

    @Cristi: Dupa cum se vede nu imi merg diacriticile nici macar in comentarii. Trebuie sa fie totusi un fix pe undeva sau am eu vreo duda la server mai babana (iar lenea…).

    Ideea e ca ma plictisisem de diacritice si cautam o solutie simpla si rapida sa scap de ele. Nu prea sunt convins eu ca ar fi bune de ceva pentru SEO and stuff.

  7. Costin, ca sa fixezi diacriticile in comentarii si in alte parti, trebuie sa intri in phphmyadmin la fiecare tabel in structura de tip wp_comments si acolo o sa vezi ca e modificat encodingul… trebuie sa-l setezi la utf8, pentru ca upgrade-ul afecteaza…

    asa am patit si eu, dar deja am rezolvat :)

    Pavel Ciorici’s last blog post..Orange nu se lasa in urma

  8. da da….
    bere j&b :))

  9. Facusem deja ceea ce ai spus tu si nu a mers. Nu mi-a schimbat nimic. Asta a fost pasul decisiv in care mi-am spus “Amice, viata e simpla.” si am renuntat la diacritice 4 ever. :)
  10. n-ai nevoie de phpmyadmin, ci doar de pluginul asta
    http://bueltge.de/wp-suchen-und-ersetzen-de-plugin/114

    zoso’s last blog post..Aten?ie, IAB are standarde de email marketing!

  11. aaa….chchch…domnilor: diacritice (in concluzie, dicacriticele nu diacriticile). Va multumim pentru intelegere.

    lamaie’s last blog post..once a weed, always a weed

  12. Am avut si eu aceeasi problema si am gasit un plugin pt wordpress care face treaba in 3 secunde. http://g30rg3x.com/utf8-database-converter/

  13. @Zoso: ala e intr-o limba pe care nici ca ma gandesc vreodata sa o inteleg :P. Nu am avut timp dar ma ocup de el :)). Am vazut screenshots si pare interesant…

    @Mihai: Stiam de el dar nu a functionat. Am facut schimbarile si direct din mysql si la fel nici o schimbare.

  14. are si engleza in el.

    zoso’s last blog post..oferta cinemarx.ro c?tre bloggeri

Ai ceva de zis?

You can use these XHTML tags: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <code> <em> <i> <strike> <strong>