Wsparcie » Zaawansowane » Polskie litery w tagach

  • Witam, mam problem z polskimi literami w tagach. Mam stronę z zapleczem pozycjonerskim gdzie w tagach umieszczam słowa kluczowe i czasem muszę jako tag dodać słowo z polskimi literami np: 'pączek’ ale też w wersji bez polskich liter czyli 'paczek’ i jeśli wcześniej dodałem już 'pączek’ to nie mogę tego zrobić gdyż przy dodawaniu tagów jest wykonywana funkcja term_exists(), która zwraca true w tym przypadku. Czy jest jakiś ładniejszy sposób na obejście tego problemu niż dłubanie w kodzie źródłowym WP?

Viewing 5 replies - 1 through 5 (of 5 total)
  • Czy jest jakiś ładniejszy sposób na obejście tego problemu niż dłubanie w kodzie źródłowym WP?

    Dodawać tagi prawidłowo. To co podałeś(aś) oznacza że skorzystano nie z tych funkcji co trzeba.

    Jakby taksonomia była dodawana prawidłowo, to dodając „paczek” powinno utworzyć sluga „paczek-2”.

    Thread Starter partyzant

    (@partyzant)

    To się dzieje jeśli się dodaje tagi w trakcie edycji postu, jeśli się dodaje z panelu edycji tagów to jest ok (dodaje paczek-2) ale chodzi o to żeby nie tracić czasu i dodawać tagi od razu w trakcie edycji postu.
    Zaczęło się tak robić po ostatniej aktualizacji WP teraz jest 3.3.1. Ja się zajmuje WP od niedawna ale ponoć wcześniej nie było takich problemów.

    i dodawać tagi od razu w trakcie edycji postu

    faktycznie, przetestowałem i nie dodaje „paczek” jeżeli jest „pączek” 😀
    błąd do zgłoszenia

    Thread Starter partyzant

    (@partyzant)

    Naprawiłem to tak: w pliku wp-includes\taxonomy.php w funkcji wp_set_object_terms zamieniłem linię:
    if ( !$term_info = term_exists($term, $taxonomy) ) {
    na:

    if($taxonomy=='post_tag')
                        $term_info = $wpdb->get_row( $wpdb->prepare("SELECT tt.term_id, tt.term_taxonomy_id FROM $wpdb->terms AS t INNER JOIN $wpdb->term_taxonomy as tt ON tt.term_id = t.term_id WHERE t.name = %s AND tt.taxonomy = %s", array($term, $taxonomy)), ARRAY_A);
                    else
                        $term_info = term_exists($term, $taxonomy);
    
    if ( !$term_info ) {

    mam nadzieję, że nie będzie nic krzaczyc… i oczywiście db_colate na t.name musi być polisch_ci
    a błędy to gdzie się zgłasza?

    a błędy to gdzie się zgłasza?

    http://core.trac.wordpress.org/

Viewing 5 replies - 1 through 5 (of 5 total)
  • Temat ‘Polskie litery w tagach’ jest zamknięty na nowe odpowiedzi.