Du bist nicht angemeldet. Der Zugriff auf einige Boards wurde daher deaktiviert.

#1 25. April 2021 08:31

philfr
probiert CMS/ms aus
Registriert: 08. Mai 2019
Beiträge: 61

Parent-Titel anzeigen

Irgendwie stehe ich auf dem Schlauch.
Die Seitenhierarchie besteht aus 3 Ebenen. Wenn man in der obersten Ebene ist, soll der Titel der aktuellen Seite angezeigt werden. Wenn man in einer tieferen Ebene ist, soll der Titel des zugehörigen Parent in der ersten Ebene angezeigt werden.

Das geht doch bestimmt, ohne in die DB zu gehen, aber wie?

Offline

#2 25. April 2021 12:29

NaN
Moderator
Ort: Halle (Saale)
Registriert: 09. November 2010
Beiträge: 4.435

Re: Parent-Titel anzeigen

Das geht doch bestimmt, ohne in die DB zu gehen

Wie soll das gehen?
Wenn Seite 1.1.1. geladen wird, weiß das CMS nichts über Seite 1.
Das einzige was wir da haben, wäre die Seitenhierarchie.
Also bestenfalls parent- oder root-Alias bzw. ID.
Aber nicht den Titel.

D.h. die Infos über die übergeordneten Seiten müssen da erst zusätzlich aus der DB geladen werden.
Das geht einerseits mit Modulen wie ToolBox oder CGSimpleSmarty.
Es ginge aber auch einfach nur mit einem UDT:

$current_content = cms_utils::get_current_content();
$hierarchy_ids   = explode( '.' , $current_content->IdHierarchy() );
$root_id         = $hierarchy_ids[0];

if( $current_content->Id() == $root_id )
	return;

$contentops   = cmsms()->GetContentOperations();
$root_content = $contentops->LoadContentFromId( $root_id );
return $root_content->Name();

Module: GBFilePicker, AdvancedContent
Sicherheit: Beispiel .htaccess-Datei
CMSms 1.12 unter PHP 7:
cmsms-1.12.3.zip (inoffiziell - komplett inkl. Installer)
CMSms 1.12 unter PHP 8:
cmsms-1.12.4.zip (inoffiziell - komplett inkl. Installer)

Offline

#3 25. April 2021 13:50

philfr
probiert CMS/ms aus
Registriert: 08. Mai 2019
Beiträge: 61

Re: Parent-Titel anzeigen

NaN, du bist der größte :-)
Das funktioniert wunderbar :-)
ich hab nur noch die erste Return-Anweisung rausgeschmissen, damit auch in der obersten Ebene was angezeigt wird, nun ist es perfekt, vilen Dank :-)

Offline

#4 25. April 2021 14:20

NaN
Moderator
Ort: Halle (Saale)
Registriert: 09. November 2010
Beiträge: 4.435

Re: Parent-Titel anzeigen

Wenn Du auch den Titel der aktuellen Seite brauchst, dann mach's vielleicht lieber so:

$content_obj   = cms_utils::get_current_content();
$hierarchy_ids = explode( '.' , $content_obj->IdHierarchy() );
$root_id       = $hierarchy_ids[0];
if( $content_obj->Id() != $root_id )
{
	$contentops  = cmsms()->GetContentOperations();
	$content_obj = $contentops->LoadContentFromId( $root_id );
}
return $content_obj->Name();

Weil für die aktuelle Seite brauchen wir ja nichts mehr zu laden.
Die Daten haben wir ja schon mit cms_utils::get_current_content(); - und im Prinzip sogar eigentlich auch schon im Template.


Module: GBFilePicker, AdvancedContent
Sicherheit: Beispiel .htaccess-Datei
CMSms 1.12 unter PHP 7:
cmsms-1.12.3.zip (inoffiziell - komplett inkl. Installer)
CMSms 1.12 unter PHP 8:
cmsms-1.12.4.zip (inoffiziell - komplett inkl. Installer)

Offline