Spam je pre používateľov WordPressu pretrvávajúcim problémom. S veľkým počtom botov a spammerov, ktorí cielia na WordPress stránky, nie je prekvapením, že mnohí vlastníci stránok neustále hľadajú najlepší spôsob, ako svoje stránky ochrániť. Aj keď je k dispozícii mnoho pluginov, ktoré môžu pomôcť s ochranou proti spamu, môžu tiež spomaliť vašu stránku a priniesť potenciálne bezpečnostné riziká. V tomto príspevku preskúmame jednoduché, ale efektívne spôsoby, ako ochrániť vašu WordPress stránku pred spamom bez použitia pluginov.
1. Globálne alebo selektívne zakázanie komentárov
Jedným z hlavných zdrojov spamu na WordPress stránkach je sekcia komentárov. Ak na svojej stránke nepotrebujete komentáre, môžete ich jednoducho globálne zakázať. Postupujte podľa týchto krokov:
- Prihláste sa do svojho WordPress dashboardu.
- Prejdite na Nastavenia > Diskusia.
- V časti Predvolené nastavenia príspevkov odškrtnite políčko vedľa Povoliť ľuďom pridávať komentáre k novým príspevkom.
- Na spodnej časti stránky kliknite na Uložiť zmeny.
Ak chcete zakázať komentáre iba na konkrétnych príspevkoch alebo stránkach, postupujte podľa týchto krokov:
- Prejdite na stránku Upraviť pre príspevok alebo stránku, kde chcete zakázať komentáre.
- V pravom bočnom paneli nájdite panel Diskusia. Ak nie je viditeľný, kliknite na trojbodkové menu v pravom hornom rohu a vyberte Možnosti na povolenie panelu Diskusia.
- Odškrtnite políčko vedľa Povoliť komentáre.
- Kliknite na Aktualizovať alebo Publikovať na uloženie zmien.
2. Implementácia honeypot techniky
Honeypot je metóda používaná na zachytenie spam botov pridaním skrytého poľa do vášho formulára na komentáre, ktoré vidia iba boti. Keď bot vyplní skryté pole, odhalí sa ako spammer a komentár môže byť zablokovaný. Na implementáciu honeypotu na vašej WordPress stránke pridajte nasledujúci kód do súboru functions.php
vašej témy:
function add_honeypot_field($fields) {
$fields['honeypot'] = '';
return $fields;
}
add_filter('comment_form_default_fields', 'add_honeypot_field');
function check_honeypot_field($commentdata) {
if (!empty($_POST['honeypot'])) {
wp_die('Spam detected.');
}
return $commentdata;
}
add_filter(‘preprocess_comment’, ‘check_honeypot_field’);
3. Použitie .htaccess na blokovanie spam botov
Ďalším spôsobom, ako ochrániť vašu WordPress stránku pred spamom, je upraviť váš .htaccess súbor. Pridaním niekoľkých riadkov kódu môžete zablokovať známe spam boty, aby nemali prístup na vašu stránku. Pridajte nasledujúci kód do vášho .htaccess súboru:
Block spam bots
RewriteEngine On
RewriteCond %{HTTP_USER_AGENT} ^.(SpamBot|BadBot|FakeBot|AnnoyingBot).$ [NC]
RewriteRule .* - [F,L]
Nahraďte SpamBot|BadBot|FakeBot|AnnoyingBot
používateľskými agentmi konkrétnych botov, ktoré chcete zablokovať.
4. Pridanie vlastného CAPTCHA
CAPTCHA môže byť efektívnym spôsobom, ako zabrániť spamu tým, že vyžaduje od používateľov splnenie jednoduchej úlohy pred odoslaním komentára. Môžete pridať vlastné CAPTCHA na vašu WordPress stránku bez pluginu podľa týchto krokov:
- Vytvorte nový plugin: Najprv vytvorte nový plugin vytvorením novej zložky v adresári pluginov WordPress wp-content/plugins/. Pomenujte zložku niečo opisné, napríklad custom-captcha.
- Vytvorte nový PHP súbor: Vytvorte nový PHP súbor v pluginovej zložke a pomenujte ho niečo ako custom-captcha.php. Tento súbor bude obsahovať kód pre vaše vlastné CAPTCHA.
- Pridajte CAPTCHA kód: Pridajte kód pre vaše vlastné CAPTCHA do súboru custom-captcha.php. Existuje mnoho rôznych typov CAPTCHA, ktoré môžete použiť, ako napríklad obrazové, matematické alebo otázkové. Vyberte typ CAPTCHA, ktorý je vhodný pre vašu webovú stránku, a pridajte kód podľa toho.
- Pridajte CAPTCHA do formulára na komentáre: Na pridanie CAPTCHA do formulára na komentáre budete musieť upraviť šablónu formulára na komentáre vašej témy. Nájdite súbor comments.php vo vašej téme a pridajte nasledujúci kód tam, kde chcete, aby sa CAPTCHA zobrazila:
<?php if (function_exists('custom_captcha_display')) custom_captcha_display(); ?>
- Uložte a aktivujte plugin: Uložte súbor custom-captcha.php a aktivujte plugin v admin paneli WordPress. Vaše vlastné CAPTCHA by teraz malo fungovať na vašej WordPress stránke. Upozorňujeme, že toto je základná implementácia a môže byť vylepšená ďalšími funkciami, ako sú prispôsobiteľné nastavenia alebo podpora pre viacero jazykov.
5. Ako zmeny vo WordPress 4.4 narušili antispamové pluginy a čo s tým môžete urobiť
Dôvod, prečo antispamové pluginy prestali fungovať vo WordPress 4.4, je zmena v tom, ako WordPress spracováva komentáre. V predchádzajúcich verziách WordPressu sa komentáre načítavali na každej stránke, aj keď stránka nemala žiadne komentáre. To umožňovalo antispamovým pluginom kontrolovať a filtrovať spamové komentáre pred ich zobrazením.
Avšak vo WordPress 4.4 bola zavedená nová funkcia nazývaná “čiastočné načítanie”, ktorá načítava iba potrebné časti stránky na zlepšenie výkonu. To znamená, že komentáre sa už nenačítavajú na každej stránke, čo sťažuje antispamovým pluginom filtrovať spamové komentáre pred ich zobrazením.
Na vyriešenie tohto problému môžete vyskúšať jedno z nasledujúcich riešení:
- Aktualizujte svoj antispamový plugin na novšiu verziu, ktorá je kompatibilná s WordPress 4.4 a vyššie. Mnohé antispamové pluginy boli aktualizované, aby fungovali s čiastočným načítaním zavedeným vo WordPress 4.4.
- Zakážte čiastočné načítanie pridaním nasledujúceho kódu do vášho súboru functions.php:
add_filter( 'wp_comment_query', function( $query ) {
if ( ! is_admin() && ! empty( $query['query_vars']['type'] ) && 'comment' === $query['query_vars']['type'] ) {
$query['query_vars']['type'] = '';
}
return $query;
} );
Týmto zakážete čiastočné načítanie pre komentáre, čo umožní antispamovým pluginom filtrovať spamové komentáre pred ich zobrazením.
- Použite vstavanú antispamovú službu Akismet poskytovanú WordPressom. Akismet je výkonná antispamová služba, ktorá je súčasťou WordPressu. Budete sa musieť zaregistrovať pre API kľúč, ale po aktivácii Akismet automaticky filtruje spamové komentáre.
Je dôležité poznamenať, že aj keď antispamové pluginy môžu pomôcť filtrovať spamové komentáre, nie sú 100% účinné. Vždy je dobré monitorovať vaše komentáre a manuálne schvaľovať alebo odmietať tie, ktoré sú otázne. Použitím kombinácie antispamových pluginov a manuálnej moderácie môžete udržať vašu WordPress stránku bez spamu.
Last modified: 30 apríla, 2025