Envato Elements - pobierasz co chcesz, ile chcesz

Jakiś czas temu koleżanka zasygnalizowała mi, że na jej firmowym laptopie, w przeglądarce Chrome w przypadku niektórych (!) artykułów nie wyświetla się treść – widzi nagłówek (logo i menu), a potem dopiero przyciski nawigacyjne „następny” i „poprzedni” artykuł, pole „o autorze”, listę podobnych wpisów, komentarze i stopkę. Do tego pasek boczny (sidebar). Czyli właściwie wszystko, poza najważniejszym, czyli treścią artykułu. Z racji tego, że dotyczyło to tylko niektórych wpisów, do tego u mnie nie udało się na żadnej przeglądarce powtórzyć tego błędu, temat trafił na listę zadań, do zrobienia… później.

Niedawno jednak podobny problem zgłosił inny czytelnik. W tym momencie to już nie incydent na specyficznie skonfigurowanym komputerze firmowym, a pewnego rodzaju reguła, którą postanowiłem sprawdzić dokładniej…

uBlock Origin blokuje treść niektórych artykułów

Szybko udało się ustalić, że w obu przypadkach – czytelnik i koleżanka – w przeglądarce Chrome zainstalowana była wtyczka uBlock Origin, która z założenia służy do blokowania reklam i innych „przeszkadzajek”. Przynajmniej w teorii, bo w przypadku strony WebInsider.pl blokowała nie tylko potencjalne reklamy (niektóre), ale całe artykuły, łącznie z tytułem.

Winny ustalony, została przyczyna. Niby powinno być prościej, ale… W tym momencie znowu postanowiłem temat zostawić na kilka dni, bo niestety, ale czas z gumy nie jest, i wzywały inne zadania.

Reklama w nazwie kategorii, reklama w nazwie tagu

I tak temat czekał sobie, aż znowu do niego przysiądę, aż tu nagle, trochę przy okazji, bo podczas rozmyślań nad innym projektem, przyszedł mi do głowy potencjalny klucz do rozwiązania i tej zagadki. Z racji tego, że sprawa dotyczy tylko niektórych artykułów, więc nie mogło chodzić o nic, co było stałym elementem każdego artykułu. To musiał być jakiś drobiazg, który łączy z pozoru niezwiązane ze sobą artykuły. Czyli tag lub kategoria.

I to był strzał w dziesiątkę. Tak wygląda w Chrome z aktywną wtyczką uBlock Origin np. ostatni wpis o błędzie podczas importowania bazy danych MySQL:

Teraz w ramach testów dodajemy tag lub kategorie z wyrazem „reklama” w nazwie (działa gdy „reklama” znajduje się tylko w nazwie tagu, tylko w nazwie kategorii, oraz zarówno w nazwie tagu i kategorii):

I mamy wynik, czyli brak artykułu:

Jest takie powiedzenie, że „nadgorliwość jest gorsza od faszyzmu” (i komunizmu), i choć raczej się z nim nie zgadzam, to tu mamy na pewno przykład nadgorliwości, która w ostatecznym rozrachunku uderza nie w autora strony, ale bezpośrednio w czytelnika, który nie zapozna się z artykułem. Tylko dlatego, że wtyczka uBlock Origin tak (nad)gorliwie szuka reklam na stronie, że blokuje cały kontener z artykułem, bo wśród nazw tagów i/lub kategorii pojawia się wyraz „reklama”.

Za całe zamieszania prawdopodobnie odpowiada „filtr statyczny” znajdujący się na liście „POL: polskie filtry do Adblocka i uBlocka”, który wygląda tak:

pl##[class*="reklama"]

A w WordPressie (i używanym przeze mnie motywie) jest tak, że zarówno tag jak i kategoria trafiają również jako nazwy klas m.in. do elementów związanych z wyświetlaniem treści. I raczej nie planuje zrezygnować z tagów i kategorii zawierających wyraz „reklama” z tego powodu. Nie dość, że wydaje mi się to bez sensu, to zapewne nie jest to też jedyny wyraz, na którym wtyczka głupieje. Przynajmniej na tej stronie.

Postanowiłem jednak wdrożyć prosty mechanizm, którego zadaniem jest wykryć sytuację, gdy kontener z artykułem został zablokowany, i wyświetlić informację dla „ofiary uBlocka/AdBlocka” o tym, że treści nie ma, bo… blokuje reklamy:

<script type="text/javascript">   jQuery(document).ready(function($) {   if(!$('article').is(":visible")) {   // AdBlock info   setTimeout(function() {   alert("Info dla osoby z AdBlockiem/uBlockiem");   }, 5000);   }   });  </script>

Powyższy kod umieszczony w nagłówku strony pilnuje elementu „article” na stronie, i gdy go nie znajdzie – bo został zablokowany – po 5 sekundach od załadowania strony wyświetli odpowiedni komunikat (po lekkiej modyfikacji kod można wykorzystać również do pilnowania blokowania faktycznych reklam).

A jak patrzę na listę domen, z których zasoby zostały zablokowane, to… Sam na niektórych (!) stronach korzystam z blokowania reklam, ale – jak we wszystkim – warto zachować w tym umiar, którego tu chyba zabrakło. Zresztą w przypadku tego artykułu na pewno pojawi się tag „reklama”, a być może i tego typu kategoria… ;-)

(!) Zgłoś błąd na stronie
Potrzebujesz profesjonalnej pomocy? Skontaktuj się z nami!
Spodobał Ci się artykuł? Zapisz się do naszego Newslettera - ZERO SPAMu, same konkrety, oraz dostęp do dodatkowych materiałów przeznaczonych dla subskrybentów!
Na podany adres e-mail otrzymasz od nas wiadomość e-mail, w której znajdziesz link do potwierdzenia subskrypcji naszego Newslettera. Dzięki temu mamy pewność, że nikt nie dodał Twojego adresu przez przypadek. Jeśli wiadomość nie przyjdzie w ciągu najbliższej godziny (zazwyczaj jest to maksymalnie kilka minut) sprawdź folder SPAM.
Młody Szymon powiedział tacie o promocji dla czytelników WebInsider.pl i zaoszczędzili 80% na księgowości internetowej wFirma
WebInsider poleca księgowość wFirma
WebInsider korzysta z VPSa w HitMe.pl
WebInsider poleca VPSy DigitalOcean
WebInsider poleca serwis Vindicat
Napisz komentarz
wipl_napisz-komentarz_01Jeśli informacje zawarte na tej stronie okazały się pomocne, możesz nam podziękować zostawiając poniżej swój komentarz.

W tej formie możesz również zadać dodatkowe pytania dotyczące wpisu, na które – w miarę możliwości – spróbujemy Ci odpowiedzieć.
Linki partnerskie
Niektóre z linków na tej stronie to tzw. „linki partnerskie”, co oznacza, że jeśli klikniesz na link i dokonasz wymaganej akcji (np. zakup/rejestracja) możemy otrzymać za to prowizję. Pamiętaj, że polecamy tylko te produkty i usługi, z których sami korzystamy, i uważamy, że są tego na prawdę warte… :-)
Znaki towarowe i nazwy marek
W niektórych wpisach (oraz innych miejscach na stronie) mogą być przedstawione/użyte znaki towarowe i/lub nazwy marek, które stanowią własność intelektualną tych podmiotów, a zostały użyte wyłącznie w celach informacyjnych.
Roztańczona Karolina zapisała się do Newslettera WebInsider.pl i... teraz może tańczyć