Drupal aus der Box ist mit einer Seite (das ist die Standard - Homepage), die mit dem zugeordneten Knotenpfad.
Wie vermeide ich, dass Benutzer darauf zugreifen, und leite sie auf die eigentliche Homepage der Website weiter?
Drupal aus der Box ist mit einer Seite (das ist die Standard - Homepage), die mit dem zugeordneten Knotenpfad.
Wie vermeide ich, dass Benutzer darauf zugreifen, und leite sie auf die eigentliche Homepage der Website weiter?
Antworten:
Es gibt keine einfache Möglichkeit, diese Seite auszublenden. Wenn Sie es nicht verwenden, können Sie hook_menu_alter () implementieren und es entweder vollständig entfernen oder den Zugriffsrückruf auf setzen FALSE
.
Erstellen Sie einen Pfadalias, der von / node zu der Seite umleitet, die Sie als Startseite verwenden möchten.
Ich bevorzuge es, den Seitenrückruf von / node so zu ändern, dass ein Fehler 404-Seite angezeigt wird.
Dies zeigt immer Ihre benutzerdefinierte 404-Seite beim Zugriff auf / node.
function yourmodule_menu_alter(&$items) {
$items['node']['page callback'] = 'drupal_not_found';
}
Ähnlich wie bei berdirs answer ist der folgende Code in einem Modul enthalten, das Teil einer benutzerdefinierten Distribution ist, aus der wir bauen:
function HOOK_menu_alter(&$items) {
$items['node']['page callback'] = '_HOOK_empty_home';
}
function _HOOK_empty_home() {
drupal_set_title('');
return '';
}
Auf diese Weise kann ich den 'Node'-Pfad als Frontpage beibehalten und mithilfe des Kontexts Blöcke positionieren, um die erforderliche Frontpage zu erstellen.
Die einfache Lösung für mich war, eine Seite zu erstellen, die ich als Startseite verwenden wollte, und die URL auf / node zu setzen. Setzen Sie dann unter / admin / config / system / site-information die Standard-Startseite auf / node. Unter URL wird "/ node" nur dann angezeigt, wenn es tatsächlich von jemandem eingegeben wird. Dies ist schnell, einfach und übersichtlich, vorausgesetzt, Sie möchten die URL Ihrer Homepage auf "/ node" setzen.
Ich habe mehrere Dinge ausprobiert. Für Drupal 7 und 8 stellte ich fest, dass dies am einfachsten ist, ohne Code zu schreiben:
Laden Sie die Module node_page_disable, globalredirect und redirect herunter und aktivieren Sie sie.
(Hinweis: Das Modul node_page_disable leitet / node auf die Fehlerseite 404 nicht gefunden um.)
Fügen Sie dann eine Umleitung für / node -> Startseite hinzu
Bitte beachten Sie, dass die Weiterleitung sowohl / node als auch / node / zur Startseite weiterleitet.
und ein nützlicher Artikel zum Lesen: https://www.drupalaid.com/blog/3-things-you-should-hide
drush @example.com views-disable frontpage
wird es ausgeschaltet. Bekomme trotzdem einen 404, bis die anderen Dinge erledigt sind.
Erstellen Sie einen Knoten, gehen Sie zu Standortkonfiguration -> Standortinformationen und legen Sie die Homepage auf den Pfad des Knotens fest. Wenn es also Ihr erster Knoten ist, wäre es Knoten / 1.
Bearbeiten: Standardmäßig wird diese Seite beim Erstellen eines Knotens ausgeblendet, wenn Sie die Option "Zur Startseite hochstufen" aktivieren. Der Schritt mit den Site-Informationen macht diesen Knoten zu Ihrer eigentlichen Startseite.
/node
immer noch erreichbar, wird es standardmäßig nicht angezeigt
Sie können das Modul Regeln verwenden , um die URL vor dem Anzeigen einer Seite zu überprüfen und Benutzer auf eine andere Seite umzuleiten, wenn Sie möchten.
Beliebte Frage von vor einigen Jahren, mit einigen interessanten Antworten bereits. Aber raten Sie mal: "Heutzutage gibt es ein Modul dafür ... eigentlich sogar zwei!" (in keiner der vorherigen Antworten erwähnt).
Lesen Sie weiter für weitere Details ... (Zitate stammen von ihren Projektseiten) ...
Node Page Admin (entweder D6 oder D7):
Dieses Modul fügt eine Anzeige mit Verwaltungseinstellungen für den Zugriff auf Knoten- Seiten hinzu. Sobald es aktiviert ist, gibt es drei mögliche Konfigurationen:
- Core - Der Drupal-Core behandelt den Zugriff auf Knotenseiten wie gewohnt: Alle Benutzer mit der Berechtigung "Zugriff auf Inhalte"
- Deaktiviert - Niemand kann auf / node zugreifen. Es wird "Seite nicht gefunden" (404) zurückgegeben.
- Mit Erlaubnis - Der Zugriff wird mit einer neuen Erlaubnis behandelt: 'Zugangsknotenseite'
Node Page Disable (entweder D6 oder D7, jedoch nur RC2-Versionen):
Ermöglicht den einfachen Zugriff auf die Benutzeroberfläche und das Deaktivieren des Pfads / Knotens, wenn er nicht verwendet wird. Dies wurde durch einen Sicherheitsaspekt im Production Check Module angeregt .
Am besten verstecken Sie die Knoten vor der Funktion template_preprocess_page
function template_preprocess_page(&$variables) {
if ($variables['is_front'] == 1) {
if (isset($variables['page']['content']['system_main'])) {
unset($variables['page']['content']['system_main']);
}
}
}