Onepager mit Parallel

Hier können Tipps und Tricks rund um die Verwendung von BlackCat CMS gepostet werden.
Antworten
DG70
Beiträge: 174
Registriert: Fr 5. Dez 2014, 12:59

Onepager mit Parallel

Beitrag von DG70 »

Hallo zusammen,

ich habe am WE an meiner lokal installierten BC1.3 mich an einem sogenannten OnePager versucht ...
Frisches BC1.3 dazu Parallel und Bootstrap geladen - das hat funktioniert.
... doch irgendwie sehe ich den Wald vor lauter Bäumen nicht ...
Was muß ich tun um aus dem Hauptmenü auf eine Stelle in der Hauptseite zu springen ohne eine neue Seite zu erstellen?

Danke schon mal im voraus!
Benutzeravatar
creativecat
Beiträge: 1430
Registriert: Mi 6. Feb 2013, 12:41
Kontaktdaten:

Re: Onepager mit Parallel

Beitrag von creativecat »

Also ich habe das in zwei Projekten unterschiedlich gelöst... beide habe ihre Vor- und Nachteile (wie beinahe alles, außer Schokolade)...
Möglichkeit 1 (meine in den meisten Fällen präferierte):
- Alle Inhalte auf einer Seite in verschiedenen Sektionen erstellen (also ganz normal, alle Inhalte einpflegen)
- Den Sektionen Namen geben, die später auch die Menü-Titel sind
- Dann erstellst du in der index.php des Templates eine einfache Abfrage aller Sektionsnamen auf der Seite - die kann aber mitunter auch bissl komplexer werden, wenn man mehr reinpackt ;-) ) - oder du verwendest ganz einfach die passende Klasse, wenn du nix weiter brauchst, außer die Namen und jeweils die section_id:

Code: Alles auswählen

$getSections	= CAT_Sections::getActiveSections($page_id);
print_r($getSections);
Aus diesem Array bastelst du dir mit einer foreach-Schleife in Dwoo die Navigation und lässt über JavaScript jeweils zum Ankerpunkt scrollen, denn vor jeder Sektion wird ein Link mit einer individuellen ID generiert:

Code: Alles auswählen

<a class="section_anchor" id="[SEC_ANCHOR.$section_id]" (...)></a>
Hast du also den Anker "bc_" gesetzt und hast eine Sektion mit der ID 28 bekommst du also folgenden "versteckten" Link:

Code: Alles auswählen

<a class="section_anchor" id="bc_28" (...)></a>
Möchtest du einige Sektionen nicht im Menü haben, dann kann du beim default "no name" einfach den Navigationspunkt nicht erstellen lassen und nur die Sektionen benennen, die du in der Navigation haben willst....

Möglichkeit 2 (nur kurz erklärt):
- Unterseiten erstellen
- in einem WYSIWYG alle Sektionen der Unterseiten über das Droplet einbinden
- in der index.php des Templates page-level checken, und wenn das auf level 0 ist, eine Navigation der Unterseiten einbinden
- Das Folgen der Navigations-Links über JavaScript abfangen und stattdessen ein scrollTo() - sehr ähnlich wie bei Möglichkeit 1
Benutzeravatar
creativecat
Beiträge: 1430
Registriert: Mi 6. Feb 2013, 12:41
Kontaktdaten:

Re: Onepager mit Parallel

Beitrag von creativecat »

Bist du mit meiner Beschreibung weiter gekommen?
DG70
Beiträge: 174
Registriert: Fr 5. Dez 2014, 12:59

Re: Onepager mit Parallel

Beitrag von DG70 »

Sorry bin soweit noch nicht gekommen.
Erwäge Möglichkeit 1 zu nutzen, baue also erstmal die Seite mit den verschiedenen Modulen.
Dort habe noch Probleme mit dem AddOn Slider Pro und auch mit Multicolumn (mit den neuen Varianten, pricing usw).
Soweit der Stand ...
DG70
Beiträge: 174
Registriert: Fr 5. Dez 2014, 12:59

Re: Onepager mit Parallel

Beitrag von DG70 »

Mhmm ich benötige doch noch mal etwas Hilfe ...
der zweite Teil Deiner Beschreibung ist mir leider nicht klar:
creativecat hat geschrieben:
Mo 5. Feb 2018, 15:57
Aus diesem Array bastelst du dir mit einer foreach-Schleife in Dwoo die Navigation und lässt über JavaScript jeweils zum Ankerpunkt scrollen, denn vor jeder Sektion wird ein Link mit einer individuellen ID generiert:

Code: Alles auswählen

<a class="section_anchor" id="[SEC_ANCHOR.$section_id]" (...)></a>
Schonmal DANKE im voraus.
Benutzeravatar
creativecat
Beiträge: 1430
Registriert: Mi 6. Feb 2013, 12:41
Kontaktdaten:

Re: Onepager mit Parallel

Beitrag von creativecat »

Ja, der war auch nicht ganz ausführlich.
Die Sektionen musst du natürlich noch an das Template übergeben werden. Wenn bei dir in der index.php des Templates am Ende folgendes steht:

Code: Alles auswählen

$parser->output('index.tpl',$dwoodata);
Dann muss du die Sektionen noch übergeben und vorher folgendes schreiben (anstelle von $getSections = ....):

Code: Alles auswählen

$dwoodata['SEC_ANCHOR']	= SEC_ANCHOR; // das ist der Name der Anker
$dwoodata['sections']	= CAT_Sections::getActiveSections($page_id);
Die foreach-Schleife schaut dann irgendwie so aus:

Code: Alles auswählen

{foreach $sections $sec}
<a href="#{$SEC_ANCHOR}{$sec.section_id}">{$sec.name}</a>
{/foreach}
Antworten