Просто оставлю это здесь)

dwd
Писал в личку, но Александр, насколько я понимаю, тоже из Украины и до личных сообщений в Инстанте сейчас не часто добирается.
Получил письмо от вас 8-го числа, ответил спустя 2 часа, проверяйте почту. Меня всегда можно найти написав мне письмо через форму обратной связи на сайте icms2-docs.ru
Что будете делать с этим через пару-тройку лет, когда выйдет официальная мультиязычность? То что уже сделано в движке, в этом направлении, совсем не похоже ни на один из доступных компонентов. Будете переписывать все переводы заново? И что именно планируете переводить?
А что собственно нужно будет по-вашему делать? На данный момент компонент лишь интерфейс для перевода, весь функционал давно системный, еще начиная с 2.13.1. Компонент создает ровно те же столбцы в БД, что и будущая системная мультиязычность(если такая конечно когда-то появится). Так что мысль интересная, но неправильная, ничего переводить заново не придется.
Компонент под кубом и привязан к домену. Без Автора Вы нечего не сделаете.
1. У меня нет привычки как у некоторых кодировать все наглухо чтоб потом другие с этим мучались. Весь код, который может потребовать изменения всегда открыт
2. Ну и чисто для справки — есть замечательная версия без кодирования и привязки к домену. Об этом черным по-белому написано в каталоге дополнений инстанта.
Ну и всем высказавшимся: Компонент существует уже 5 лет и поддерживается в актуальном состоянии, полностью совместим со всеми версиями системы и шаблонами — как с шаблоном modern так и новым шаблоном админки. Чтобы вы понимали — моего интереса в рекламе и распространении данного компонента нет, стоимость чисто символическая.
Раньше вообще компонент был бесплатным и платным стал лишь потому, что больно уж много желающих поиграться нахаляву и подоставать меня глупыми вопросами не связанными с компонентом. Как создать новый язык, что такое константы и где их найти. И тд. и т.п. Так что данный ценник это просто способ отсеять таких игрунов и хоть как-то компенсировать то время, которое приходится тратить, объясняя людям как устроена мультиязычность в инстанте и рассказывая вещи, описанные в документации системы.
В общем данный компонент поддерживается и распространяется исключительно в целях популяризации системы. Есть сайты, существование которых в принципе невозможно без мультиязычности и сделаны на инстанте только благодаря данному компоненту.
Ничего писать не буду, просто покажу))
Никаких проблем с интеграцией нет. Поле "SEO-Текст" это автономный механизм, который можно использовать где угодноНаверное, так как компонент не на основе типов контента сделан, внедрить поддержку компонента от dwd будет непросто.
И добавить в любой интерфейс любого компонента поле для ввода паттерна тоже не есть проблема.
1. ознакомиться — /forum/thread33935-1.html#335235
2. скачать и установить свежую версию компонента "Категории для полей"
Сперва выходит обновление системы, затем обновления компонентов, это надо учитывать. Не всегда старые версии компонентов продолжают адекватно работать на новых версиях системы. Особенно в случаях, когда релиз вносит какие-то изменения в ранее существовавшие фундаментальные правила.
А выше @dance2fast объяснил откуда нотисы.
Там просто помимо данного нотиса фатальная ошибочка присутствовала, я о ней выше писал.
Да я же не упрекаю ни в чем.
Так и я ничего против не имею и всегда готов общаться и решать все возникшие проблемы. Ошибки и нотисы в том числе нужно исправлять. Если они есть конечно. Я кстати регулярно это делаю, но в вашем случае их быть не должно. Если ваши нотисы не исчезли говорите, будем посмотреть.Без миграции все хорошо работало, ее произвел и она выдала результат "не найдено полей с мультисписком".
Для простых списков миграция и не требуется. но у вас в нотисе присутствовало значение вида 0111000 — характерный формат хранения данных Мультисписка, отсюда и мой вывод про то, что миграции не было.
Автор довольно редко читает форумы. Я сюда попал исключительно по ссылке из вашего письма, на которое уже ответил.Автор Конструктора списков пока молчит
Не вводите людей в заблуждение, никакого трабла нет. Возникшие у вас нотисы это результат вашей же невнимательности. Вам просто лень почитать что написано на той странице на которую вы ссылаетесь. Вы заменили поле типа Мультисписок полем типа Конструктор списков. Они имеют принципиально разный формат хранения данных. Миграцию за вас я провести должен?Похоже это трабл с установленным полем:
icms2-docs.ru/clientarea/product/33
Касательно же вашей ошибки — она вызвана полем walking. И скорее всего вам правиьно подсказали, что данное поле является частью компонента "Прогулки".
P.S. Вот ваша строка ошибка и строка с ней
Fatal error: Uncaught Exception: DateTime::__construct(): Failed to parse time string (<time datetime="2020-10-25T23:59:00+03:00">25.10.2020</time> <span class="time">23:59</span>) at position 0 (<): Unexpected character in templates/default/controllers/walk/fields/walking.tpl.php:2
Показ полей — youtu.be/D_VtVjvPTLU
Сохранение — youtu.be/xun_8wj985c
Не знаю что к этому добавить, все работает как и должно работать.
Evanescence, да, можно будет так задавать этот параметр. Ни и после создания формы тоже:
$form->setFieldProperty($fieldset_id, $field_name, 'validate_vals', false)
1. имеем некий абсолютно неважно какой js-скрипт, генерирующий массив titles
2. имеем поле типа "Список", которое выводится в форме чекбоксами
Задача: добавить в каждому чекбоксу строковое поле с соотвествующим данному полю текстом из массива titles
Мое решение данной задачи состоит из 3 строк кода.
title = $(this).val()] == null ? '' : titles[$(this).val()]; $(this).closest('label').append('<input type="text" class="catsinput" name="options[catsitem][titles][' + $(this).val() + ']" value="' + title + '"/>'); });
Ни разу это не правильно. Кто из нас программист? Я или сервер? Кому из нас виднее какие данные я хочу отправить и как их обработать?И это правильно. Сервер не должен ожидать данных, кроме указанных в списке — мы же из доступного списка выбираем.
В массовом использовании, во фронтэнде это бесспорно нужно. Но когда дело касается админки, когда я сознательно использую такой способ передачи данных зачем мне это ни разу не нужное бесплатное приложение?))
Даю рецепт:
1. создаем в папке system/fields файл с именем cfdslist.php и содержимым
<?php class fieldCfdslist extends fieldList { public $title = 'Список без валидации ключей'; public function validate_array_key($array, $value){ return true; } }
3. открываем файл хука system/controllers/catfields/hooks/ctype_item_form.php, находим в нем сроку
Именно для этого еще в ХХ веке придумали ватермарк.Тут одно из двух, как я писал выше:
1. Даём украсть фото, но яндекс приводит по фото посетителей.
2. Не даём украсть фото (маркируем), но от яндекса прока нет.
Чтобы нельзя было написать "Источник — Яндекс-картинки"))