Posts: 24
Threads: 6
Joined: Sep 2011
Hi!
Ich lade in einem Template Komponenten (mehr oder weniger dynamisch) anhand ihres Namens, der identisch mit dem Page-Slug ist.
<?php get_component((string) return_page_slug()); ?>
Spart 'ne Menge Template Files...
Jetzt möchte ich diesen Komponenten aber noch einen Suffix mit auf den Weg geben, da ich in meinem Template drei Komponenten laden muss.
Page Slug / URL:
page-slug.php
Komponentennamen:
page_slug_sidebar
page_slug_left
page_slug_right
usw.
Habe gegoogled wie blöd, alles mögliche "ausprobiert" aber ich schnall es einfach nicht. Muss dazu sagen, dass ich keinen Plan von PHP habe - bin aus dem Grafiklager. Kann mir bitte jemand obenstehenden Code entsprechend erweitern oder eine (bessere) alternative anbieten?
Dank & Gruß,
Rob
:-)
Posts: 9
Threads: 3
Joined: Mar 2012
2012-03-05, 11:59:56
(This post was last modified: 2012-03-05, 12:01:48 by rachellefu11.)
Hey,
wenn ich dich richtig verstanden habe bringt GS das alles schon mit, also, wenn du aus dem Komponenten etwas laden möchtest, dann musst du nur im Admin-Backend unter "Vorlagen" und dann "Komponenten bearbeiten".
Hier kannst du vorhandene Komponente nutzen oder neue anlegen, also mit php bzw. HTML Code bestücken, anschließend kannst du den Code benutzen, der über den fertigen Komponenten erscheint, also:
"<?php get_component('sidebar'); ?>"
sidebar muss durch den entsprechenden Namen ausgetauscht werden, das kannst du dann in irgendeinem DIV im Template unterbringen und dann sollte es angezeigt werden.
Ich hoffe ich konnte dir helfen, wenn nicht bitte noch einmal genauer das Problem schildern und ggf. einen Link posten, damit wir und den Quellcode oder ähnliches genauer anschauen können!
MfG
Scripter
PS: Was meinst du mit dynamisch laden? Wenn du die Komponente im Backend änderst werden sie in Frontend automatisch erneuert, dazu musst du nicht noch einmal in den Quellcode (template.php), oder was meinst du?
Posts: 2,094
Threads: 54
Joined: Jan 2011
Robzilla Wrote:Ich lade in einem Template Komponenten (mehr oder weniger dynamisch) anhand ihres Namens, der identisch mit dem Page-Slug ist.
<?php get_component((string) return_page_slug()); ?>
Spart 'ne Menge Template Files...
Jetzt möchte ich diesen Komponenten aber noch einen Suffix mit auf den Weg geben, da ich in meinem Template drei Komponenten laden muss.
Code:
<?php get_component(return_page_slug() . '_sidebar'); ?>
<?php get_component(return_page_slug() . '_left'); ?>
<?php get_component(return_page_slug() . '_right'); ?>
Posts: 24
Threads: 6
Joined: Sep 2011
2012-03-05, 18:30:45
(This post was last modified: 2012-03-05, 18:31:05 by CALIS.)
@scripter:
<?php get_component((string) return_page_slug()); ?> - lädt ein Modul, das denselben Namen hat wie der Page-Slug (eine Template-File genügt)
"<?php get_component('HIER IST EINE STATISCHE MODULPOSITION - EIN MAL ZU VERGEBEN'); ?>" - lädt ein Modul mit einem bestimmten Namen (für jede Komponente / Seite wäre ein eigenes Template anzulegen)
Damit ich aber mehrere Komponenten auf einer Seite ausgeben kann, musste ich einen Suffix anhängen - ich kann ja nicht mehrere Komponenten mit identischem Namen anlegen.
@mvlcek:
Danke!!! Das war's! :-)
Tag gerettet.
Thank you!!! That's it! :-)
You made my day!