Сергей Шлоков
С нами с 31 января 2013; Место в рейтинге пользователей: #3Подготовка дополнения для работы в MODX 3.
Добрый день!
Возникает много вопросов как обновить дополнения для работы в MODX 3.
Предлагаю вашему вниманию заметку от разработчика theboxer, на примере дополнения Collection
Возникает много вопросов как обновить дополнения для работы в MODX 3.
Предлагаю вашему вниманию заметку от разработчика theboxer, на примере дополнения Collection
Форма оплаты
Добрый день!
Встала задача создать форму оплаты с последующей отсылкой данных в платежную систему (webpay)
Есть готовый модуль mspWebpay, но он не подходит по той причине, что нет интернет магазина и заказчик не хочет корзину.
1) Необходимо создать форму, которая по кнопке «заказать» загрузится и подхватит pagetitle товара и tv с ценой.
2) Далее покупатель вписывает в эту форму свои данные и нажимает продолжить
3) Когда нажимаем «продолжить» форма должна перекинуть все данные в форму #2 (форма в которой формируются данные для отправки данных в платежную систему)
код формы (дан поставщиком платежной системы)
4) Форма #2 должна наконец отсылать данные на сайт платежной системы
Помогите с чего начать )
Может есть возможность сразу 2 формы в одну объединить?
Заранее спасибо!
Встала задача создать форму оплаты с последующей отсылкой данных в платежную систему (webpay)
Есть готовый модуль mspWebpay, но он не подходит по той причине, что нет интернет магазина и заказчик не хочет корзину.
1) Необходимо создать форму, которая по кнопке «заказать» загрузится и подхватит pagetitle товара и tv с ценой.
2) Далее покупатель вписывает в эту форму свои данные и нажимает продолжить
3) Когда нажимаем «продолжить» форма должна перекинуть все данные в форму #2 (форма в которой формируются данные для отправки данных в платежную систему)
код формы (дан поставщиком платежной системы)
form action="https://secure.sandbox.webpay.by:8843/" method="post">
<input type="hidden" name="*scart">
<input type="hidden" name="wsb_version" value="2">
<input type="hidden" name="wsb_language_id" value="russian">
<input type="hidden" name="wsb_storeid" value="11111111" >
<input type="hidden" name="wsb_store" value="Название Вашего магазина" >
<input type="hidden" name="wsb_order_num" value="ORDER-12345678" >
<input type="hidden" name="wsb_test" value="1" >
<input type="hidden" name="wsb_currency_id" value="BYR" >
<input type="hidden" name="wsb_seed" value="1242649174">
<input type="hidden" name="wsb_return_url" value=" http://your site url.com/success.php ">
<input type="hidden" name="wsb_cancel_return_url" value=" http://your site url.com/cancel.php "> <input type="hidden" name="wsb_notify_url" value=" http://your site url.com/notify.php ">
<input type="hidden" name="wsb_email" value="no@body.tld" >
<input type="hidden" name="wsb_phone" value="22-333-333" >
<input type="hidden" name="wsb_invoice_item_name[]" value="Товар 1">
<input type="hidden" name="wsb_invoice_item_quantity[]" value="2">
<input type="hidden" name="wsb_invoice_item_price[]" value="10000">
<input type="hidden" name="wsb_invoice_item_name[]" value="Товар 2">
<input type="hidden" name="wsb_invoice_item_quantity[]" value="1">
<input type="hidden" name="wsb_invoice_item_price[]" value="500">
<input type="hidden" name="wsb_total" value="21950" >
<input type="hidden" name="wsb_signature" value="40aa8af3ce7a1f7c3635ac2227475094a59d574c" >
<input type="hidden" name="wsb_tax" value="1050">
<input type="hidden" name="wsb_shipping_name" value="Стоимость доставки" >
<input type="hidden" name="wsb_shipping_price" value="980" >
<input type="hidden" name="wsb_discount_name" value="Скидка на товар" >
<input type="hidden" name="wsb_discount_price" value="580" >
<input type="submit" value="Купить">
</form>
4) Форма #2 должна наконец отсылать данные на сайт платежной системы
Помогите с чего начать )
Может есть возможность сразу 2 формы в одну объединить?
Заранее спасибо!
Почему не стоит использовать target=''_blank''
Я сам давно уже стараюсь не использовать target=''_blank'' в ссылках, вот, решил поделиться с сообществом своими соображениями.
Под катом небольшой эксперимент.
Под катом небольшой эксперимент.
Super MODx SEO-strict +ускоряем фронтенд
Михаил задал вопрос про канонизацию урлов в MODx.
Писал ему ответ, но понял, что он слишком большой. Поэтому переписал в статью.
Поехали.
Писал ему ответ, но понял, что он слишком большой. Поэтому переписал в статью.
Поехали.
Организация рутины при свежей установке modx.
Хочу поделиться скриптами для организации рутины при свежей установке и настройке сайта на modx, как раз проскочил вопрос в сообществе.
Скрипты можно запустить на свежей установке через консоль сервера, ну или вызывать в браузере страницу, предварительно отредактировав список опций.
По умолчанию все настройки рассчитаны на корень сайта example.com/packages.php
На локальном сервере php5-fpm nginx настроенном по инструкции Bezumkin все работает отлично.
Скрипты можно запустить на свежей установке через консоль сервера, ну или вызывать в браузере страницу, предварительно отредактировав список опций.
По умолчанию все настройки рассчитаны на корень сайта example.com/packages.php
На локальном сервере php5-fpm nginx настроенном по инструкции Bezumkin все работает отлично.
Дубли страниц в MODX
Столкнулся с проблемой, которую вижу на сайтах MODX — дубли страниц со "/" в конце и без него. Сайты на Nginx и Apache. На modx.pro/ тоже. Пример:
Существует страница modx.pro/components/5081-mobiledetect-mobile-version-for-your-website и modx.pro/components/5081-mobiledetect-mobile-version-for-your-website/
Существует страница modx.pro/components/5081-mobiledetect-mobile-version-for-your-website и modx.pro/components/5081-mobiledetect-mobile-version-for-your-website/
Контроль версий и деплой при разработке сайтов на MODX
Проблема контроля версий, деплоя, возможности командной работы издавна занимают умы разработчиков.
Ограничение доступа в админку по IP и дням недели
Это никак не отражено в документации, но любому пользователю можно ограничить авторизацию по IP и дням недели. Работает это c помощью настроек пользователя. Далее краткая инструкция (я использую MODX 2.3, поэтому в версии 2.2 пути могут отличаться):
1) Заходим в пункт меню Управление -> Пользователи.
2) Выбираем нужного пользователя правой кнопкой и жмем «Редактировать».
3) Переходим на вкладку «Настройки» и жмем кнопку «Создать новый».
4) В появившемся окне называем ключ allowed_ip — это будет настройка ограничения по IP. Имя можно выбрать любое. В поле значение записываем IP через запятую, например, «192.168.0.1,127.0.0.1». Сохраняем.
5) Аналогично настройка по дням. Ключ называем allowed_days. Значение — это номера дней через запятую от 1 (воскресенье) до 7 (суббота). Например, строка «2,3,4,5,6» ограничит доступ в админку только рабочими днями.
1) Заходим в пункт меню Управление -> Пользователи.
2) Выбираем нужного пользователя правой кнопкой и жмем «Редактировать».
3) Переходим на вкладку «Настройки» и жмем кнопку «Создать новый».
4) В появившемся окне называем ключ allowed_ip — это будет настройка ограничения по IP. Имя можно выбрать любое. В поле значение записываем IP через запятую, например, «192.168.0.1,127.0.0.1». Сохраняем.
5) Аналогично настройка по дням. Ключ называем allowed_days. Значение — это номера дней через запятую от 1 (воскресенье) до 7 (суббота). Например, строка «2,3,4,5,6» ограничит доступ в админку только рабочими днями.
Уязвимость MODx
Модель безопасности в MODX
Модель безопасности в MODX не самая очевидная. Хотя в MODX присутствуют примитивы, присущие, например, модели безопасности SQL, их предназначение в MODX несколько отличается.
При настройке безопасности конечной целью является дать каждому пользователю соответвующий набор привилегий – разрешить ему совершать определенные действия в системе. Действия могут совершаться над различными объектами: страницами (resource), контекстами (context), чанками (chunk), переменными шаблонов (TV) и т.д. Сами действия могут быть очень разными, в простейшем случае это создание, просмотр, редактирование и удаление. Таким образом, задача настройки безопасности сводится к заданию отношений между пользователями, объектами и привилегиями.
При настройке безопасности конечной целью является дать каждому пользователю соответвующий набор привилегий – разрешить ему совершать определенные действия в системе. Действия могут совершаться над различными объектами: страницами (resource), контекстами (context), чанками (chunk), переменными шаблонов (TV) и т.д. Сами действия могут быть очень разными, в простейшем случае это создание, просмотр, редактирование и удаление. Таким образом, задача настройки безопасности сводится к заданию отношений между пользователями, объектами и привилегиями.