Jesteś pewien, że to komentarze, a nie pingbacki/trackbacki?
Koniecznie zaktualizuj WordPressa – niezależnie od tego, czy znajdziesz przyczynę opisywanego problemu.
Za poradami z innego forum w pliku wp-includes/comment.php na samym początku funkcji wp_insert_comment() wstawiłem return; I zadziałało więc chyba to nie pingbacki/trackbacki cokolwiek to jest. Teraz szukam wystąpień comment.php żeby znaleźć includowania/require dla tego pliku w innych plikach. Lista plików które znalazłem.
wp-settings.php
edit-comments.php
edit-form-comment.php
admin.php
class-wp-comments-list-table.php
dashboard.php
link-template.php
pluggable.php
dodaj do functions.php używanego motywu linijkę:
add_filter('comments_open', '__return_false');
(@doman18)
12 lat, 4 miesiące temu
Syndrom jest taki że mimo że komentarze są zablokowane to nadal przychodzi spam do potwierdzenia.
Oto lista rzeczy które próbowałem zrobić.
1. Zmieniłem CAPTCHA z działaniami matematycznymi na sweetCAPTCHA (przeciągnij obrazek na inny obrazek)
2. Zmieniłem nazwę pliku wp-comments-post.php na __delete_wp….php. Sprawdziłem nawet czy tak się da wysłać komentarz i oczywiście było powiadomienie że nie mógł znaleźć strony
3. Zakomentowałem w skórce wywołanie formularza komentarzy w single.php i w post.php.
4. Jakiś czas temu hasło do panelu admina zostało zmienione na ciąg 30 znaków z dużymi i małymi literami oraz znakami. Wygląda ono mniej więcej tak %#gGfAADffo34ń;,<SDFdf”o34ń;,<SDF. Dlatego nie sądzę żeby zostało złamane
Mimo to nadal przychodzi spam do zatwierdzenia i zachodzę w głowę jakim cudem. Podejrzewałem że ktoś bezpośrednio wrzuca je do bazy. Zmieniłem więc hasło do bazy i w pliku wp-config.php. Po dosłownie kilku minutach znów pojawiły się nowe komentarze spamowe. To mnie utwierdza w przekonaniu że chyba gdzieś musi być skrypt który korzysta z wp-config.php i który pozwala na wysłanie komentarzy. Czy się mylę? Czy jest jakaś inna możliwość aby zupełnie obejść formularze?
Ja wiem że jest Akismet jest Disqus ale tutaj chyba mam do czynienia z poważniejszą luką. I nawet jeżeli Akismet zadziała to będzie on leczył skutki a nie przyczynę. Oczywiście muszę zaktualizować WP ale zanim to zrobię muszę mieć pewność że owa luka dotyczy tylko tej wersji a nie że jest ona zupełnie autonomiczna od wersji wordpressa.