Czasami podczas edycji treści zaobserwować można dziwne ustawianie wierszy – niektóre słowa jakby na siłę są przenoszone do kolejnych wierszy. Winne za to są niełamliwe spacje.
Problem z niełamliwymi spacjami, które wstawia edytor TinyMCE jest dość tajemniczy. Nie każda osoba go doświadcza. W anglojęzycznej społeczności WordPress’a znalazłem wyjaśnienia, że za problem odpowiada przeglądarka Chrome, a nie edytor wizualny.
Rozwiązanie problemu twardych spacji
Są różne rozwiązania, które nie zawsze działają i bywają całkiem pokraczne. Poniżej przedstawiam to, które sprawdziłem i jestem z niego zadowolony.
W rozwiązaniu tym zbędne niełamliwe spacje są usuwane w momencie zapisywania treści w bazie danych. To zapewnia, że obojętnie ile tych niechcianych znaków wytworzymy w trakcie edycji wpisu do bazy danych trafi wyczyszczony tekst.
W celu wdrożenia tej łatki wystarczy do pliku functions.php naszego motywu dodać mały kod:
function magic_remove_nbsps($content) { $content = str_replace(array("\xc2\xa0", " "), " ", $content); return $content; } add_filter('content_save_pre', 'magic_remove_nbsps');
Jest jedna wada tego rozwiązania – działa tylko dla nowych wpisów, a jeśli chcemy usunąć niełamliwe spacje z już istniejących wpisów należy wejść do każdego i kliknąć „zaktualizuj”. Nie musimy nic edytować, wystarczy, aby wpis został ponownie zapisany w bazie danych.
A zdjęcie co ma wnieść do tego wpisu?
Ten gołąb wyglądał na mądrego doradcę, pewnie dzielił się ze swoimi pobratymcami wiedzą. A co, normalnie poczułem się jak taki dostojny jegomość, który dzieli się z innymi swoją mądrością! Eeee, jak on w Smerfach się nazywał? Mądrala? 😉
0 komentarzy