template.php -> hook_preprocess_node - Änderungen kommen in node.tpl.php nicht an
am 06.04.2011 - 09:52 Uhr in
Hallo zusammen,
ich möchte sämtlichen Links eines bestimmten Inhaltstyps noch ein onClick mitgeben.
<?php
$vars['field_link']['0']['attributes']['onClick'] = 'blabla';
?>Das habe ich in meiner preprocess-Funktion stehen.
In meiner node.tpl.php kommt das aber nicht an.
Weiß jemand, was ich falsch mache?
Muss ich noch irgendwas aufrufen?
Viele Grüße,
Nadine
- Anmelden oder Registrieren um Kommentare zu schreiben

Parameter
am 06.04.2011 - 10:38 Uhr
Hallo.
Da Du leider nicht zeigst, wie Deine preprocess-Funktion aussieht, kann ich nur vermuten, dass Du nicht
function ..._preprocess_node(&$vars), sondernfunction ..._preprocess_node($vars)geschrieben hast.Also ohne "&".
Hmm nee danke, das ist es
am 06.04.2011 - 10:53 Uhr
Hmm nee danke, das ist es nicht.
Ich hab gerade gesehen, dass der Link ewig oft darin vorkommt. Hab jetzt versucht bei allen noch so ein onClick dazu zu machen, aber das funktioniert auch nicht.
Es kommt jetzt zwar in der der node.tpl.php an, aber ich hab hier auch schon so #children und view Keys, aus denen es dann wohl trotzdem noch den normalen Link zieht und das onClick nicht dazubaut.
Muss ich jetzt überall, wo dieser komplette Link schon drin ist, einen neuen Link aufbauen oder gibt es da irgendeine einfachere Möglichkeit?
Jetzt versteh ichs grad gar
am 06.04.2011 - 12:14 Uhr
Jetzt versteh ichs grad gar nicht mehr...
Ich hab jetzt auch alle children und so weiter geändert.
Wenn ich jetzt in node.tpl.php $node ausgebe, steht in keinem Array-Value dieser Link drin und trotzdem wird er noch genauso ausgegeben...
Vielleicht sollte ich mal von vorne anfangen...
Ich hab einen Inhaltstyp und einem Feld in diesem Inhaltstyp möchte ich abhängig von der URL (http.//www.1.de, http.//www.2.de, http.//www.3.de) noch ein onClick mitgeben.
Gibt es da eine sinnvollere Möglichkeit als die die bei mir nicht funktioniert? :-)
Ich dachte halt, ich geh in die preprocess Funktion, prüfe mit strpos(), welche URL vorkommt und gebe den attributes noch ein onClick mit, aber das geht einfach nicht...
Ich versteh's auch nicht. Ein
am 06.04.2011 - 12:30 Uhr
Ich versteh's auch nicht. Ein Link ist doch schon ein "Klick" - was soll er denn sonst noch tun? Vielleich ist der "Link" selbst schon der falsche Ansatz.
Ich wollte noch "javascript:
am 06.04.2011 - 12:37 Uhr
Ich wollte noch "javascript: pageTracker._trackPageview.." einbauen. jetzt glaube ich funktioniert es.
ich mache jetzt
<?php$vars['content'] = str_replace...
?>
suche den Link und ersetze ihn...
So eine komische Sache.