Jak ve WordPress omezit délku komentáře?

  Návody

Věděli jste, že WordPress nijak zásadně neomezuje délku komentářů? Neexistuje žádný pevný limit pro délku komentářů. Pokud není omezená velikost komentáře, může to způsobit několik problémů.

Mezi nejčastější patří:

  • Zhoršení čitelnosti a přehlednosti příspěvku anebo i celého webu, pokud jsou komentáře příliš dlouhé nebo obsahují zbytečné informace. Nikdo nechce scrollovat přes normostránky textu.
  • Zvýšení nároků na úložný prostor. V Česku máme výhodu, že mezi hostingy je silné konkurenční prostředí, takže i za pár korun dostanete opravdu hodně prostoru v databází. Nicméně nahromaděný spam jej může hodně rychle začínat ukusovat.
  • Pokud máte stovky komentářů o délce normostrany, tak stáhnout a zobrazit takovouto stránku nemusí být vždy snadné pro pomalejší počítače a mobilní telefony.
  • Ztížení správy a moderace komentářů. Pokud jsou komentáře příliš dlouhé, tak strávíte moderací hodně času.

Jak omezit délku komentářů ve WordPress

V podstatě se používají dvě metody jak omezit délku komentářů. Nejsnazší je samozřejmě použít plugin.

Omezte délku komentářů pomocí pluginu

Jedním z nejjednodušších způsobů, jak omezit délku komentářů ve WordPressu, je použít plugin. 

Comment Link Remove and Other Comment Tools

Například můžete použít plugin Comment Link Remove and Other Comment Tools, který vám umožní nastavit maximální a minimální počet znaků pro komentáře.

Tento plugin toho umí o dost více. Má v sobě zabudovanou i další sadu nástrojů, kterou oceníte zvláště pokud potřebujte čistit zaspamovaný WordPress.

Limit Comments and Word Count

Pokud potřebujte jen něco jednoduššího, pak zkuste Limit Comments and Word Count.

Limit Comments and Word Count přidává nad pole s formulářem komentáře aktivní počítadlo písmen a slov. Jakýkoli komentující, který překročí limit slov, bude upozorněn jakmile se uživatel pokusí napsat více slov. Pokud se uživatelé přesto pokusí komentář odeslat, zobrazí se pod polem pro komentář varovný dialog, ve kterém bude uveden limit a komentář nebude zveřejněn.

Plugin umožňuje přidělit určitým uživatelům možnost psát delší komentáře, což je celkem zajímavá vychytávka.

Omezte délku komentářů pomocí funkce

Pokročilejší uživatelé mohou omezit maximální délku komentáře pomocí následující funkce:

// Funkce pro omezení délky komentáře
function wpb_comment_length_limit($commentdata) {
  $max_length = 600; // Proměnná s maximální délkou komentáře
  $comment_content = $commentdata['comment_content'];
  if (strlen($comment_content) > $max_length) {
    wp_die('Váš komentář je příliš dlouhý. Maximální délka je ' . $max_length . ' znaků.'); // Zobrazte chybovou zprávu
  }
  return $commentdata;
}
add_filter('preprocess_comment', 'wpb_comment_length_limit');

Tato funkce slouží k omezení délky komentářů na WordPress webu. Je implementována jako filtr v procesu zpracování komentářů, což znamená, že se spouští před uložením komentáře do databáze.

Funkce přijímá pole $commentdata, které obsahuje data o komentáři, včetně textu komentáře, a ukládá je do proměnné $comment_content. Následně se porovnává délka komentáře s maximální délkou uloženou v proměnné $max_length (v tomto případě 600 znaků).

Pokud je délka komentáře větší než maximální délka, funkce zavolá funkci wp_die(), která zobrazí chybovou zprávu a zastaví proces ukládání komentáře. Chybová zpráva obsahuje informaci o maximální délce komentáře, kterou si může správce webu přizpůsobit.

Pokud je délka komentáře v pořádku, funkce vrátí původní pole $commentdata a proces uložení komentáře pokračuje dál.

Napiš komentář