2016-03-19 12 views
1

Özel bir sorunum var. XML'i Wordpress yayınlarına almak için WP All Import Pro eklentisini kullanıyorum.Wordpress remove_accents() XML'den değer alırken çalışmaz

Wordpress işlevine ihtiyacım var remove_accents() yayın slug için Çekçe vurgular (ěščřžýáíé).

Değişkeni el ile ayarlıyorum ($ mytitle'ı yok say), her şey düzgün çalışıyor.

function seofriendly_slug($mytitle) { 
    $finalslug = remove_accents("Test string ěščřžýáíé"); 
    return $finalslug; 
} 

OUTPUT: Test string escrzyaie 

Ama XML gelen değişken $ MyTitle (utf8) kullanıyorsanız:

[seofriendly_slug({PRACOVISTE[1]/@nazev})] 

Değişken propertly ayarlanır ancak remove_accents çalışmıyor:

function seofriendly_slug($mytitle) { 
    $finalslug = remove_accents($mytitle); 
    return $finalslug; 
} 

OUTPUT: Test string ěščřžýáíé 

Son bilgi: Ne zaman Ben mb_detect_encoding ($ mytitle) kullanıyorum, çıktı "ASCII" ama XML başlığında UTF-8.

cevap

0

WorkScout tema yaratıcısı PureThemes'ten çözüm alıyorum.

html_entity_decode($prepareslug, ENT_QUOTES, 'UTF-8'); 

Final kodu:

function seofriendly_slug($nazev,$doplnek,$obec) { 
    if ($doplnek ==NULL) { $titulek = $nazev; } 
     else { $titulek = $doplnek; } 
    $prepareslug = $titulek."-".$obec; 
    $prepareslug = html_entity_decode($prepareslug, ENT_QUOTES, 'UTF-8'); 
    $finalslug = sanitize_title($prepareslug); 
    return $finalslug; 
}