Publikuję HTML wygenerowany w programie Word do WordPress za pośrednictwem XMLRPC. Zanim przejdę do post.php, format jest poprawnie zachowany w bazie danych. TinyMCE wykonuje swoją magię i tracę sporo szczegółów formatowania.
Głównym problemem, jaki widzę, jest to, że <span>
znacznik z informacjami o stylu otaczającymi inne elementy jest usuwany. Sprawdziłem, że te tagi są rzeczywiście usuwane przez TinyMCE, a nie Kses. Czy istnieje sposób, aby uniemożliwić TinyMCE zmianę kodu HTML? próbowałem
add_filter('tiny_mce_before_init', 'tinymce_init');
function tinymce_init( $init ) {
$init['extended_valid_elements'] .= ', span[style|id|nam|class|lang]';
$init['verify_html'] = false;
return $init;
}
co nie pomogło. Zgodnie z dokumentacją TinyMCE „Verify_html”
Ta opcja włącza lub wyłącza funkcję czyszczenia elementu. Jeśli ustawisz tę opcję na false, wszystkie czyszczenie elementów zostanie pominięte, ale inne funkcje czyszczenia, takie jak konwersja adresów URL, będą nadal wykonywane.
Jeśli korzystasz z wtyczki TinyMCE Advanced , istnieje dodatkowa wtyczka o nazwie TinyMCE Advanced Configuration , za pomocą której możesz zmieniać ustawienia konfiguracji, takie jak opcja Extended_valid_elements.
źródło