Sziasztok!
A következőben kérném a segítségeteket, PHP kódot szeretnék beilleszteni node-ba.
Amit már megtettem, a PHP Filtert engedélyeztem a modulok között, a PHP Code szövegformátum meg is jelenik rendben. A probléma az, hogy minden php taget HTML kommentnek ír át.
Pl: echo date('m/d/Y');
Ez lesz belőle:
<!--?php echo date('m/d/Y'); ?-->
Próbáltam úgy is, hogy a PHP Code szövegtípusban a Body részbe írtam a kódot és úgy is, hogy átváltottam a HTML nézetre és oda. Mind a 2 esetben ugyanaz az eredmény.
Kérlek írjátok meg, mi szükséges még ahhoz, hogy tudjak PHP kódot futtatni a nodeon belül.
Másik megoldás lehetne, hogy a szerveren van a kód .php fileban, amire van 1 menü hivatkozás. Meg lehet azt valahogy adni, hogy a menühivatkozás az external file linket a drupal frame-jébe töltse be és ne navigáljon el az oldalról?
Előre is köszönöm a segítségeteket.
szerk.: code tegek közé fogtam a példát - aboros
Rosszul adtam meg a kódokat, elnézést
Eredeti kód:
Átalakított kód ami lesz belőle és ahogyan nem működik:
mindkettő nagyon rossz megoldás
se node bodyba nem írunk php kódot, se nem pakolunk idegen php fileokat a filerendszerbe rájuk linkelés céljából. helyezd a php kódot szépen rendes saját drupal modulba.
-
clear: both;
Semmi, felejtsd el, a lehető legrosszabb, amit csinálsz
Php kódot semmilyen körülmények között nem írunk textfieldbe! Teljesen 'unprofessional', veszélyes, karbantarthatatlan!
Amit te keresel, az a Token filter module. Tökéletesen megcsinálja, ami neked kell, csak valami ilyesmit kell beírni: [site:current-date:short]
Ha meg valami speciálisat kell php kódban megírni, akkor ugyanazt már meg tudod csinálni a hook_token_info() és a hook_tokens(), vagy a hook_entity_property_info() / hook_entity_property_info_alter() alkalmazásával.
Netán még ott van a hook_filter_info(), ha valami tényleg speciálisat akarsz csinálni.
----
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.
Mint azt fentebb írták, nem
Mint azt fentebb írták, nem praktikus a PHP filter használata, de a probléma valószínűleg abban áll, hogy a beviteli formádban (filtered HTML) (admin/config/content/formats itt válasz ki egyet) be van kapcsolva a "Display any HTML as plain text", vagy valami hasonló szűrő.
pp
Palócz István
https://palocz.hu | https://tanarurkerem.hu