Zpráva drupal_set_message se zobrazuje jenom přihlášeným?
Chtěl bych autorovi článku poslat e-mailem odkaz, na ten jeho článek tak, aby po kliknutí na odkaz se článek zobrazil zároveň se zprávou (drupal_set_message).
Ve svém modulu jsem vytvořil funkci, která kromě jiného obsahuje:
drupal_set_message(‚Zpráva, kterou chci zobrazit‘);
drupal_goto(drupal_get_path_alias(‚node/‘. $node->nid));
Pokud je uživatel přihlášený tak se mu zpráva i článek zobrazí. Pokud přihlášený není tak se zobrazí článek bez zprávy.
Zpráva (drupal_set_message) se zobrazuje jenom přihlášeným?
Jak to mohu řešit, když mu chci zobrazit článek se zprávou bez nutnosti se přihlásit?
Děkuji.
pozri do page.tpl.php tvojej
pozri do page.tpl.php tvojej temy ci tam nie je zapodmienkovane $messages
Je tam: <?php if
Je tam:
<?php if ($show_messages && $messages): print $messages; endif; ?>
pozri sa do template.tpl.php
pozri sa do template.tpl.php tvojej temy do funkcie hook_preprocess_page pripadne hook_preprocess a hladaj premennu $vars[‚show_messages‘] resp $variables[‚show_messages‘] a pozri sa aka je tam logika. Pripadne to zmaz z page.tpl.php a nechaj tam len
<?php if ($messages) print $messages ?>si rikam, jestli to nebude
si rikam, jestli to nebude nekde v prvky webu – themes – settings pro to konkretni theme. takovy ty ruzny fusion apod based veci tam maji dost velke moznosti.
template.tpl.php jsem
template.tpl.php jsem nenašel. Našel jsem pouze template.php, ale hledané výrazy hook_preprocess ani messages neobsahuje.
Do page.tpl.php jsem dal:
<?php if ($messages): print $messages; endif; ?>
místo původního:<?php if ($show_messages && $messages): print $messages; endif; ?>
Bohužel to nepomohlo. Přihlášenému se zpráva zobrazí, nepřihlášenému ne.Ještě bych upřesnil, že nezobrazení zprávy nepřihlášeným způsobuje zobrazení článku příkazem:
Pokud ho vynechám, zobrazuje se zpráva i nepřihlášeným.drupal_goto(drupal_get_path_alias(‚node/‘. $node->nid));
Pokud tedy příkaz použiji, tak se článek zobrazí přihlášeným i nepřihlášeným, ale zpráva:
drupal_set_message(‚Zpráva‘);
se zobrazí pouze přihlášeným.premaz cache inak sa zmena
premaz cache inak sa zmena neprejavi
Bohužel ani Výkon – Vyčistit
Bohužel ani Výkon – Vyčistit cache nepomohlo.
Poslat nový komentář