Сuriosity
С нами с 19 марта 2015; Место в рейтинге пользователей: #170[syncMoySklad] - синхронизация с "Мой Склад"
[syncMoySklad] — пакет для синхронизации с сервисом «Мой Склад».
В отличии от уже имеющихся дополнений работает с JSON API. Функционал работы по api существенно отличается от функционала протокола CommerceML, а инициатором синхронизации выступает сайт.
На данный момент реализована лишь следующая часть функционала…
В отличии от уже имеющихся дополнений работает с JSON API. Функционал работы по api существенно отличается от функционала протокола CommerceML, а инициатором синхронизации выступает сайт.
На данный момент реализована лишь следующая часть функционала…
modVkMarket [1.1.1-beta]
Приветствую наше уважаемое сообщество!
Сегодня вышла новая версия modVkMarket, при небольшом спонсировании от одного из покупателей.
Краткий анонс новой версии:
Сегодня вышла новая версия modVkMarket, при небольшом спонсировании от одного из покупателей.
Краткий анонс новой версии:
- Добавлена мета-информация о товаре из VK (лайки, просмотры)
- Добавлены комментарии к товару из VK
- Неопубликованные товары становятся «недоступными» в ВК
- Пофикшены некоторые баги
Сохранение корзины для пользователей
На одном из проектов появилась задача сохранять содержимое корзины для зарегистрированных пользователей, чтобы при последующей авторизации с любого компьютера они имели возможность продолжить покупки, а не добавлять все заново.
В качестве решения получился очень простой плагин, который выполняет 2 действия:
1) Сохраняет содержимое корзины в extended поля пользователя после каждого изменения корзины
2) Восстанавливает содержимое корзины перед каждой обработкой запрошенной страницы.
В качестве решения получился очень простой плагин, который выполняет 2 действия:
1) Сохраняет содержимое корзины в extended поля пользователя после каждого изменения корзины
2) Восстанавливает содержимое корзины перед каждой обработкой запрошенной страницы.
Связи объектов в CustomExtra
Сегодня я покажу, как быстренько модернизировать CustomExtra, чтобы объекты можно было связать друг с другом.
Для начала представим гипотетическую ситуацию, в которой у нас на сайте есть некие «Предметы» и с каждым предметом можно проводить некие «Операции». Попробуем связать Предметы и Операции.
Для начала представим гипотетическую ситуацию, в которой у нас на сайте есть некие «Предметы» и с каждым предметом можно проводить некие «Операции». Попробуем связать Предметы и Операции.
Дополнительные поля профиля юзера (не extended)
Разрабатываю проект, в котором необходимо было реализовать более простое редактирование дополнительных полей профиля, чем есть из коробки. К слову, неудобное редактирование — это не единственный минус нативного способа расширения профиля полями. Ни для кого не секрет, что фильтрацию по JSON полям нормально не осуществить, только костылями. Фактически, мне надо было получить решение, которое бы расширяло стандартный код MODX, не трогая исходники, дабы сохранить
Пришёл к выводу, что буду расширять стандартную вкладку профиля «Общая информация». При желании можно чуть переписать код в событии OnUserFormPrerender и создать свою вкладку со своими полями.
Настройка nginx+php-fpm с помощью Ansible. Видео
Способ настройки, чем-то напоминает Правильный хостинг для MODX Revolution 2. Однако используется другой набор софта и сценарии выполняются с помощью Ansible.
[UserFiles] - Файлы пользователя.
Компонент реализует функцию загрузки файлов пользователями сайта.
Компонент полностью переработан, изменения:
Компонент полностью переработан, изменения:
- загрузчик dropzone
- загрузка файлов c админки сайта
- загрузка файлов c фронта сайта
- редактор изображений cropper
- динамический ресайз изображений
- копирование ссылок файлов
- ...
Вывести только тикеты с рейтингом больше нуля
1 300
Итак, если вам нужно вывести тикеты с рейтингом выше ноля, то эту задачу можно решить двумя способами. Первый для высоконагруженных проектов, второй для менее нагруженных.
Первый вариант (относительно сложный в реализации, но выигрывает по скорости при большой выборке ресурсов):
Первый вариант (относительно сложный в реализации, но выигрывает по скорости при большой выборке ресурсов):
- Заходите в phpmyadmin.
- Выбираете таблицу modx_site_content
- — Переходите в закладку «структура»
- — Внизу открывшегося окна нажимаете ОК (Добавить 1 поле в конец таблицы)
Имя: ticket_rating Тип: int Длина/значение: 10 По умолчанию: Как определено (0) Null: галочка
- Сохраняем
Курс по работе на чистом PHP
Привет, друзья! Хочу обрадовать вас новостью, что мой последний курс по работе на чистом PHP открыт всем желающим, бесплатно.
На этом курсе рассмотрены темы:
Комментирование заметок, как обычно, отключено — всё в режиме «только для чтения». Спасибо всем тем 19 добрым людям, которые купили курс в своё время.
На этом курсе рассмотрены темы:
- Простой каркас ООП сайта и контроллеры
- Работа с Composer и установка готовых решений
- Установка, подключение и использование Fenom
- Установка, подключение и использование xPDO
- Ajax-пагинация своими руками
Комментирование заметок, как обычно, отключено — всё в режиме «только для чтения». Спасибо всем тем 19 добрым людям, которые купили курс в своё время.
Рейтинг пользователя - общий, тикеты и комментарии
1 500
Выводим рейтинг пользователя как на modx.pro joxi.ru/eAOYVYPI476nQm
Т.е., выводим рейтинг общий, рейтинг за тикеты (Tickets) и рейтинг за комментарии.
1. Создаем сниппет getAuthorRating:
Т.е., выводим рейтинг общий, рейтинг за тикеты (Tickets) и рейтинг за комментарии.
1. Создаем сниппет getAuthorRating:
<?php
$userId = intval($userId);
if ($author = $modx->getObject('TicketAuthor',$userId)) $modx->setPlaceholders($author->toArray());
return;
2. Там где нужно вывести рейтинг:[[!getAuthorRating? &userId=`[[+ID_пользователя]]`]]
<p>Рейтинг [[+rating]]</p>
<p>Рейтинг тикетов + [[+votes_tickets_up]] / - [[+votes_tickets_down]]</p>
<p>Рейтинг комментариев + [[+votes_comments_up]] / - [[+votes_comments_down]]</p>