Hali.
Szeretnék egy szabályt létrehozni arra, hogy ha egy névtelen felhasználó be szeretne küldeni egy tarartalmat (tehát node/add/....) akkor autómatikusen ugorjon a regisztrációs oldalra.
Nos azt hittem ezt egyszerűen megoldom, de nem sikerült.
Mi legyen pl. az esemény?
Melyik modulhoz, modulokhoz kapcsolódik a téma?:
Drupal verzió:
Fórum:
Namármost, ha regisztrációhoz
Namármost, ha regisztrációhoz van kötve a tartalom beküldés, akkor ugye a jogosultságokat kell belőni. Innentől viszont minek kell átirányítani?
Eleve muszáj lesz regisztrálni, ha tartalmat akar beküldeni....
Erre nincs konkrétan ilyen trigger[*]. De, egyszer volt egy ilyen nekem;
Van ugye "A" lap:
-----
Hozzáférés megtagadva
Nincs megfelelő jogosultság a lap megtekintéséhez.
----
Na ezt szépen szerkesztjük, mehet rá link is a regisztrációhoz, és így már amúgy is kell bővebb információ. A felhasználóknak, sosem elég az infó. :)
Rendben, ez pl. nem irányít át magától, de szerintem ne is tegye. Én úgy vettem észre, jobb ha egy külön lapra viszed az usert, és ott megtalálja az információt; ez most miért történt, és egyáltalán mi merre... Meg fogják hálálni, ha informatív vagy.
[*] Lehet, van rá modul; De nem írtad, melyik Drupal verzió...
Végülis
ez is egy megoldás, ha minden kötél szakad.
Eerre azért van szükségem, mert bár a jogosúltságok be vannak állítva, de van egy tartalmam ami mindenki számára publikus, és ki van helyezve egy link, hogy ha úgy tartja kedve küldhet be bárki. Természetesen csak miután regisztrált, de ezt a link mellé nincs feltüntetve.
Ezért szerettem volna azt, hogy ennél az egy tartalomtípusnál ebben az esetben ugorjon a regisztrációs oldalra.
Ez rendben is van, de engem
Ez rendben is van, de engem zavarna, ha már eleve regisztrált tag vagyok,
csak nem vagyok belépve... :)
De megnézem neked, mit lehet tenni; van megoldás az biztos.
Este jelentkezem.
Köszönöm
Keresgéltem én is egyenlőre még semmi.
403
A Hibajelentés oldalon beállítod 403-nak a user vagy a user/register útvonalat.
Köszi
Ezt még nem is néztem, ez még jó is lehetne, csak az a baj, hogy ezt a dolgot csak erre az egy tartalomtípusra szeretném alkalmazni. Így viszont gondolom az összesre vonatkozik.
Ez egy nagyon szép és drága
Ez egy nagyon szép és drága esemény: content is going to be viewed, drupalul a hook_init. Ez azt jelenti, hogy minden oldalletöltésből el fog rabolni 20-40ms-ot csak az, hogy beindul a rules, és nem fut le, mert ugye megakad a feltételnél.
Szóval inkább egy page_preprocess, valami ilyesmivel:
----
Rájöttem, miért kérdezek olyan ritkán a drupal.hu-n. Amíg szedem össze az infokat a kérdéshez, mindig rájövök a megoldásra.
Akkor az felejtős
És amúgy ezt a php kódot a template.php-ban kellene elhelyezni?
Egy pár napja elég bő lére
Egy pár napja elég bő lére engedett témában lett kivesézve.
http://drupal.hu/forum/men%C3%BCk-h%C3%A1tt%C3%A9rk%C3%A9p%C3%A9nek-cser...
----
Rájöttem, miért kérdezek olyan ritkán a drupal.hu-n. Amíg szedem össze az infokat a kérdéshez, mindig rájövök a megoldásra.
Kis módosítással
majdnem jó volt a kód. Egy unset($_REQUEST['destination']) be kellett szúrnom mert az istennek se ugrott az oldalra csak várakozott.
Köszönöm a segítséget, egyenlőre kiindulásnak ez jó lesz.
Bármondjuk azt nem értem
hogy ha a goto után iratom ki a message-et akkor nem írja ki, viszont így ahogy írtam így meg kiirja. Pedig logikus lenne, hogy kiirja fordítva is nem? És úgy is lenne célszerűbb.
Ha megnézed a drupal_goto()
Ha megnézed a drupal_goto() forrását látni fogod, hogy az utolsó utasítás egy exit(). Azért kell elé a drupal_set_messages(), mert az a $_SESSION-be teszi az üzenetet, amit a sminkmotor minden oldalletöltésnél megvizsgál.
Esetleg ez?
Üdv!
Dudás József
A page_preprocess a
A preprocess_page a sminkréteg függvénye, ez pedig funkcionális kérdés, ezért oda semmiképpen nem raknám.
Viszont erre való a hook_nodeapi prepare eseménye, amiben miután megvizsgálod a feltételeket át tudod irányítani a regisztrációs oldalra a felhasználót.
Hosszu Kálmán
http://twitter.com/kalmanhosszu
http://www.kalman-hosszu.com/
http://premiumcmsthemes.com/