- Заметки 61
- Комментарии 39
8 часов назад
При попытке открыть в журнале ошибок появляется:
PHP warning: Parameter 1 to modManagerController::getInstance() expected to be a reference, value gi...
При нажатии на файлы в разделе ресурсы вылезают пустые страницы. 2
Сегодня в 09:47
добавить можно с помощью &includeDocs
исключить с помощью &excludeDocs
Шрифты меняются в стилях css
Найти место редактирования меню 3
Сегодня в 07:27
Оперативно. На ум приходит только старый анекдот:
— Скажите, больной перед смертью потел?
— Да.
— Это хорошо.
Facade Laravel в Modx 2/3 22
Вчера в 16:42
Не совсем в тему, но добавлю свои пять копеек :)
Ставил Твиг в Битрикс три года назад и тем самым избавился от лютого говнокода в битриксовых файлах...
mmxTwig - еще одна интеграция шаблонизатора 9
Вчера в 15:33
Можно предварительно выполнить к таблице запрос через newQuery с нужными условиями — вытащить массив айдишников и уже из этого массива взять рандомный...
getObject Рандом 1
17 мая 2024, 23:38
require_once $_SERVER['DOCUMENT_ROOT'] . '/core/config/config.inc.php';Это лишнее.
global $modx;и это тоже.
$modx->context->keyКак...
[miniShop2] - Ошибка при инициализации 1
16 мая 2024, 08:23
Всё норм работает, надо только заменить в файле core/components/msdsector/controllers/msdsectordeliveryhandler.class.php
if (!class_exists("ms...
[msdSector] - расчет стоимости доставки с учетом секторов. 10
15 мая 2024, 11:50
Немного дополню, для mSearch2 (может кому пригодится)
<script>
var lazyLoadInstance = new LazyLoad({
elements_selecto...
pdopage и vanilla-lazyload 7
Вешается на пару событий, может для вас что-то излишнее в нем, не знаю.
1. Настраиваем MIGx
1.1. Создаем таблицы в БД и объекты
— Ставим MIGx, как написано в документации к нему!
Я назвал этот «полукомпонент» xqa, все имена/префиксы делал с этим названием…
— Открываем MIGx в админке, и на первой вкладке создаем package xqa
— берем эту xml
и на вкладке xml schema ждем save, сохраняя ее.
— теперь создаем таблицы в БД на вкладке create Tables и создаем классы на вкладке parse Schema.
Таким образом мы получаем таблицу в БД и xpdo классы для работы с этой таблицей.
Структура моей таблицы:
1.2 Создаем MIGx настройку.
Идем в MIGx — вкладка MIGx (вторая вкладка с настройками)
Делаем новую xqa и по ней правой кнопкой — Экспорт/Импорт, вставляем следующий код:
Сохраняем и ради интереса жмем редактировать, смотрим какие поля и колонки у нас есть.
2. Делаем стандартную форму на Formit, в которой должны быть поля author, author_email, question. Как вы ее реализуете — ваши заботы.
Что важно для нас, у Formit указываем хук xQaAdd:
&hooks=`email,xQaAdd`
Хук email я тоже использую, что бы пришло администратору сайта уведомление «Добавлен новый вопрос...».
Код хука примерно такой, т.е. мы просто создаем новый объект xQa (вопрос):
3. Делаем TV поле с типом ввода migxdb, указываем Конфигурацию xqa (мы ее выше создавали), назначаем TV нужному шаблону.
У ресурса должна появится таблица:
4. Уведомление пользователя об ответе:
Создаем плагин notifyVisitors на событие OnDocFormSave:
Что делает плагин: при сохранении ресурса получаем все xQa, у которых стоит галочка «Оповестить автора об ответе», далее, например, отправляем письмо (я НЕ ПРИВОЖУ этот код, напишите его сами), ставим notify в 0.
1. Нужно создать класс-наследника msDeliveryInterface
2. Положить в /core/components/minishop2/custom/delivery/имякласса.class.php
3. Указать имя класса (не файла) в методе доставки, в админке.
Вот нашел рабочий код для кастомного класса:
В коде выше мы написали что у нас стоимость доставки при сумме заказа больше 10 т.р. = 0.
4. Дальше создаем свой класс заказа и прописываем имя в настройках минишопа, кладем его сюда
core/components/minishop2/custom/order/Имя класса.class.php
Содиржимое:
В коде вместо Имя класса, указываем свой.
5. Далее в чанке со строками вывода цены доставки (в нашем случае tpl.msOrder.delivery), оборачиваем плейсхолдер в
Вот и все, должно работать.
Всё что тебе нужно это исправить чанк с формой добавления комментария и чанк вывода комментария.
Например я сделал так — добавил вот этот скрипт в шаблоне:
github.com/javiertoledo/bootstrap-rating-input
Далее в форму комментария добавил такой код:
В чанк вывода такой:
Всё! Никаких изменений в код компонента вносить не нужно. Всё само подцепляется и работает.
плагин:
сниппет: