it-swarm-eu.dev

Jak odstranit výchozí „anonymní“ jméno autora komentáře?

V poli formuláře pro komentáře (modul pro základní komentáře) bych nechal jméno autora komentáře prázdné, abych povzbudil komentátory, aby přišli s původními epithety.

Jaký je nejjednodušší způsob, jak to udělat?

7
daphshez

Vidím několik způsobů, jak toho lze dosáhnout:

  1. Vlastní modul - někdo to dokonce napsal pro vás - http://drupal.org/node/240610#comment-1096024
  2. Pomocí potlačení řetězce - změňte Anonymous na [prázdný řetězec]
  3. Odstraňte jej z modulu komentáře - Správa obsahu -> Typy obsahu a klikněte na Upravit pro typ uzlu a povolte „Anonymní plakáty nemusí zadat své kontaktní informace“
  4. Použijte javascript - někdo to také napsal - http://drupal.org/node/240610#comment-2051378

Pravděpodobně bych se rozhodl pro možnost 1, protože to poskytuje větší flexibilitu při úpravě formulářů, aby vyhovovaly dalším požadavkům v budoucnosti

1
wiifm

hook_form_alter()

http://api.drupal.org/api/drupal/modules--system--system.api.php/function/hook_form_alter/7

Umožňuje připojit a změnit libovolný tvar, včetně nastavení výchozího textu na prázdný. Zde je několik dalších nápovědy k tomu, jaké platné prvky jsou:

http://api.drupal.org/api/drupal/developer--topics--forms_api_reference.html

Nejlepší způsob, jak začít, je zjistit ID formuláře vytvořením funkce mymodule_form_alter() a vytisknutím $form_id using print, takže se objeví v horní části stránky. (Nebo ještě lépe, použijte devel modul k jeho vytištění ve Drupal stavová zpráva). Jakmile znáte ID formuláře, můžete přidat if, abyste se ujistili, že jednat pouze v tomto formuláři a potom změnit pole tak, aby odstranilo výchozí hodnotu, kterou nechcete.

Podívejte se na téměř jakýkoli modul pro příklad implementace. Mnoho modulů používá tento háček. Nemohu myslet na žádný konkrétní příklad z hlavy, ale je tu spousta.

ÚPRAVA: Zde je dobrý blogový příspěvek Lullabot v této věci ... není příliš rozdíl mezi Drupal 6 a Drupal 7 v tomto ohledu, AFAIK): - http://www.lullabot.com/articles/modifying-forms-drupal-5-and-6

3
Greg

Jen poznámka pro ty, kteří se rozhodnou jít s vlastním modulem, ale dostanou Anonymous do vstupního pole Jméno bez zjevného důvodu a jejich hook_form_alter (nebo hook_form_comment_form_alter) je v pořádku.

Nezapomeňte odstranit comment_info_name cookie, který modul comment Javascript používá k uložení dříve použitého názvu. Trvalo mi nějaký čas, než jsem to zjistil ...

Je to vše na jednom místě zde: http://jan.tomka.name/blog/how-remove-anonymous-name-comment-form

2
Jan Tomka

Toto je druh jednoduchého Tweak, který bych udělal s JavaScriptem.

$(document).ready(function() {
    var editbox = $('#edit-name');
    if (editbox.val() == 'Anonymous' {
        editbox.val('');
    }
});

Pop, že někde v motivu a jméno pole je vymazáno, když je stránka načtena.

1
Paul Jones