but1head
С нами с 01 апреля 2014; Место в рейтинге пользователей: #19Динамическая кнопка Купить / В корзине
Появилась необходимость реализовать динамическую кнопку Купить / В корзине.
Может кому-то пригодится.
Спасибо Алексею Наумову, Василию Наумкину за помощь в реализации.
Чанк Купить tplOut:
Чанк В корзине tplIn:
Скрипт (требуется подключенный jQuery)
Сниппет myButton:
Кнопка вызывается таким образом:
Может кому-то пригодится.
Спасибо Алексею Наумову, Василию Наумкину за помощь в реализации.
Чанк Купить tplOut:
<button type="submit" class="btn btn-cart btn-primary" name="ms2_action" value="cart/add">
Купить
</button>
<button type="submit" class="btn btn-checkout btn-success hidden" name="ms2_action" value="cart/add">
В корзине
</button>
Чанк В корзине tplIn:
<button type="submit" class="btn btn-checkout btn-success" name="ms2_action" value="cart/add">
В корзине
</button>
Скрипт (требуется подключенный jQuery)
if (typeof(miniShop2) != 'undefined') {
// кнопки В корзину/Оформить
miniShop2.Callbacks.Cart.add.response.success = function(response) {
miniShop2.Order.getcost();
miniShop2.sendData.$form.find('.btn-cart').addClass('hidden');
miniShop2.sendData.$form.find('.btn-checkout').removeClass('hidden');
};
miniShop2.Callbacks.Cart.remove.response.success = function() {
miniShop2.sendData.$form.find('.btn-cart').removeClass('hidden');
miniShop2.sendData.$form.find('.btn-checkout').addClass('hidden');
};
}
Сниппет myButton:
<?php
// Параметры
$idd = $modx->getOption('idd', $scriptProperties, $modx->resource->id);
$tplIn = $modx->getOption('tplIn', $scriptProperties, 'tplIn'); //Можно писать так: ('tplIn', $scriptProperties, '@INLINE Товар в корзине, кол-во – [[+count]], цена = [[+price]].');
$tplOut = $modx->getOption('tplOut', $scriptProperties, 'tplOut'); // '@INLINE Товара нет в корзине.'
// Классы для работы
$pdo = $modx->getService('pdoTools');
$miniShop2 = $modx->getService('minishop2');
$miniShop2->initialize($modx->context->key, $scriptProperties);
$cart = $miniShop2->cart->get();
// Поехали
$found = false;
foreach($cart as $product) {
if ($product['id'] == $idd) {
$found = $product;
break;
}
}
return $found
? $pdo->getChunk($tplIn, $found)
: $pdo->getChunk($tplOut);
Кнопка вызывается таким образом:
[[!myButton? &idd=`[[+id]]`]]
как пересохранить 2000 ресурсов ?
Доброго дня, суть вопроса в том как я могу программно пересохранить 2000 ресурсов, понадобилось добавить еще одно поле в которое должно подтягиваться значение ответа от сервера яндекса, но плагин записывает значение при сохранении ресурса, заранее спасибо
Сниппет Declension для склонения слов
Предлагаю вашему вниманию небольшой сниппет для вывода склонения. Работает как фильтр вывода, использовать нужно примерно так:
Как видите, он применяется к любым тегам с числами, а в options нужно указать три формы слова (1 яблоко, 2 яблока и 10 яблок) для русского, или 2 (1 ticket, 2 tickets) для английского.
Для экспериментов можно повызывать сниппет с произвольными числами:
[[+balls]] [[+balls:declension=`балл,балла,баллов`]]
Как видите, он применяется к любым тегам с числами, а в options нужно указать три формы слова (1 яблоко, 2 яблока и 10 яблок) для русского, или 2 (1 ticket, 2 tickets) для английского.
Для экспериментов можно повызывать сниппет с произвольными числами:
15 [[*id:input=`15`:declension=`яблоко,яблока,яблок`]]
Полный код под катом. Как организовать подобный выбор размера и цвета?
Как организовать подобный выбор размера и цвета?
www.vsemayki.ru/product/manshort/430736
www.vsemayki.ru/product/manshort/430736
Как узнать, какие переменные передаются в плагин
Доброго времени суток. Понадобилось сделать свое определенное действие при активации пользователя на сайте, и вот уже достаточно долгое время пытаюсь понять, как работать с данными которые передаются в плагин. Например узнать id того же пользователя что был активирован. Спасибо.
[ms2gallery] Источник файлов для разных шаблонов
Небольшой плагин, позволяющий автоматически установить нужный источник файлов при создании ресурса с использованием дополнения ms2gallery.
SEO ПАК
Привет.
Искал везде про сео модов для MODX Revolution но подходящих не нашел!
Ест не много плагинов для сео некоторие уже старые, не рабочие или до конца не доделаны.
Самые нужные плагины (По моему мнению):
1) Seo strict urls (Обрабатывать неверные URL ЧПУ)
2) Модуль кольцевой внутренней перелинковки (Link Enso)
3) Оптимизация Title, мета-тегов и других элементов (Simple SEO)
4) Кросспостинг (SMOmanager )
5) SEO оптимизация категорий (CatFace)
Давайте устроим складчину на этих модов пуст программисты оценят объём работы.
ТЗ ест уже по примерам DLE.
Если упустил чего то добавте.
Искал везде про сео модов для MODX Revolution но подходящих не нашел!
Ест не много плагинов для сео некоторие уже старые, не рабочие или до конца не доделаны.
Самые нужные плагины (По моему мнению):
1) Seo strict urls (Обрабатывать неверные URL ЧПУ)
2) Модуль кольцевой внутренней перелинковки (Link Enso)
3) Оптимизация Title, мета-тегов и других элементов (Simple SEO)
4) Кросспостинг (SMOmanager )
5) SEO оптимизация категорий (CatFace)
Давайте устроим складчину на этих модов пуст программисты оценят объём работы.
ТЗ ест уже по примерам DLE.
Если упустил чего то добавте.
[Решено] Геокодирование и запись в базу
Назрел вопрос, по поводу геокидирования яндекс карт.
Есть проект в котором в ресурсах есть яндекс карта (mapex).
Логика такая: в ресурсе указывается адрес, он находится и ставится метка, после чего через модифицированный pdoField вытаскивается pagetitle, introtext, uri и координаты из mapex. На странице с картой выводятся все ресурсы с наличием координат, добавляются в группы и кластеризуются.
Проблема
Есть проект в котором в ресурсах есть яндекс карта (mapex).
Логика такая: в ресурсе указывается адрес, он находится и ставится метка, после чего через модифицированный pdoField вытаскивается pagetitle, introtext, uri и координаты из mapex. На странице с картой выводятся все ресурсы с наличием координат, добавляются в группы и кластеризуются.
Проблема
MODX_API_MODE и процессоры
В рамках выполнения одной хитрой задачи, потребовалось написать скрипт, который будет запускаться по cron и что-то делать с MODX.
Проблемы, в общем то нет, вопрос изучен, но выплыл интересный глюк.
А именно: не работали процессоры для создания/обновления ресурсов.
То есть, процессор для логина — нормально, контекст mgr — нормально, а при попытке создать ресурс — просто пустая error.
Выложил вопрос на официальном форуме и никто мне не ответил. Пришлось разбираться самостоятельно, глубоко копая исходники.
Проблемы, в общем то нет, вопрос изучен, но выплыл интересный глюк.
А именно: не работали процессоры для создания/обновления ресурсов.
То есть, процессор для логина — нормально, контекст mgr — нормально, а при попытке создать ресурс — просто пустая error.
Выложил вопрос на официальном форуме и никто мне не ответил. Пришлось разбираться самостоятельно, глубоко копая исходники.
Как работать с MODX Api
Регулярно встречаю в сети разные велосипеды про то, как подключиться к MODX снаружи для работы с его Api. Даже на официальном сайте это описано сложновато.