Author Topic: Wie erkennt man im Template die Startseite?  (Read 2580 times)

Offline grindmobil

  • Posts: 50
Wie erkennt man im Template die Startseite?
« on: March 16, 2019, 11:26:19 AM »
Die meisten Templates haben im Code etwas wie
if (!$page_id) {...ist die Startseite...}

Bei WBCE ist das nach wie vor so, in WebsiteBaker > 2.10 funktioniert das nicht mehr.

Gibt es da eigentlich einen Workaround?

Offline DarkViper

  • Forum administrator
  • *****
  • Posts: 3030
  • Gender: Female
Re: Wie erkennt man im Template die Startseite?
« Reply #1 on: March 16, 2019, 11:42:14 AM »
Nö Chio, da gibt's kein Workaround. Solltest Du selbst am besten wissen, wie man so was macht.
(einfachste Lösung: beim Erstellen des Seitenbaumes Hirn einschalten  :wink:  dann klappt's auch so)
Und nein, wir liefern auch keine Anpassungen an Fremdsysteme wie Joomla, WBCE, Typo3 usw...  höchstens evt. Migrationstools. :wink:
Der blaue Planet - er ist nicht unser Eigentum - wir haben ihn nur von unseren Nachkommen geliehen

"You have to take the men as they are… but you can not leave them like that !" :-P
Das tägliche Stoßgebet: Oh Herr, wirf Hirn vom Himmel !

Offline dbs

  • Betatester
  • **
  • Posts: 8116
  • Gender: Male
  • tioz4ever
    • WebsiteBaker - jQuery-Plugins - Module - Droplets - Tests
Re: Wie erkennt man im Template die Startseite?
« Reply #2 on: March 16, 2019, 11:45:36 AM »
Wird wohl in der frontend.functions. php z53 so geregelt
Code: [Select]
$page_id = (!isset($page_id) ? $wb->default_page_id : $page_id);

Offline grindmobil

  • Posts: 50
Re: Wie erkennt man im Template die Startseite?
« Reply #3 on: March 16, 2019, 12:55:06 PM »
Nö Chio, da gibt's kein Workaround. Solltest Du selbst am besten wissen, wie man so was macht.
(einfachste Lösung: beim Erstellen des Seitenbaumes Hirn einschalten  :wink:  dann klappt's auch so)
Und nein, wir liefern auch keine Anpassungen an Fremdsysteme wie Joomla, WBCE, Typo3 usw...  höchstens evt. Migrationstools. :wink:

Na, dann hilf meinem Hirn mal nach: Wie muss ich den Seitenbaum erstellen, dass im Template (von sich aus) auf eine andere Darstellung umgeschaltet werden kann?
Startseite: https://WebsiteBaker.at/
Beliebige Unterseite: https://WebsiteBaker.at/wb/aktuell.php
Auf der Startseite ist das Headerbild deutlich höher.

Ähnliches gibt es bei sehr vielen Templates, und das hat ja auch bei WebsiteBaker sehr lange so funktioniert, da muss man nicht Joomla supporten.

Wenn man jetzt ein Upgrade macht, muss man irgendwas frickeln; ich frage die $page_id der Startseite hart im Template ab, aber das ist natürlich keine allgemein sinnvolle Lösung. Das werden viele auch nicht so einfach zusammenbringen.

Da ich ja immer noch drauf schaue, beide Welten zu bedienen (was Templates und Module betrifft), frage ich ja.

Ich hab heute bei WebsiteBaker.at ein Upgrade auf die aktuelle Version gemacht (das ging bisher nicht, weil eine Alpha-Version lief).
Jetzt werde ich mal schauen, wie die Module und Templates so tun. Die responsiveFG hab ich schon deaktivieren müssen, erzeugt einen Fatal Error.

Offline Luisehahne

  • WebsiteBaker Org e.V.
  • **
  • Posts: 4381
  • Gender: Male
    • Webdesign und Entwicklung WebsiteBaker
Re: Wie erkennt man im Template die Startseite?
« Reply #4 on: March 16, 2019, 05:52:56 PM »
Hi Chio,
mache dir mal einen Dump von dem $wb object. $wb ist eine instance von der class.frontend die alles beinhaltet was du wahrscheinlich braucht.

Beispiel
Code: [Select]
$wb->default_page_id
$wb->page_id
$wb->root_parent
wb->page => array(aktuelle page data row)

Werde aber wieder wie bereits in der WB 2.8.4 den page_icon,menu_icon_0 und menu_icon_1 weider aufleben lassen. Die Struktur ist bereits in der pages table integriert, sowie in Optionen die dazuhörige Zuweosung des Bilder Ordner. Interessant in dem Zusammenhang, dass wir schon das zur Zeit unbenutzte Droplet iPageIcon mitliefern.

Werde mir mal eins deiner Templates vornehmen. Denke das ich helfen kann. 

Dietmar
Immer nur von der Zukunft reden, die Gegenwart vergessen und auf die Vergangenheit schimpfen
Neues Unwort: Schnappatmung

Offline grindmobil

  • Posts: 50
Re: Wie erkennt man im Template die Startseite?
« Reply #5 on: March 16, 2019, 06:41:15 PM »
Hallo Dietmar,
Ich kann da jetzt ohnehin nicht schnell mal haufenweise Templates ändern - und der große Brocken ist ja schon irgendwo modifiziert da draußen.
Auch Templates von Agenturen gemacht sind betroffen, das mit der !$page_id = Startseite ist ja seit 12 Jahren Usus.

Es wäre eben gut, wenn es einen Copy/Paste Workaround gäbe, den man dann veröffentlicht.

Offline Luisehahne

  • WebsiteBaker Org e.V.
  • **
  • Posts: 4381
  • Gender: Male
    • Webdesign und Entwicklung WebsiteBaker
Re: Wie erkennt man im Template die Startseite?
« Reply #6 on: March 16, 2019, 06:59:11 PM »
Gib mir bitte mal einen download link zu einem Template, wo das auftritt. Vielleicht finde ich eine globale Lösung.

Ich weiss ich mache es mir einfach.

Dietmar
Immer nur von der Zukunft reden, die Gegenwart vergessen und auf die Vergangenheit schimpfen
Neues Unwort: Schnappatmung

Offline grindmobil

  • Posts: 50
Re: Wie erkennt man im Template die Startseite?
« Reply #7 on: March 16, 2019, 07:17:19 PM »
Templates wo das auftritt? zB:
https://wbce.at/tpls/downloads/fragstan.zip

Es sind wohl ALLE Templates betroffen, die auf der Startseite einen Slider haben.


Bezüglich PageIcon: Da gibt es das Modul GlobalUpload https://addons.wbce.org/pages/addons.php?do=item&item=72
Läuft auch mit WB.

Ist ein AdminTool, das (als Zusatzfunktion) Bilder hochladen lässt und nach Namensschema /media/_pppics/thumbs/pic38.jpg (38=page_id) ablegt.
Das kann man dann - wo auch immer - nutzen, zb als style="background: url(/media/_pppics/thumbs/pic[page_id].jpg)..." in ShowMenu 2
Oder auch als Headerbilder; das Tool speichert gleich mehrere Größen; Webspace ist ja heute kein Thema mehr.
Bug: Schwächelt mit Transparenten PNGs oder wenn Bilder generell zu klein sind.

Dieses Template ist ein Demo für die Verwendung: https://wbce.at/tpls/template-gupslyd.html

Offline Luisehahne

  • WebsiteBaker Org e.V.
  • **
  • Posts: 4381
  • Gender: Male
    • Webdesign und Entwicklung WebsiteBaker
Re: Wie erkennt man im Template die Startseite?
« Reply #8 on: March 16, 2019, 08:09:50 PM »
Ich schaue mir das an. Habe mir bereits ein paar templates von deine rSeite installiert, hatte aber nichts mit page_id dabei.

Als erstes hatte ich das responsive-blue. Ups liess sich nicht installieren. Aber man hat ja so seine Tricks. Ein weiteres Ops. weisse Seite. Problem ist der Bindestrich im Verzeichnisnamen. Da WB immer Richtung OOP wandert sind Hyphen in Verszeichnisnmane laut PSR Coding Standard nicht erlaubt.

Auch selfhtml -> HTML/Regeln/Konventionen für Dateinamen schreibt
Quote
Als Sonderzeichen ist in jedem Fall der Unterstrich "_" erlaubt. Andere Satzzeichen sollten Sie vermeiden. *Fragezeichen "?" und Sternzeichen "*" sollten Sie auf jeden Fall vermeiden, da diese Zeichen bei fast allen Systemen eine besondere Bedeutung haben. Auch auf Leerzeichen sollten Sie unbedingt verzichten. (Diese werden z.B. von der Mediawiki-Software in Unterstriche umgewandelt.)

Der PSR Autoloader macht ebenfalls Probleme
Quote
You cannot use hypen(-) in namespace. As Class naming convention don't accept hypen, you have to use underscore

Und jetzt schau ich mir das fragstan an. Bis später

Dietmar
Immer nur von der Zukunft reden, die Gegenwart vergessen und auf die Vergangenheit schimpfen
Neues Unwort: Schnappatmung

Offline grindmobil

  • Posts: 50
Re: Wie erkennt man im Template die Startseite?
« Reply #9 on: March 16, 2019, 08:29:56 PM »
Hmm, ja. Ist ja eigentlich nicht so wichtig.

Nachdem es bisher keinen Volksaufstand gegeben hat, ist das Interesse wohl generell enden wollend.

Ich entferne die Templates einfach bzw. Schreibe ich einfach dazu, dass sie mit WebsiteBaker nicht mehr richtig funktionieren. Ich könnte auch nach Strings filtern: page_id, - usw.

Wir müssen uns da nicht quälen damit.

Offline Luisehahne

  • WebsiteBaker Org e.V.
  • **
  • Posts: 4381
  • Gender: Male
    • Webdesign und Entwicklung WebsiteBaker
Re: Wie erkennt man im Template die Startseite?
« Reply #10 on: March 16, 2019, 08:30:27 PM »
Liess sich ohne Fatal Error installieren. $page_id ist auch verfügbar. Das Einzige wo du bitte drauf achten solltest ist die fehlende Variable $template_function mit einzubnden, diese unterscheidet ob es sich um ein theme oder template handelt. Das ist seit 2010 vorgegeben. Die fehlende Variable könnte Probleme machen wenn du auch Backend Themes anbietest.
Damit WB Anwender deine Templates trotzdem ohne Installationsabbruc h installieren können, toleriert der Installer die fehlende Variable und fügt in der errorlog eine NOTICE als Hinweis zu.
Quote
[E_USER_NOTICE] \admin\templates\install.php:[168] from \admin\templates\install.php:[168] trigger_error "Missing Template-Parameter [$template_function] in fragstan/info.php!"
. Wie gesagt existiert bereits in allen WB 2.8.3 Versionen.

Glaube jetzt kann ich erstmal die Beine hochlegen.
 
Dietmar

P.S Harald benutzt dieses Templates schon längere Zeit ohne Probleme
Immer nur von der Zukunft reden, die Gegenwart vergessen und auf die Vergangenheit schimpfen
Neues Unwort: Schnappatmung

Offline Luisehahne

  • WebsiteBaker Org e.V.
  • **
  • Posts: 4381
  • Gender: Male
    • Webdesign und Entwicklung WebsiteBaker
Re: Wie erkennt man im Template die Startseite?
« Reply #11 on: March 16, 2019, 08:32:01 PM »
Hmm, ja. Ist ja eigentlich nicht so wichtig.

Nachdem es bisher keinen Volksaufstand gegeben hat, ist das Interesse wohl generell enden wollend.

Ich entferne die Templates einfach bzw. Schreibe ich einfach dazu, dass sie mit WebsiteBaker nicht mehr richtig funktionieren. Ich könnte auch nach Strings filtern: page_id, - usw.

Wir müssen uns da nicht quälen damit.

sehe ich nicht so, ist ein schönes Template. Und wenn kann Dietmar :-P helfen

Dietmar
Immer nur von der Zukunft reden, die Gegenwart vergessen und auf die Vergangenheit schimpfen
Neues Unwort: Schnappatmung

Offline DarkViper

  • Forum administrator
  • *****
  • Posts: 3030
  • Gender: Female
Re: Wie erkennt man im Template die Startseite?
« Reply #12 on: March 16, 2019, 10:09:43 PM »
Nachdem ich jetzt weiß worum es geht, hab ich mich vorhin mal durch die (auch alten) Codes durchgewühlt.. und langsam kam die Erinnerung wieder hoch (grmblfx Alzheimer).

Wir hatten vor längerer Zeit im Core mal Probleme, wenn die PageId undefiniert war.
Deshalb wurde in der frontend.functions gleich zu Beginn mit 

$page_id = (!isset($page_id) ? $wb->default_page_id $page_id);

die PageId auf einen stabilen Wert gesetzt. Ab diesem Zeitpunkt klappte dann natürlich die isset() Abfrage im Template logischerweise nicht mehr. (typisches Problem wenn (auch evt. unbewusst) Code auf Bugusing basiert.) Niemand von uns kann schliesslich wissen, welche 'Hintertürchen' irgendwo in irgenwelchen Templates benutzt werden.

Der ganz offizielle Weg um herauszufinden ob die aktuelle Seite Startseite ist wäre somit:

if ($page_id === $wb->default_page_id) {
// Startseite
} else {
//beliebige andere Seite
}

Diese Abfrage sollte in allen WB-Versionen der 2er Serie funktionieren

Manuela

PS: suchen nach '(!$page_id)'  ersetzen durch '($page_id === $wb->default_page_id)'

PPS: "Webspace ist ja heute kein Thema mehr" Das ist völlig richtig. Platz ist Terrabyteweise vorhanden.
Nur: Ich musste meiner Holden die Tage einen neuen Rechner mit schnellerer Netzwerkkarte und mehr RAM spendieren, da sie mir beim Laden von Bildern regelmäßig einschlief. *gg
Das Problem haben in Deutschland (Neuland) leider noch viel zu viele Leute. Langsame Internetanbindungen und dann auf den Mobilgeräten Volumentarife, wo nach 2-5 GB Download für den Rest des Monats auf den sehr 'zahmen' ISDN-Speed (64kBit/s) zurückgeschaltet wird. Da wäre evt. ein klein wenig Entgegenkommen der Designer bei der Volumensparsamkeit sehr willkommen. :wink:
(Ich will ja nicht mehr jammern, weil mein bezahlter 50Mbit/s Anschluß nach 4 Jahren kürzlich von 25Mbit/s auf enorme 32Mbit/s 'gepimpt' wurde)
« Last Edit: March 16, 2019, 10:59:56 PM by DarkViper »
Der blaue Planet - er ist nicht unser Eigentum - wir haben ihn nur von unseren Nachkommen geliehen

"You have to take the men as they are… but you can not leave them like that !" :-P
Das tägliche Stoßgebet: Oh Herr, wirf Hirn vom Himmel !

Offline grindmobil

  • Posts: 50
Re: Wie erkennt man im Template die Startseite?
« Reply #13 on: March 17, 2019, 10:14:52 AM »
Der ganz offizielle Weg um herauszufinden ob die aktuelle Seite Startseite ist wäre somit:

if ($page_id === $wb->default_page_id) {
// Startseite
} else {
//beliebige andere Seite
}

Diese Abfrage sollte in allen WB-Versionen der 2er Serie funktionieren

Manuela

PS: suchen nach '(!$page_id)'  ersetzen durch '($page_id === $wb->default_page_id)'

OK, ich werde das so veröffentlichen.

Es geht ja weniger um die Templates in der Suche (obwohl ich da auch keine Lust habe, die alle auszubessern)

Vielmehr gehts ja um die, die schon irgendwo in Verwendung sind. Da wird wohl gut die Hälfte betroffen sein.
Es erstaunt mich ein wenig, dass da so wenig Anfragen waren; dass das erst nach über einem Jahr mal auffällt.

Die Sache mit dem Bindestrich, das wird wohl erst in Zukunft fällig, dann aber gleich kräftig (fatal).
Bei vielen Templates gibt es eine neuere - responsive - Version, mit Namen "original-responsive". Ist also nicht so selten.

Jepp.
Da gehts um politische Entscheidungen, und ich gehe da einfach nicht mit.

Bei **** gibt es keine Probleme, da achtet man mehr auf die Templates, und ich werde das Thema wohl auch mal mit den Devs besprechen.

Für WebsiteBaker werde ich die Template-Suche einstellen und einen Hinweis anbringen, dass man die Templates nicht mehr verwenden soll. Ich suche da jetzt auch keine raus, sondern generell alle.

Offline evaki

  • Posts: 2810
Re: Wie erkennt man im Template die Startseite?
« Reply #14 on: March 17, 2019, 12:18:45 PM »
Wenn man seit Jahren - hab mal im Archiv geschaut- konsequent $template_function= 'template'; verweigert, sollte man sich nicht wundern. Aber ist schon klar, Schuld haben immer nur die anderen.  8-)
MfG. Evaki

Offline grindmobil

  • Posts: 50
Re: Wie erkennt man im Template die Startseite?
« Reply #15 on: March 17, 2019, 12:33:13 PM »
Wenn man seit Jahren - hab mal im Archiv geschaut- konsequent $template_function= 'template'; verweigert, sollte man sich nicht wundern. Aber ist schon klar, Schuld haben immer nur die anderen.  8-)
MfG. Evaki

Wir verwenden PHP - und da kann man schon seit Version 1 sagen:
if (!$template_function) {$template_function = 'template';}

Dann muss man nur mehr im einzigen - und sowieso mitgelieferten - Backend-Theme was anderes angeben.

Wenns aber nur ums Prinzipienreiten geht, hilft natürlich nichts.

Offline evaki

  • Posts: 2810
Re: Wie erkennt man im Template die Startseite?
« Reply #16 on: March 17, 2019, 01:08:36 PM »
Nun wird's ein wenig skuril. Ein Fork entwickelt sich in eine andere Richtung; nun wundert man sich, daß es Unterschiede gibt, in diesem Fall sogar seit Jahren?
MfG. Evaki

Offline Luisehahne

  • WebsiteBaker Org e.V.
  • **
  • Posts: 4381
  • Gender: Male
    • Webdesign und Entwicklung WebsiteBaker
Re: Wie erkennt man im Template die Startseite?
« Reply #17 on: March 17, 2019, 01:31:50 PM »
Nun wird's ein wenig skuril. Ein Fork entwickelt sich in eine andere Richtung; nun wundert man sich, daß es Unterschiede gibt, in diesem Fall sogar seit Jahren?
MfG. Evaki

Dazu kommt, dass wir im Laufe der Entwicklung php 5 nicht mehr unterstützen werden, was auch zwingend durch die Umstellung der Provider auf php 7 notwendig ist.

Dietmar
Immer nur von der Zukunft reden, die Gegenwart vergessen und auf die Vergangenheit schimpfen
Neues Unwort: Schnappatmung

Offline evaki

  • Posts: 2810
Re: Wie erkennt man im Template die Startseite?
« Reply #18 on: March 17, 2019, 01:34:58 PM »
Der Fork wurde im Sommer 2015 gegründet.
Schon zu diesem Zeitpunkt gab's in der info $template_function= 'template';
Es ist also allein ein Versäumnis auf Deiner/Eurer Seite.

Diese Anmerkung nur, damit die Argumentation rund ausschaut.  :-D

MfG. Evaki

Offline grindmobil

  • Posts: 50
Re: Wie erkennt man im Template die Startseite?
« Reply #19 on: March 17, 2019, 02:31:23 PM »
;-))

Ihr Pfundskerle bringt mich auf eine gute Idee:
Statt herum zu suchen, welche Templates für WB geeignet sind und welche nicht, frag ich einfach nach $template_function
Wenn definiert: Geeignet, wenn nicht: ungeeignet.

So, das mache ich jetzt.

Offline evaki

  • Posts: 2810
Re: Wie erkennt man im Template die Startseite?
« Reply #20 on: March 17, 2019, 02:54:36 PM »
Bleiben da noch welche für WB übrig?  :roll:

Schauen wir mal, was von diesem Deinem Versprechen übrig bleibt:
Quote
Alles was du brauchst
Mit hunderten Templates und Modulen ist WebsiteBaker flexibler als es jedes Blog oder ein Web-Baukasten je sein könnten.

MfG. Evaki

Nachtrag: Anscheinend fällt Dir nichts besseres zum Thema ein, als beim Fork-CMS gegen WB zu polemisieren. Derartiges Verhalten ist schon ziemlich armselig.
« Last Edit: March 17, 2019, 03:10:39 PM by evaki »

Offline grindmobil

  • Posts: 50
Re: Wie erkennt man im Template die Startseite?
« Reply #21 on: March 17, 2019, 03:32:44 PM »
Bleiben da noch welche für WB übrig?  :roll:
Massen:
https://shop.combosa.com/WebsiteBaker-Templates:::3.html
Und für das Geld baut er dir auch das ultrawichtige $template_function= 'template'; ein ;-)

Oder: http://WebsiteBaker-template.de/ Das ist glaub ich von Lonesome Walker; mei, das waren noch Zeiten.


Ich hab die Kennzeichnung jetzt gemacht. So wie es aussieht hat kein einziges Template das $template_function drin.
Vielleicht ein paar ganz alte Leichen.. die sind ja alle noch da, werden aber praktisch nicht mehr gelistet.
Fundstück: https://wbce.at/tpls/template-fluidity.html

EDIT:
Ich hab welche gefunden. Von Florian und Pinzweb.
« Last Edit: March 17, 2019, 03:39:39 PM by grindmobil »

Offline evaki

  • Posts: 2810
Re: Wie erkennt man im Template die Startseite?
« Reply #22 on: March 17, 2019, 03:38:35 PM »
Mit Suchen und Ersetzen + Return könnt man evtl. per Batch...
Mit Winzip z.B. bekommt man auch alle ZIP in Namen entsprechende Unterverzeichnisse.

Nur Sammelaktionen per Batch sind da wohl zumutbar.
Muß man vorher ausprobieren, mit was es geht. Sonst kriegt man u.U. 'nen Hals  :roll:

Quote
...baut er dir...
Dachte das Templateangebot kommt von Dir. Hab' ich anscheinend was übersehen.

MfG. Evaki

Nachtrag: Eine Korrektur macht die Templates ja nicht für den Fork unbrauchbar.
Wenn das kostenlose Werbung für Dein Unternehmen ist, lohnt sich das möglicherweise.
Ist ja nicht so, als wenn hier Erzfeinde gegenüber stehen. Nen Hals hab' ich ab un zu auch...
« Last Edit: March 17, 2019, 03:47:09 PM by evaki »

Offline grindmobil

  • Posts: 50
Re: Wie erkennt man im Template die Startseite?
« Reply #23 on: March 17, 2019, 04:18:36 PM »
Batch geht gar nicht, da komme ich in Teufels Küche.

Und darum gehts ja eh nicht. Es geht um die Templates, die schon draußen sind - modifiziert und angepasst auf irgendwelchen Websites.
Die Leute schicken mir Mails mit relativ kruden Angaben; ich beantworte sowas nicht, ich schau nicht mal rein. Die sollen im Forum fragen.

Die meisten Templates auf wbce.at sind ja nicht von mir, sondern von den Sites der jeweiligen Autoren, soweit eben frei verfügbar.
Diese Seiten gibt es ja auch noch, inkl Downloads. Eine Suche nach WebsiteBaker Templates liefert massig Ergebnisse.

Dass alle diese Templates jetzt das gleiche Problem haben, ist aber nicht meine Sache. Schon deswegen fange ich da jetzt nicht zu frickeln an.

Und nicht zuletzt:
Es sind eh nicht alle Autoren so begeistert davon, dass ihre Templates auch für WebsiteBaker genutzt werden können, die Gründe sind bekannt. Da bin ich bisher mehr oder weniger "drübergefahren", weil ich keine Extrawürste braten wollte.
Nun kann das jeder Autor für sich selbst entscheiden.