Joomla - Удобные обновления шаблонов - PullRequest
0 голосов
/ 03 ноября 2018

Я недавно перенес веб-сайт из Джекила в Joomla (в настоящее время 3.9). Поэтому я сделал собственный шаблон Joomla. Он уже запущен, но, конечно, регулярно обновляется. Я использую довольно стандартный подход к разработке / выпуску, версии 1.1, 1.2, 1.2.1 и так далее. Эти номера всегда актуальны в templateDetails.xml. Пока ничего особенного. Но это имеет некоторые очень неудобные проблемы:

  • Каждый раз, когда я обновляю шаблон, мне нужно установить другой шаблон / стиль по умолчанию, удалить старую версию, загрузить и установить текущую версию и установить ее стиль в качестве нового по умолчанию. Нет ли лучшего способа обновить шаблон, особенно если он имеет более высокую версию?
  • При каждом обновлении все мои настройки стиля теряются. Я уже выставил значения по умолчанию в templateDetails.xml, поэтому мне не нужно делать это при каждом обновлении. Но я могу предположить, что это может вызвать проблемы, когда я изменяю конфигурацию на серверной части без обновления шаблона. Это может привести к потенциальной потере конфигурации после обновления. Могу ли я сохранить любую конфигурацию стиля при обновлении?
  • В-третьих, я думаю об использовании разных стилей для разных страниц моего сайта. Они также будут потеряны при обновлении, поэтому мне придется регулярно их переопределять. Мне также пришлось бы перенастроить все страницы, используя эти стили, чтобы использовать их снова. Есть ли способ определить несколько стилей в templateDetails.xml, поэтому они хранятся в моем zip-файле ?

Редактировать: как просил Ирфан, вот мой текущий шаблонDetails.xml

<?xml version="1.0" encoding="utf-8"?>
<extension version="3.8" type="template">
    <name>####</name>
    <creationDate>2018-11-03</creationDate>
    <author>####</author>
    <authorEmail>####@####.de</authorEmail>
    <authorUrl>https://###.##.##</authorUrl>
    <copyright>SV FOO BAR e.V.</copyright>
    <license>TBA</license>
    <version>0.4.0-SNAPSHOT</version>
    <description>Joomla-Template fuer die Vereinshomepage des SV FOO BAR e.V.</description>
    <files>
        <filename>index.php</filename>
        <filename>templateDetails.xml</filename>
        <filename>template_preview.png</filename>
        <filename>template_thumbnail.png</filename>
        <filename>main.css</filename>
        <filename>favicon.ico</filename>
        <folder>images</folder>
        <folder>html</folder>
        <folder>language</folder>
        <folder>js</folder>
    </files>
    <positions>
        <position>breadcrumb</position>
        <position>left</position>
        <position>right</position>
        <position>footer</position>
    </positions>
    <languages folder="language">
        <language tag="de-DE">de-DE/de-DE.tpl_svFOOBAR.ini</language>
    </languages>
    <config>
        <fields name="params">
            <fieldset name="advanced">
                <field
                    name="sitedescription"
                    type="text"
                    label="JGLOBAL_DESCRIPTION"
                    description="JGLOBAL_SUBHEADING_DESC"
                    default="This is my slogan"
                    filter="string" />
                <field
                    name="copyright-from"
                    type="number"
                    default="2005"
                    label="TPL_SVFOOBAR_FIELDS_LABEL_COPYRIGHT_FROM"
                    description="TPL_SVFOOBAR_FIELDS_DESCRIPTION_COPYRIGHT_FROM"
                    step="1"
                    required="true" />
            </fieldset>
            <fieldset name="cookieconsent">
                <field
                    type="spacer"
                    name="cookieconsent_separator_general"
                    label="TPL_SVFOOBAR_FIELDS_LABEL_COOKIECONSENT_SEPARATOR_general" />
                <field
                    name="cookieconsent_activate"
                    type="checkbox"
                    label="TPL_SVFOOBAR_FIELDS_LABEL_COOKIECONSENT_ACTIVATE"
                    description="TPL_SVFOOBAR_FIELDS_DESCRIPTION_COOKIECONSENT_ACTIVATE"
                    checked="1"
                    value="1" />
                <field
                        name="cookieconsent_position"
                        type="list"
                        default="top"
                        required="true"
                        label="TPL_SVFOOBAR_FIELDS_LABEL_COOKIECONSENT_POSITION"
                        description="TPL_SVFOOBAR_FIELDS_DESCRIPTION_COOKIECONSENT_POSITION">
                          <option value="top">TPL_SVFOOBAR_FIELDS_LABEL_COOKIECONSENT_POSITION_BANNER_TOP</option>
                            <option value="top-pushdown">TPL_SVFOOBAR_FIELDS_LABEL_COOKIECONSENT_POSITION_BANNER_TOP_PUSHDOWN</option>
                            <option value="bottom">TPL_SVFOOBAR_FIELDS_LABEL_COOKIECONSENT_POSITION_BANNER_BOTTOM</option>
                          <option value="bottom-left">TPL_SVFOOBAR_FIELDS_LABEL_COOKIECONSENT_POSITION_FLOATING_LEFT</option>
                            <option value="bottom-right">TPL_SVFOOBAR_FIELDS_LABEL_COOKIECONSENT_POSITION_FLOATING_RIGHT</option>
                    </field>

                <field
                    type="spacer"
                    name="cookieconsent_separator_colors"
                    label="TPL_SVFOOBAR_FIELDS_LABEL_COOKIECONSENT_SEPARATOR_COLORS" />
                <field
                        name="cookieconsent_color_banner"
                        required="true"
                        type="color"
                        default="#efefef"
                        label="TPL_SVFOOBAR_FIELDS_LABEL_COOKIECONSENT_COLOR_BANNER"
                        description="TPL_SVFOOBAR_FIELDS_DESCRIPTION_COOKIECONSENT_COLOR_BANNER" />
                <field
                        name="cookieconsent_color_button"
                        required="true"
                        type="color"
                        default="#8ec760"
                        label="TPL_SVFOOBAR_FIELDS_LABEL_COOKIECONSENT_COLOR_BUTTON"
                        description="TPL_SVFOOBAR_FIELDS_DESCRIPTION_COOKIECONSENT_COLOR_BUTTON" />
                <field
                        name="cookieconsent_color_banner_text"
                        required="true"
                        type="color"
                        default="#404040"
                        label="TPL_SVFOOBAR_FIELDS_LABEL_COOKIECONSENT_COLOR_BANNER_TEXT"
                        description="TPL_SVFOOBAR_FIELDS_DESCRIPTION_COOKIECONSENT_COLOR_BANNER_TEXT" />
                <field
                        name="cookieconsent_color_button_text"
                        required="true"
                        type="color"
                        default="#ffffff"
                        label="TPL_SVFOOBAR_FIELDS_LABEL_COOKIECONSENT_COLOR_BUTTON_TEXT"
                        description="TPL_SVFOOBAR_FIELDS_DESCRIPTION_COOKIECONSENT_COLOR_BUTTON_TEXT" />

                <field
                    type="spacer"
                    name="cookieconsent_separator_texts"
                    label="TPL_SVFOOBAR_FIELDS_LABEL_COOKIECONSENT_SEPARATOR_TEXTS" />
                <field
                    name="cookieconsent_learnmore_text"
                    type="text"
                    default="Mehr erfahren"
                    label="TPL_SVFOOBAR_FIELDS_LABEL_COOKIECONSENT_LEARNMORE_TEXT"
                    description="TPL_SVFOOBAR_FIELDS_DESCRIPTION_COOKIECONSENT_LEARNMORE_TEXT"
                    filter="string" />
                <field
                    name="cookieconsent_learnmore_link"
                    type="url"
                    default="impressum-datenschutz"
                    label="TPL_SVFOOBAR_FIELDS_LABEL_COOKIECONSENT_LEARNMORE_LINK"
                    description="TPL_SVFOOBAR_FIELDS_DESCRIPTION_COOKIECONSENT_LEARNMORE_LINK" />
             <field
                    name="cookieconsent_message"
                    type="textarea"
                    default="Um die Funktionalität und den Inhalt der Website zu optimieren, verwenden wir Cookies. Durch die Nutzung unserer Website stimmst du der Verwendung von Cookies zu."
                    label="TPL_SVFOOBAR_FIELDS_LABEL_COOKIECONSENT_MESSAGE"
                    description="TPL_SVFOOBAR_FIELDS_DESCRIPTION_COOKIECONSENT_MESSAGE"
                    rows="10"
                    cols="5" />
                <field
                    name="cookieconsent_dismiss_button"
                    type="text"
                    default="Verstanden"
                    label="TPL_SVFOOBAR_FIELDS_LABEL_COOKIECONSENT_DISMISS_BUTTON"
                    description="TPL_SVFOOBAR_FIELDS_DESCRIPTION_COOKIECONSENT_DISMISS_BUTTON" />
            </fieldset>
        </fields>
    </config>
</extension>

1 Ответ

0 голосов
/ 21 ноября 2018

Попробуйте обновить тег расширения, чтобы включить метод обновления:

<extension version="3.8" type="template" method="upgrade" client="site">
...