Probleme bei der Entwicklung eines Templates

  • Hallo Zusammen, ich hoffe mein Eintrag ist in diesem Unterforum richtig.

    Ich habe bei einem selbst erstellten Template folgende Probleme:

    1. Die Sprachdatei(en) werden nicht richtig geladen. Ich habe es zwar erst mit der "de-DE.tpl_bw_datteln.sys.ini" ausprobiert aber es wird sich wohl auf alle erstrecken.

      In der Sprachdatei habe ich den Code TPL_BW_DATTELN_DESC="Modernes Vereins-Template für Joomla. Das Template ist für die Joomla-Versionen 4,5 und 6 kompatibel" eingefügt. Wenn ich das Template nun neu installiere wird immer nur "TPL_BW_DATTELN_DESC" ausgegeben aber nicht der eigentliche Text.

      In der manifest Datei habe ich es so gelöst <description>TPL_BW_DATTELN_DESC</description> . Aber irgendwie funktioniert es nicht, es wird nur der Variablenname ausgegeben.

    2. Das Vorschaubild wird ebenfalls nicht angezeigt. In der Manifest habe ich es so installiert:

      Code
          <!-- Vorschaubild -->
          <media destination="templates/site/tpl_bw_datteln" folder=".">
              <filename>template_preview.png</filename>
          </media>

      Ich habe bei den Problemen keine Idee mehr woran es liegen kann. Damit ihr mir besser helfen könnt habe ich euch mal die gepackte Datei angehängt. Ich hoffe ihr könnt mir obwohl wir Weihnachten haben recht schnell Helfen.

      Ich warte auf eure Hilfe und wünsche euch ein Frohes und besinnliches Weihnachtsfest.

      Tobias

  • Habe noch kein eigenes Template erstellt aber ich würde mich jedenfalls am Cassiopeia-Template oder Nature orientieren. Siehe z.B.:

    aus: https://github.com/joomla/joomla-…Details.xml#L47

    nicht wie derzeit:

    Außerdem wüde ich keinesfalls das Template tpl_bw_datteln nennen da der Unterstrich zwischen bw und datteln wenn ich mich nicht irre wohl auch zusätzliche Probleme verursachen kann. Besser ist wohl z.B. tpl_bwdatteln Die Dateinamen dann natürlich auch entsprechend abändern.

    Anmerkung Moderation: Soweit ich weiß, gibt es dafür keine Regel


    Bezüglich media-Dateien siehe bei Cassiopeia z.B.:

    Code
    	<media destination="templates/site/cassiopeia" folder="media">
    		<folder>js</folder>
    		<folder>css</folder>
    		<folder>scss</folder>
    		<folder>images</folder>
    	</media>

    auch aus:

    joomla-cms/templates/cassiopeia/templateDetails.xml at 6.0.1 · joomla/joomla-cms
    Home of the Joomla! Content Management System. Contribute to joomla/joomla-cms development by creating an account on GitHub.
    github.com

    nicht wie derzeit:

    Code
    <media destination="templates/site/tpl_bw_datteln" folder=".">
    <filename>template_preview.png</filename>
    </media>
  • 1.) Der Name des Templates darf "tpl" nicht am Anfang haben.

    richtig: <name>bw_datteln</name>

    Andernfalls sucht Joomla bei den Spachdateien nach "tpl_tpl_bw_datteln", da es "tpl" von selbst dran hängt (wenn in der xml der Typ "template" angegeben wurde.

    Anmerkung Moderation: Bin nicht sicher, ob das so ist. Werde recherchieren

    2.) Sprachdateien brauchen unter Files nicht angegeben werden, da sie nicht mit ins Template kopiert werden sollen. Man kann das machen, sie werden auch geladen, aber dann sollten Sie unter <language> nicht angeben werden:

    Das kann man sich im Sprach-Debugger super anschauen, indem man mal die Sprachdateien falsch benennt.

    jetzt sieht man auch, dass die Sprachdateien selbst keinen Sprachcode am Anfang haben müssen, das nutzt nur, wenn man sie im Installationsarchiv alle im selben Ordner liegen hat - um sie unterscheiden, da Du aber pro Sprache einen Ordner hast, brauchst Du das nicht.

    Um es Dir einfacher zu machen, hab ich nur 2 Ordner mit den Sprachdateien in die Root des Templates gelegt und diese unter <languages> vereinfachter aufgeführt und bei <files> rausgenommen, da sie eben nicht ins Template kopiert werden sollen.

    Würdest Du sie unter Files auch drin lassen, hättest Du die Dateien an mehreren Orten und wenn Du mal direkt im Webspaces was ausprobierst, ist die Gefahr groß, dass Du an der falschen Stelle editierst und Dir mehr Arbeit als nötig machst.

    3.) Vorschaubilder:

    <filename>template_thumbnail.png</filename>

    <filename>template_preview.png</filename>

    Du brauchst 2 - sie sollten passenden unterschiedliche Größen haben. In der unten angehängten Datei hab ich die Datei nur kopiert, daher ist diese zu groß.

    4.) Template Description.

    Wie Du oben im Sprach-Debugger siehst, wird die Datei mit sys im Namen nicht geladen, ich verwende sie in meinen eigene Templates auch, weiß aber nicht, ob sie wirklich gebraucht wird. Ich hatte immer gehofft, dass die Description während der Installation von hier geladen wird, was aber nie der Fall war.

    Denn während der Installation eines Templates kann man im Sprachdebugger sehen, dass zu diesem Zeitpunkt in meinem Fall keine Datei vom Template geladen wird:

    Und das ist genau das Problem, wo ich auch hänge, es muss aber lösbar sein.

    Damit die Description später angezeigt wird, muss der Sprachcode also in der Sprachdatei ohne .sys im Namen sein.

    Cassiopeia taugt gar nicht aus Beispiel, weil uns dafür keine Installationsdatei vorliegt

    Anmerkung Moderation: Das stimmt, aber man kann sich sehr gut an der templateDetails.xml orientieren

    Thema "media": Aktuell würde ich Dir raten, erstmal Deine Dateien unter "Templates zu haben und wenn alles läuft, dann beginne, diese nach "media" zu schieben. Joomla sucht an beiden Stellen und zu Beginn der Template-Programmierung hast Du eine weitere Fehlerquelle. Mach das erst, wenn Du eine stabile Version erreicht hast.

    Anmerkung Moderation: man sollte schon die richtige Struktur vom Anfang an halten, später umstrukturieren und umbenennen ist eine Fehlerquelle

    bw datteln 8.zip

  • Ich habe mir die Unterhaltung durchgelesen, kritische Stellen mit Anmerkungen bearbeitet und einige Posts gelöscht. Wir haben den Unmut und die Kritik zu Kenntnis genommen. Hier wird keine "Vetternwirtschaft" betrieben. Wir haben Regeln fürs Forum und hoffen auf die Einhaltung dieser Regeln seitens der Fragenden und der Supporter.

    Wie Sieger66 oben schon erwähnt hat, kann man sich Cassiopeia oder Nature als Beispiel nehmen. Bei Nature handelt es sich um ein Template, was ich während meiner Arbeit an Cassiopeia vor dem Erscheinen von Joomla 4.0 entwickelt habe. Es ist auf jedem Fall installierbar und ich habe keine Probleme bei den Sprachdateien festgesteltt: https://github.com/drmenzelit/nature-j4-template

  • 1.) Der Name des Templates darf "tpl" nicht am Anfang haben.

    richtig: <name>bw_datteln</name>

    Andernfalls sucht Joomla bei den Spachdateien nach "tpl_tpl_bw_datteln", da es "tpl" von selbst dran hängt (wenn in der xml der Typ "template" angegeben wurde.

    Anmerkung Moderation: Bin nicht sicher, ob das so ist. Werde recherchieren

    Weiß ich nicht. Bin nur ein "normaler" User, Anwender ... :)

    Hab jetzt mal als Beispiel eine (aktuelle) Sprachdatei geladen als Muster.
    Benno ist ja unser Übersetzungsmeister im Phoca Forum.

    Assistenz von Benno erbeten. Danke.

    Liebe Grüße
    Christine

  • Hi Christine,

    wenn ich das richtig verstehe geht es hier doch um die Installation eines Templates, nicht um die Installation einer externen Sprachdatei für ein Template. Bei dem Template wo Du meine de-DE Übersetzung zitierst, steht in der Installationsdatei 'templateDetails.xml' wie oben schon mehrfach geschrieben wurde:

    <name>phoca_spectrum</name>


    Liebe Grüße,

    Benno

  • 1. Danke für die Moderation.

    Wie man auch in dem Beispiel in #13 und auch dort sieht:

    github.com/joomla/joomla-cms/blob/6.0.1/templates/cassiopeia_extended/templateDetails.xml#L3

    ist der Unterstrich zwischen bw und datteln im <name>-Tag kein Problem. Insofern habe ich mich in #3 wieder einmal geirrt und es sollte nur das führende tpl_ im <name>-Tag entfernt werden wie in #8 bereits richtig genannt.

    2. Template Description:

    Sowohl bei Cassiopeia wie auch bei Nature und Phoca_Spectrum ist der Sprachschlüssel für die jeweilige Template Description in den beiden Sprach-Dateien pro Sprache vorhanden. Siehe diesbezüglich z.B.:

    github.com/joomla/joomla-cms/blob/6.0.1/templates/cassiopeia/templateDetails.xml#L9

    github.com/joomla/joomla-cms/blob/6.0.1/language/en-GB/tpl_cassiopeia.sys.ini#L31

    github.com/joomla/joomla-cms/blob/6.0.1/language/en-GB/tpl_cassiopeia.ini#L63

  • Ich bedanke mich erstmal für die ganzen Antworten.

    Ich werde sie mir noch mehrfach durchlesen müssen, da ich mich aktuell auf eine Stammzellentransplantation unter Hochdosis Chemo befinde und daher die Konzentration und auch etwas Energie fehlt. Also eine eine fehlende Antwort ist kein Desinteresse sondern Krankheitsbedingt.

    Ich werde mich dann melden wenn ich es alles soweit durcharbeiten konnte.


    Ich wünsche euch allen Alles Gute .