Автор Тема: Новая тема копированием - Не выводит ссылку на конфигурацию темы.  (Прочитано 770 раз)

21 Октябрь 2015, 16:33:21
  • Новичок
  • *
  • Сообщений: 20
  • Репутация: +0/-1
  • Сообщество PrestaShop
    • Просмотр профиля
Для второго магазина хотел сделать другую тему из дефолтной, создал с начало одну новую тему на базе дефолтной, плюс ещё одну с другим названием, темы видны для выбора, но не появляется настройка модуля конфигуратора темы, если её привязать к магазину, есть только в дефолтной теме.

Пробовал сам разобраться, но так и не нашёл что и как. Может кто подскажет что не так делаю?
21 Октябрь 2015, 17:15:25
Ответ #1
  • Ветеран
  • *****
  • Сообщений: 86688
  • Репутация: +25428/-0
  • Сообщество PrestaShop
    • Просмотр профиля
Нужно создать конфигурационный файл темы /config/xml/themes/mythemep.xml в нем указать модули, хуки для новой темы.
21 Октябрь 2015, 20:17:01
Ответ #2
  • Новичок
  • *
  • Сообщений: 20
  • Репутация: +0/-1
  • Сообщество PrestaShop
    • Просмотр профиля
Нужно создать конфигурационный файл темы /config/xml/themes/mythemep.xml в нем указать модули, хуки для новой темы.
В том то и проблема, что я создавал конфиг файл, копию дефолтного, ток имена менял, самого файла и в тегах. Там модуль прописан, включая и в хуках, но кроме заголовка:
Цитировать
MyTheme version 1.0

Спроектировано MyName
не чего нет, сразу идёт разделитель и за ним конфигурация шаблона с расширенными настройками, минуя настройки шаблона...

Ах да, при назначении шаблона, конфигуратор шаблона так же присутствует в списке и включен.
22 Октябрь 2015, 09:51:39
Ответ #3
  • Ветеран
  • *****
  • Сообщений: 86688
  • Репутация: +25428/-0
  • Сообщество PrestaShop
    • Просмотр профиля
Данные берутся из xml файла темы. Проверьте конфиг. файл или используйте доступ к настройкам этого модуля в Модули.
22 Октябрь 2015, 11:27:25
Ответ #4
  • Ветеран
  • *****
  • Сообщений: 1807
  • Репутация: +49/-1
  • Сообщество PrestaShop
    • Просмотр профиля
Модуль переустановите. Шаблон темы для админки проверьте. Сравните с дефолтным.
23 Октябрь 2015, 12:08:17
Ответ #5
  • Новичок
  • *
  • Сообщений: 20
  • Репутация: +0/-1
  • Сообщество PrestaShop
    • Просмотр профиля
Цитировать
Данные берутся из xml файла темы. Проверьте конфиг. файл или используйте доступ к настройкам этого модуля в Модули.
Уже 100 раз проверял, не вижу в нём не чего, такого, кроме первых 11 строк где задаются имя и имя директории, и строки 88 с указанием модуля конфигуратора с экщеном - включено:
<?xml version="1.0" encoding="UTF-8"?>
<!-- Copyright Prestashop -->
<theme version="1.0" name="testtheme" directory="testtheme">
    <author name="PrestaShop" email="contact@prestashop.com" url="http://www.prestashop.com"/>
    <descriptions>
        <description iso="en"></description>
    </descriptions>
    <variations>
        <variation name="testtheme" directory="testtheme" responsive="1" default_left_column="1"
                   default_right_column="0" product_per_page="12" from="1.6.0.5" to="1.6.0.5"/>
    </variations>
    <docs>
        <doc name="documentation" path="doc/"/>
    </docs>
    <metas>
        <meta meta_page="404" left="0" right="0"/>
        ........
        <meta meta_page="products-comparison" left="0" right="0"/>
    </metas>
    <modules>
        <module action="enable" name="socialsharing"/>
        ........
        <module action="enable" name="themeconfigurator"/>
        ........
        <module action="disable" name="addshoppers"/>
        <hooks>
            <hook module="socialsharing" hook="displayHeader" position="1"/>
            ........
            <hook module="themeconfigurator" hook="displayLeftColumn" position="14"/>
            <hook module="themeconfigurator" hook="displayHome" position="1"/>
            <hook module="themeconfigurator" hook="displayHeader" position="30"/>
            <hook module="themeconfigurator" hook="displayFooter" position="8"/>
            <hook module="themeconfigurator" hook="displayBackOfficeHeader" position="1"/>
            <hook module="themeconfigurator" hook="displayTopColumn" position="2"/>
            <hook module="themeconfigurator" hook="actionObjectLanguageAddAfter" position="2"/>
            ..........
            <hook module="sendtoafriend" hook="displayLeftColumnProduct" position="1"/>
        </hooks>
    </modules>
    <images>
        <image name="cart_default" width="80" height="80" products="true" categories="false" manufacturers="false"
               suppliers="false" scenes="false"/>
        ......
        <image name="m_scene_default" width="161" height="58" products="false" categories="false" manufacturers="false"
               suppliers="false" scenes="true"/>
    </images>
</theme>
Это полная копия файла default.xml из папки \config\xml\themes, переименованный в testtheme, как и сама созданная тема с тем же именем, на начисто установленный магазин, без каких либо настроек, смены каких либо шаблонов и т.д..., установил, открыл админку, нажал на кнопку создать, создал, скопировал дефолный конфиг файл, сменил названия, всё...., но настроек нет.
Магазин последней версии...

Цитировать
Модуль переустановите. Шаблон темы для админки проверьте. Сравните с дефолтным.
Модуль переустановил, ноль эффекта.
Шаблон темы для админки один, дефолтный, что там с чем сверять? Или в админке тоже нужно для новой фронтенд темы что то создавать вручную?

Знал бы английский, уже бы наверное нашёл ответ через поиск, а на русском двиг не особо популяный, в основном всё поверхностно и однотипно, на эту тему не чего не нарыл, видать ток у меня такая проблема, или я чего то не так делаю, или что глючит.
23 Октябрь 2015, 15:10:09
Ответ #6
  • Фрилансер
  • *
  • Сообщений: 113
  • Репутация: +3/-0
  • Сообщество PrestaShop
    • Просмотр профиля
Чтобы не искать ошибку в конфигурации темы, можете изменить шаблон админки /admin/themes/default/template/controllers/themes/helpers/options/options.tpl
Найдите и удалите
{if isset($cur_theme.tc) && $cur_theme.tc}и закрывающий тег
{/if}тогда ссылка на модуль themeconfigurator будет показанна всегда.
23 Октябрь 2015, 15:36:48
Ответ #7
  • Партнер
  • Ветеран
  • ****
  • Сообщений: 22816
  • Репутация: +17143/-1
  • Разработка веб-сайтов и веб-программирование
    • Просмотр профиля
Знал бы английский, уже бы наверное нашёл ответ через поиск, а на русском двиг не особо популяный, в основном всё поверхностно и однотипно, на эту тему не чего не нарыл, видать ток у меня такая проблема, или я чего то не так делаю, или что глючит.
Английский знать хорошо, но не обязательно, чтобы понять почему ссылка на модуль конфигуратор темы не показывается в настройках.
Структуру Prestashop знать нужно. Класс - Контроллер - Шаблон. Смотрите класс /classes/Theme.php метод getThemeInfo($id_theme)
if ($theme_arr['theme_name'] == 'default-bootstrap') {
        $theme_arr['tc'] = Module::isEnabled('themeconfigurator');
}
Модуль themeconfigurator показывает в настройках только для темы default-bootstrap.
Так что никаких ошибок у вас нет.

Хотите показать ссылку на модуль в настройках, делайте как написал VictorD или закомеентируйте
// if ($theme_arr['theme_name'] == 'default-bootstrap') {
        $theme_arr['tc'] = Module::isEnabled('themeconfigurator');
//}
Интернет-магазин под ключ.
Какой выбрать движок для интернет магазина ?
Какой движок лучше ?
Magento или Prestashop ?
Решение всех Ваших вопросов в создании Интернет-магазина.
24 Октябрь 2015, 09:35:31
Ответ #8
  • Новичок
  • *
  • Сообщений: 20
  • Репутация: +0/-1
  • Сообщество PrestaShop
    • Просмотр профиля
Спасибо всем, буду разбираться со структурой.