
Иван Шкута
Время... ндааа........
+319
Репутация
3225
Рейтинг
Да, действительно ошибался. Конструкция cmsTemplate::getInstance()->setName('default'); Работает в любом месте шаблона.
Насколько я понимаю, лэйот нужно указывать ДО вызова шаблона — в логике. На уровне темы эти объекты не помогут. Могу ошибаться…
Нашел решение. Вызвал хук engine_start в котором реализовал следующий код:
public function run(){ // Подготавливаем URL к проверке if ($pos_que !== false){ } $pseudo = false; // Если во втором элементе add или edit выводим дефолтный шаблон if( $segments[2] === 'add' || $segments[2] === 'edit' ){ cmsConfig::getInstance()->set('template', 'default'); cmsTemplate::getInstance()->setName('default'); $pseudo = true; } } // Если у нас в шаблоне есть свой хелпер, то с помощью этой константы можно вернуть к исполнению дефолтный // необходимо т.к. хелпер подключается раньше всех хуков return true; }
Суть в том, что я пишу тему на бутстрапе и приходится менять JS. При этом не хотелось бы менять совсем все. С админкой сейчас проблем нет, разные темы указал и все. Для разных компонентов тоже можно указать свой шаблон. А как правильно указать тему на уровне отдельных страниц, вернее типов страниц? Чтобы не переписывать фронт страниц создания материалов. Чувствую, что ответ на поверхности должен быть, но… я на работе и тут не хватает досугового времени залезть в код и посмотреть самому, может кто раньше подскажет

Билинг 2.0.3 & iCMS 2.5.1
Ошибка: Table 'cms_billing_actions' doesn't exist
В установочных SQL-файлах тоже не нашел (v. 2.0, 2.0.2, 2.0.3).
Проблема вроде уже была решена, но к сожалению, как — осталось в секрете :(
Буду благодарен за дамп.
Ошибка: Table 'cms_billing_actions' doesn't exist
В установочных SQL-файлах тоже не нашел (v. 2.0, 2.0.2, 2.0.3).
Проблема вроде уже была решена, но к сожалению, как — осталось в секрете :(
Буду благодарен за дамп.
Нашел в чем проблема. Отсутствовала запись в конфиге о движке мускула. Добавил строку:
и заработало.
Хотелось бы взглянуть на образец конфига, вдруг у меня еще каких строк не хватает.
'db_engine' => 'InnoDB',
Хотелось бы взглянуть на образец конфига, вдруг у меня еще каких строк не хватает.
Есть еще у кого-нибудь проблема с созданием нового типа контента или мне у себя проблему продолжать искать?
Если в файле /system/core/database.php в 615 строке вместо переменной принудительно указываю InnoDB
То тогда так:
и создается запись в cms_content_types и создается таблица cms_con_vera
$sql .= ") ENGINE=InnoDB DEFAULT CHARSET=utf8";
Ошибка в запросе БД:
The used table type doesn't support FULLTEXT indexes
ALTER TABLE `cms_con_faith` ADD FULLTEXT `title` (`title`)
Последние вызовы:
addIndex() @ /home/***.ru/system/core/database.php: 643
createTable() @ /home/***.ru/system/controllers/content/model.php: 51
addContentType() @ /home/***.ru/system/controllers/admin/actions/ctypes_add.php: 26
run()
call_user_func_array() @ /home/***.ru/system/core/controller.php: 304
runExternalAction() @ /home/***.ru/system/core/controller.php: 235
runAction()
call_user_func_array() @ /home/***.ru/system/core/action.php: 29
__call() @ /home/***.ru/system/controllers/admin/actions/ctypes.php: 9
runAction() @ /home/***.ru/system/controllers/admin/actions/ctypes.php: 9
run()
The used table type doesn't support FULLTEXT indexes
ALTER TABLE `cms_con_faith` ADD FULLTEXT `title` (`title`)
Последние вызовы:
addIndex() @ /home/***.ru/system/core/database.php: 643
createTable() @ /home/***.ru/system/controllers/content/model.php: 51
addContentType() @ /home/***.ru/system/controllers/admin/actions/ctypes_add.php: 26
run()
call_user_func_array() @ /home/***.ru/system/core/controller.php: 304
runExternalAction() @ /home/***.ru/system/core/controller.php: 235
runAction()
call_user_func_array() @ /home/***.ru/system/core/action.php: 29
__call() @ /home/***.ru/system/controllers/admin/actions/ctypes.php: 9
runAction() @ /home/***.ru/system/controllers/admin/actions/ctypes.php: 9
run()
И еще добавляется таблица cms_con_vera_fields
Если в файле /system/core/database.php в 615 строке вместо переменной принудительно указываю MYISAM
то вылетает таже самая ошибка, на функции createCategoriesTable() @ /home/***.ru/system/controllers/content/model.php: 53
$sql .= ") ENGINE=MYISAM DEFAULT CHARSET=utf8";
Обновился 2.3.0 > 2.4.0
Шаблон дефолтный
При создании нового типа контента вылетает следующая ошибка:
При этом создается запись в cms_content_types и создается таблица cms_con_vera и все.
1. Это только у меня?
2. Как это исправить?
Шаблон дефолтный
При создании нового типа контента вылетает следующая ошибка:
Ошибка в запросе БД:
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'DEFAULT CHARSET=utf8' at line 21
CREATE TABLE IF NOT EXISTS `cms_con_vera_fields` (
`id` INT UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY,
`ctype_id` INT( 11 ) UNSIGNED NULL,
`name` VARCHAR( 20 ) NULL,
`title` VARCHAR( 100 ) NULL,
`hint` VARCHAR( 200 ) NULL,
`ordering` INT( 11 ) UNSIGNED NULL,
`fieldset` VARCHAR( 32 ) NULL,
`type` VARCHAR( 16 ) NULL,
`is_in_list` tinyint(1) UNSIGNED NULL,
`is_in_item` tinyint(1) UNSIGNED NULL,
`is_in_filter` tinyint(1) UNSIGNED NULL,
`is_private` tinyint(1) UNSIGNED NULL,
`is_fixed` tinyint(1) UNSIGNED NULL,
`is_fixed_type` tinyint(1) UNSIGNED NULL,
`is_system` tinyint(1) UNSIGNED NULL,
`values` TEXT NULL,
`options` TEXT NULL,
`groups_read` TEXT NULL,
`groups_edit` TEXT NULL
) ENGINE= DEFAULT CHARSET=utf8
Последние вызовы:
createTable() @ /home/***.ru/system/controllers/content/model.php: 52
addContentType() @ /home/***.ru/system/controllers/admin/actions/ctypes_add.php: 26
run()
call_user_func_array() @ /home/***.ru/system/core/controller.php: 304
runExternalAction() @ /home/***.ru/system/core/controller.php: 235
runAction()
call_user_func_array() @ /home/***.ru/system/core/action.php: 29
__call() @ /home/***.ru/system/controllers/admin/actions/ctypes.php: 9
runAction() @ /home/***.ru/system/controllers/admin/actions/ctypes.php: 9
run()
call_user_func_array() @ /home/***.ru/system/core/controller.php: 304
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'DEFAULT CHARSET=utf8' at line 21
CREATE TABLE IF NOT EXISTS `cms_con_vera_fields` (
`id` INT UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY,
`ctype_id` INT( 11 ) UNSIGNED NULL,
`name` VARCHAR( 20 ) NULL,
`title` VARCHAR( 100 ) NULL,
`hint` VARCHAR( 200 ) NULL,
`ordering` INT( 11 ) UNSIGNED NULL,
`fieldset` VARCHAR( 32 ) NULL,
`type` VARCHAR( 16 ) NULL,
`is_in_list` tinyint(1) UNSIGNED NULL,
`is_in_item` tinyint(1) UNSIGNED NULL,
`is_in_filter` tinyint(1) UNSIGNED NULL,
`is_private` tinyint(1) UNSIGNED NULL,
`is_fixed` tinyint(1) UNSIGNED NULL,
`is_fixed_type` tinyint(1) UNSIGNED NULL,
`is_system` tinyint(1) UNSIGNED NULL,
`values` TEXT NULL,
`options` TEXT NULL,
`groups_read` TEXT NULL,
`groups_edit` TEXT NULL
) ENGINE= DEFAULT CHARSET=utf8
Последние вызовы:
createTable() @ /home/***.ru/system/controllers/content/model.php: 52
addContentType() @ /home/***.ru/system/controllers/admin/actions/ctypes_add.php: 26
run()
call_user_func_array() @ /home/***.ru/system/core/controller.php: 304
runExternalAction() @ /home/***.ru/system/core/controller.php: 235
runAction()
call_user_func_array() @ /home/***.ru/system/core/action.php: 29
__call() @ /home/***.ru/system/controllers/admin/actions/ctypes.php: 9
runAction() @ /home/***.ru/system/controllers/admin/actions/ctypes.php: 9
run()
call_user_func_array() @ /home/***.ru/system/core/controller.php: 304
1. Это только у меня?
2. Как это исправить?
И снова обновление Юнилэнга!
— Теперь в арсенале Юнилэнга 55 языков.
— Переход от одной языковой версии к другой, теперь производится по прямой ссылке, что должно положительно сказаться на индексировании всех версий.
— Исправлена ошибка возникавшая в версии языка по-умолчанию, из-за которой в частности, не получалось поделиться материалами в социальных сетях.
— Теперь в арсенале Юнилэнга 55 языков.
— Переход от одной языковой версии к другой, теперь производится по прямой ссылке, что должно положительно сказаться на индексировании всех версий.
— Исправлена ошибка возникавшая в версии языка по-умолчанию, из-за которой в частности, не получалось поделиться материалами в социальных сетях.
Текущая версия: 1.2.0 (21.11.2015)
Автоматический переводчик для сайтов на InstantCMS 2, чем-то похожий на Transposh для Wordpress.
Переводит все элементы сайта с сохранением в базу данных. Поэтому перевод текста производится только один раз при сохранении или при редактировании. Посетители всегда видят локальные тексты и не ждут пока произойдет запрос к провайдеру автоматического перевода. Так же это сокращает количество обращений к тому самому провайдеру.
Переводится текст записей, меню, комментарии, виджеты, категории и т.д.[cut=Читать далее...]
Для системных текстов (админка) требуются стандартные файлы локализации из которых на данный момент имеются русский, английский и украинский (от boanro). Для остальных языков эти элементы заменяются английской локализацией.
Для фронтенда доступно 55 языков.
В планах реализовать инструмент для переводчиков, который упростит создание локализаций для Инстанта.
Переведенный текст материалов можно отредактировать вручную.
Каждая языковая версия имеет свой URL и мета-теги.
Установка производится стандартным способом через админку.
Требуемая версия Инстанта 2.3.0
Внимание! Производится замена некоторых файлов ядра системы, если вы вносили в них изменения требуется ручное смерживание.
1. Получить API-ключ Яндекса. Делается это бесплатно и очень просто. Ссылка для получения есть под полем в настройках компонента, куда потом следует ввести этот ключ (Компоненты — UniLang — Опции).
2. Включить желаемые языки (Компоненты — UniLang — Языки).
3. Настроить перевод типов контента (Компоненты — UniLang — Контент), выбрав поля, которые следует переводить.
4. При желании выполнить перевод контента уже размещенного на сайте (Компоненты — UniLang — Переводы).
Планов по дальнейшему развитию много, их реализация зависит от времени, время зависит от денег, так что последний пункт по возможности не игнорируйте.
Номер карты в Сбербанке: 5469015207191793
Кошелек WebMoney: R401209930928
Кошелек QIWI: +79284270624
Яндекс Деньги: 41001823847377
Требования Яндекса к использованию результатов перевода
При оформлении результатов перевода необходимо придерживаться правил, описанных в Лицензии на использование сервиса Яндекс.Переводчик.
Каждая страница, использующая данные сервиса Яндекс.Переводчик, должна содержать текст «Переведено сервисом «Яндекс.Переводчик» с активной гиперссылкой на страницу translate.yandex.ru/.
Размер шрифта ссылки должен быть не менее размера шрифта основного текста, а цвет должен совпадать с цветом шрифта основного текста страницы.
— — —
v1.2.0 (21.11.2015)
— Теперь в арсенале Юнилэнга 55 языков.
— Переход от одной языковой версии к другой, теперь производится по прямой ссылке, что должно положительно сказаться на индексировании всех версий.
— Исправлена ошибка возникавшая в версии языка по-умолчанию, из-за которой в частности, не получалось поделиться материалами в социальных сетях.
v1.1.0 (15.11.2015)
— Каждая языковая версия теперь имеет свой префикс в URL.
— Существенно сокращено количество запросов к базе данных.
— Исправлена ошибка из-за которой пропадпли теги.
— При редактировании материалов, можно выбрать — переводить их автоматически или нет.
— Теперь администратор может выбирать, какие переводить мета-теги (заголовок, ключевики и описание), а какие нет.
— Теперь почти все на сайте можно перевести/исправить вручную (осталось категории и свойства контента).
— Изменена страница редактирования перевода записи контента.
— Различные улучшения по коду (большая часть переписана) и исправления по безопасности.
v1.0.2 (10.11.2015)
— Появилась возможность ручного перевода элементов сайта (контент можно было переводить вручную и раньше).
v1.0.1 (08.11.2015)
— Важное обновление безопасности.
— — —
Не забывайте делиться о результатах запуска, автоматического сбора статистики пока нет.
Автоматический переводчик для сайтов на InstantCMS 2, чем-то похожий на Transposh для Wordpress.
Переводит все элементы сайта с сохранением в базу данных. Поэтому перевод текста производится только один раз при сохранении или при редактировании. Посетители всегда видят локальные тексты и не ждут пока произойдет запрос к провайдеру автоматического перевода. Так же это сокращает количество обращений к тому самому провайдеру.
Переводится текст записей, меню, комментарии, виджеты, категории и т.д.[cut=Читать далее...]
Для системных текстов (админка) требуются стандартные файлы локализации из которых на данный момент имеются русский, английский и украинский (от boanro). Для остальных языков эти элементы заменяются английской локализацией.
Для фронтенда доступно 55 языков.
В планах реализовать инструмент для переводчиков, который упростит создание локализаций для Инстанта.
Переведенный текст материалов можно отредактировать вручную.
Каждая языковая версия имеет свой URL и мета-теги.
Установка производится стандартным способом через админку.
Требуемая версия Инстанта 2.3.0
Внимание! Производится замена некоторых файлов ядра системы, если вы вносили в них изменения требуется ручное смерживание.
1. Получить API-ключ Яндекса. Делается это бесплатно и очень просто. Ссылка для получения есть под полем в настройках компонента, куда потом следует ввести этот ключ (Компоненты — UniLang — Опции).
2. Включить желаемые языки (Компоненты — UniLang — Языки).
3. Настроить перевод типов контента (Компоненты — UniLang — Контент), выбрав поля, которые следует переводить.
4. При желании выполнить перевод контента уже размещенного на сайте (Компоненты — UniLang — Переводы).
Планов по дальнейшему развитию много, их реализация зависит от времени, время зависит от денег, так что последний пункт по возможности не игнорируйте.
Номер карты в Сбербанке: 5469015207191793
Кошелек WebMoney: R401209930928
Кошелек QIWI: +79284270624
Яндекс Деньги: 41001823847377
Требования Яндекса к использованию результатов перевода
При оформлении результатов перевода необходимо придерживаться правил, описанных в Лицензии на использование сервиса Яндекс.Переводчик.
Каждая страница, использующая данные сервиса Яндекс.Переводчик, должна содержать текст «Переведено сервисом «Яндекс.Переводчик» с активной гиперссылкой на страницу translate.yandex.ru/.
Размер шрифта ссылки должен быть не менее размера шрифта основного текста, а цвет должен совпадать с цветом шрифта основного текста страницы.
— — —
v1.2.0 (21.11.2015)
— Теперь в арсенале Юнилэнга 55 языков.
— Переход от одной языковой версии к другой, теперь производится по прямой ссылке, что должно положительно сказаться на индексировании всех версий.
— Исправлена ошибка возникавшая в версии языка по-умолчанию, из-за которой в частности, не получалось поделиться материалами в социальных сетях.
v1.1.0 (15.11.2015)
— Каждая языковая версия теперь имеет свой префикс в URL.
— Существенно сокращено количество запросов к базе данных.
— Исправлена ошибка из-за которой пропадпли теги.
— При редактировании материалов, можно выбрать — переводить их автоматически или нет.
— Теперь администратор может выбирать, какие переводить мета-теги (заголовок, ключевики и описание), а какие нет.
— Теперь почти все на сайте можно перевести/исправить вручную (осталось категории и свойства контента).
— Изменена страница редактирования перевода записи контента.
— Различные улучшения по коду (большая часть переписана) и исправления по безопасности.
v1.0.2 (10.11.2015)
— Появилась возможность ручного перевода элементов сайта (контент можно было переводить вручную и раньше).
v1.0.1 (08.11.2015)
— Важное обновление безопасности.
— — —
Не забывайте делиться о результатах запуска, автоматического сбора статистики пока нет.
Вышло обновление Юнилэнга, кто уже устанавливал, можно обновляться. Ну или устанавливать, кто еще не успел :)
Ссылка не открываетсяГотово! Можно пользоваться: instantcms.ru/addons/unilang.html
Да, нужно было дождаться проверки модератором. Уже ссылка активна, так что пользуйтесь :)