ViktorK
С нами с 17 февраля 2013; Место в рейтинге пользователей: #492Добавление своих полей в форму заказа [обновлено]
При разработке нескольких проектов, возникала необходимость в получении дополнительных данных от покупателей, а полей в miniShop2 ограниченное количество. Поиск готового решения результата не дал, поэтому предлагаю свой вариант.
Решение обновлено, убраны правки исходного кода минишопа, теперь при обновлении ничего не затрется, изменены ключи у полей
Решалось это следующим образом:
1. Добавлялись необходимые поля, для примера взяты тип плательщика, название организации и инн.
2. Добавлялся плагин срабатывающий при сохранении заказа и при подключении js минишопа в админке.
3. Редактировались настройки и записи словарей.
Более подробно далее
Решение обновлено, убраны правки исходного кода минишопа, теперь при обновлении ничего не затрется, изменены ключи у полей
Решалось это следующим образом:
1. Добавлялись необходимые поля, для примера взяты тип плательщика, название организации и инн.
2. Добавлялся плагин срабатывающий при сохранении заказа и при подключении js минишопа в админке.
3. Редактировались настройки и записи словарей.
Более подробно далее
[miniShop2] Версия 2.4.0 rc
Представляю вам последнюю тестовую версию miniShop2.4-rc.
Наконец-то, в этой версии представлены изменения, которые нарушат работу текущих магазинов при обновлении.
Это связано с переходом на Fenom, и, как следствие, изменением логики работы сниппетов и сокращением общего количества чанков.
Еще раз, НЕ ОБНОВЛЯЙТЕ РАБОЧИЕ МАГАЗИНЫ, ПОКА НЕ ПРОЧИТАЕТЕ ЭТУ ЗАМЕТКУ ЦЕЛИКОМ!!!
Наконец-то, в этой версии представлены изменения, которые нарушат работу текущих магазинов при обновлении.
Это связано с переходом на Fenom, и, как следствие, изменением логики работы сниппетов и сокращением общего количества чанков.
Еще раз, НЕ ОБНОВЛЯЙТЕ РАБОЧИЕ МАГАЗИНЫ, ПОКА НЕ ПРОЧИТАЕТЕ ЭТУ ЗАМЕТКУ ЦЕЛИКОМ!!!
Дополнительные поля профиля юзера (не extended)
Разрабатываю проект, в котором необходимо было реализовать более простое редактирование дополнительных полей профиля, чем есть из коробки. К слову, неудобное редактирование — это не единственный минус нативного способа расширения профиля полями. Ни для кого не секрет, что фильтрацию по JSON полям нормально не осуществить, только костылями. Фактически, мне надо было получить решение, которое бы расширяло стандартный код MODX, не трогая исходники, дабы сохранить
Пришёл к выводу, что буду расширять стандартную вкладку профиля «Общая информация». При желании можно чуть переписать код в событии OnUserFormPrerender и создать свою вкладку со своими полями.
Upgrade PHP7 на Ubuntu 14.04
Для тех кто еще не обновил свои сервера на PHP7, настроенные по заметке Василия Наумкина.
Добавляем репозиторий
У меня все заработало. php5 при этом можно оставить (хотя может чего-нибудь вылезти).
В конфигурации php7-fpm меняем только сокет
Добавляем репозиторий
apt-get install software-properties-common
add-apt-repository ppa:ondrej/php
sudo apt-get update && apt-get purge php5-fpm && apt-get --purge autoremove && apt-get install php7.0-fpm php7.0-mysql php7.0-curl php7.0-gd php7.0-json php7.0-mcrypt php7.0-opcache php7.0-xml php7.0-mbstring
У меня все заработало. php5 при этом можно оставить (хотя может чего-нибудь вылезти).
В конфигурации php7-fpm меняем только сокет
listen = /var/run/php/php7-eco.sock
и удаляем закоментируемую строку #php_admin_value[disable_functions] = exec,passthru и т.д.
В конфиге nginx также меняем только сокетupstream backend-eco {server unix:/var/run/php/php7-eco.sock;}
После изменения конфигов не забываем рестартить сервисыservice nginx restart
service php7.0-fpm restart
Tickets: редактирование тикетов
здравствуйте! Установил на сайте тикеты, и внезапно возник вопрос, есть ли стандартный функционал редактирования тикетов для пользователей через фронтенд? Как указать ссылку по которой пользователь будет переходить на страницу редактирования своего тикета? Может есть какой-то плейсхолдер для этого? документации нету по этому вопросу.
Добавление тегов с фронта через форму Tickets
Здравствуйте. Не судите строго, пишу скорее как памятку для себя, но может быть кому пригодится.
Простое решение для добавления тегов с фронта в форму Tickets.
Простое решение для добавления тегов с фронта в форму Tickets.
Расширение любых таблиц MODX
В очередной раз понадобилось изменить таблицу сайта, менять которую не предусмотрено.
Что обычно люди делают в таких случаях? Верно, редактируют ядро или нужный компонент, и больше их не обновляют. Но ведь это неправильно, и можно решить вопрос иначе.
Пишем обычный плагин, выставляем для него событие OnMODXInit и меняем модель для нужных классов системы или дополнений. Например, я добавил id менеджера в заказ miniShop2:
Что обычно люди делают в таких случаях? Верно, редактируют ядро или нужный компонент, и больше их не обновляют. Но ведь это неправильно, и можно решить вопрос иначе.
Пишем обычный плагин, выставляем для него событие OnMODXInit и меняем модель для нужных классов системы или дополнений. Например, я добавил id менеджера в заказ miniShop2:
[modExtra] Update таблиц своего компонента
Добрый день!
Все мы знаем, что MODX прекрасен мощью решений с помощью компонентов. Я, например, всегда отдаю заказчику сайт в виде компонента, содержащего нужные элементы, зависимости от других компонентов, инициализацию нужных опций и т.д. В этом мне всегда помогал modExtra.
Но вот в один прекрасный момент я задумался, как сделать пользовательские таблицы в своём компоненте таким образом, чтобы при апдейте компонента они были способны расширяться, да и вообще поддерживаться в актуальном состоянии.
Итак задача:
Все мы знаем, что MODX прекрасен мощью решений с помощью компонентов. Я, например, всегда отдаю заказчику сайт в виде компонента, содержащего нужные элементы, зависимости от других компонентов, инициализацию нужных опций и т.д. В этом мне всегда помогал modExtra.
Но вот в один прекрасный момент я задумался, как сделать пользовательские таблицы в своём компоненте таким образом, чтобы при апдейте компонента они были способны расширяться, да и вообще поддерживаться в актуальном состоянии.
Итак задача:
- У нас есть файл схемы mycomponent.mysql.schema.xml, который поставляется вместе с компонентом (или его новой версией) и содержит актуальную информацию о структуре пользовательских таблиц.
- У нас есть БД в которой может не быть наших таблиц (установка с нуля), а могут быть (как правильной, так и неправильной структуры).
Меняем стоимость доставки совершённого заказа
Тэги к тикетам
Хотелось бы почитать, что предложит многоуважаемое сообщество, а в конце обсуждения я напишу свои «хотелки». Всем спасибо.
Заранее благодарен за участие.
Заранее благодарен за участие.