[gelöst] "user/3/node/231" statt "node/231"
Eingetragen von casbar (37)
am 21.02.2011 - 19:03 Uhr in
am 21.02.2011 - 19:03 Uhr in
Hallo,
Mein Problem
Ein User erstellt ein ContentType "Anleitung".
Wenn man ein Profil betrachtet, wird rechts eine Region gezeigt die ein paar Blöcke beinhaltet (wird nur auf "user/*"-Seiten gezeigt).
Wenn man eine "Anleitung" als großansicht betrachtet will ich das man diese Sidebar-Region auch sieht.
Mein Lösungsvorschlag
Man findet eine Lösung wie man node-Pfade als "Unterpfade" eines Users einstellt. Das bedeutet wenn eine Anleitung momentan noch den Pfad "/node/621" hat, wird diese in "/user/5/node/621" umgewandelt (user/5 ist der poster).
Weiss nicht ob sowas klappt, vielleicht gibts ja eine andere bessere Lösung!!
Vielen Dank ,
casbar
- Anmelden oder Registrieren um Kommentare zu schreiben
Pfade und Blöcke
am 22.02.2011 - 08:20 Uhr
Hallo.
Es gibt 2 andere Lösungen für das Problem:
1.) Installiere Dir mal das Modul [do:pathauto Pathauto] und stelle dort ein, dass die Inhalte vom Typ "Anleitung" den Pfad "anleitung/[title-raw]" bekommen. Das sieht schonmal "besser" aus als "node/123". Jetzt kannst Du in den Sichtbarkeitseinstellungen des Blocks festlegen, dass er bei
user/*
undanleitung/*
angezeigt werden soll.2.) PHP. Aktiviere das Core-Modul "PHP" und wähle bei den Sichtbarkeitseinstellungen des Block "PHP-Code" als Modus aus. Dann gibts Du diesen Code ein:
<?php
if (arg(0) == 'user' && is_numeric(arg(1))) {
return TRUE;
}
else if (arg(0) == 'node' && is_numeric(arg(1))) {
$nd = node_load(arg(1));
// Ist der Typ des geladenen Beitrags in der Liste enthalten?
return in_array($nd->type, array('anleitung'));
}
return FALSE;
?>
Und schon wird der Block auf allen Benutzerseiten und bei allen Anleitungen angezeigt. Ich würde die 1. Variante bevorzugen.
Stefan
Tipp: Beachte die Verhaltensregeln des DrupalCenter.
Super geile Antwort ! Super
am 22.02.2011 - 12:59 Uhr
Super geile Antwort ! Super Tipps !
Vielen Dank,
casbar