
Алексей Шумаев
С нами с 30 ноября -0001; Место в рейтинге пользователей: #24Пишем RESTful API - практика. Часть 1.
RESTful API - быстрый старт.
Статья — продолжение цикла, рассматривающего создание REST API для MODX со всех сторон.
Часть первая — введение
Рассмотрим как работает встроенный в MODX модуль для RESTful API, настроим первое подключение, разберем базовые моменты.
Часть первая — введение
Рассмотрим как работает встроенный в MODX модуль для RESTful API, настроим первое подключение, разберем базовые моменты.
Curl клиент modx
Встроенный curl клиент для отправки запросов на сторонние сервисы (RESTful и другие).
Так как все чаще используются сторонние сервисы в повседневной разработке сайтов, для этих целей в modx есть встроенный клиент, с помощью которого можно отправлять запросы:
Так как все чаще используются сторонние сервисы в повседневной разработке сайтов, для этих целей в modx есть встроенный клиент, с помощью которого можно отправлять запросы:
/* @var modRest $client */
$client = $modx->getService('rest', 'rest.modRest');
$response = $client->get('GET запрос');
или
$response = $client->post('POST запрос');
// Обработка полученных данных в json или xml формате и преобразование их в массив
$array = $response->process();
В заметке перечислены способы работы с клиентомНастройка Турбо страниц для Яндекса (Готовое решение)
Долго разбирался как настроить Турбо страницы для Яндекса. Много разного мануала нашел, в итоге решил поделиться тем, что у меня получилось. Не судите строго.
Может кто-то что-то подскажет, как реализовать проще или что-то улучшить. Может кому-то помогут мои наработки.
Рейтинга не хватило разместить в разделе Готовые решения или Пошаговые инструкции, оставляю в Вопросах.
Может кто-то что-то подскажет, как реализовать проще или что-то улучшить. Может кому-то помогут мои наработки.
Рейтинга не хватило разместить в разделе Готовые решения или Пошаговые инструкции, оставляю в Вопросах.
TVTable 3.4.0
Привет всем!
Для того чтобы администрация форума не ругалась:
«Сегодня дорогие мои, не будет никаких сантиментов и смайликов. Только жесткач и технические данные в чистом виде! Кому нравится словоблудие и рукофлудие, свободен. Никого не держу. Досвидульки и ...»
Для того чтобы администрация форума не ругалась:
«Сегодня дорогие мои, не будет никаких сантиментов и смайликов. Только жесткач и технические данные в чистом виде! Кому нравится словоблудие и рукофлудие, свободен. Никого не держу. Досвидульки и ...»
msTimeStamp - Снятие метки новинка, особый или популярный по времени
Приложение добавляет дополнительное поле "действителен до" с выбором даты до которой будет действовать метка о том что товар Новинка, Особый или Популярный.
Проверка даты действия метки происходит во время входа пользователя на страницу. Если время действия метки истекло, то запись автоматически удаляется а у товара автоматически снимается метка.
Например можно установить у товара чекбокс Новинка и выбрать дату по наступлению которой товар перестанет быть новинкой

Проверка даты действия метки происходит во время входа пользователя на страницу. Если время действия метки истекло, то запись автоматически удаляется а у товара автоматически снимается метка.
Например можно установить у товара чекбокс Новинка и выбрать дату по наступлению которой товар перестанет быть новинкой

Увечиличаем скорость синхронизации 1С с minishop2 в 3-5 раз. mSklad/mSync
Не давно обнаружил что во время синхронизации с 1С, есть возможность указать 1С-ке: упаковать в архив все файлы выгрузки и отправить на сервер.
Из-за того что 1С отправляет import.xml, offers.xml и изображения по одному файлу, синхронизация с сайтом довольно надолго затягивается.
К примеру: если у вас 1000 изображений (а время на отправку изображения минимум 1-2 секунды) то нетрудно подсчитать что в итоге ваша загрузка займет минимум 16 минут, это только на отправку файлов на сервер не считая самой обработки файлов.
Эта небольшая доработка класса, скажет 1С отправлять файлы в архиве со всеми данными целиком.
После чего архив будет слаться частями (размер архива указывается в file_limit).
Допустим что интернет у нас слабенький и укажим чтобы часть архива была максимум 10мб.
Внимание!!! Этот метод использовался для синхронизации через mSklad, так что ваш класс может чем то отличатся. Не советую пробовать на боевом сайте.
Из-за того что 1С отправляет import.xml, offers.xml и изображения по одному файлу, синхронизация с сайтом довольно надолго затягивается.
К примеру: если у вас 1000 изображений (а время на отправку изображения минимум 1-2 секунды) то нетрудно подсчитать что в итоге ваша загрузка займет минимум 16 минут, это только на отправку файлов на сервер не считая самой обработки файлов.
Эта небольшая доработка класса, скажет 1С отправлять файлы в архиве со всеми данными целиком.
После чего архив будет слаться частями (размер архива указывается в file_limit).
Допустим что интернет у нас слабенький и укажим чтобы часть архива была максимум 10мб.
Внимание!!! Этот метод использовался для синхронизации через mSklad, так что ваш класс может чем то отличатся. Не советую пробовать на боевом сайте.
Как зашифровать компонент на основе modExtra?
Мне инструкцию прислали
Инструкция:
1 В пакет нужно добавить этот ресолвер gist.github.com/bezumkin/52b4627783e22775b969aa479c281121
2 В корень директории core компонента этот класс gist.github.com/bezumkin/7eb7b508e033f04ea6ab5769c1e74c52
3 И поменять скрипт сборки в 2х местах gist.github.com/bezumkin/9d17b0bf9e3271987816c32906ed357c
4 Первый кусок до // — в начале, сразу после registerNamespace, а второй кусок в конце, перед pack()
По пункту 2 уточнить в UserTest\core\ или в UserTest\core\components\usertest?
Особо не понятные пункты 3, 4. Не понятно что и куда пихать в build.transport.php.
Инструкция:
1 В пакет нужно добавить этот ресолвер gist.github.com/bezumkin/52b4627783e22775b969aa479c281121
2 В корень директории core компонента этот класс gist.github.com/bezumkin/7eb7b508e033f04ea6ab5769c1e74c52
3 И поменять скрипт сборки в 2х местах gist.github.com/bezumkin/9d17b0bf9e3271987816c32906ed357c
4 Первый кусок до // — в начале, сразу после registerNamespace, а второй кусок в конце, перед pack()
По пункту 2 уточнить в UserTest\core\ или в UserTest\core\components\usertest?
Особо не понятные пункты 3, 4. Не понятно что и куда пихать в build.transport.php.
1 плагин - 3 лайвхака
Всем привет, порой работа менеджеров в админке modx — сущий ад. Сегодня поступил заказ с просьбой решить несколько проблем.
Проблема №1:
В tinyMCE все изображения которые вставляются имеют атрибуты width и height, и не имеют нужных классов
Проблема №2:
При загрузки файлов в каталог, где уже есть такое имя, файлы переписывают друг друга, необходимо было сделать добавление префикса для файлов с одинаковым именем
Проблема №3:
Иногда менеджеры грузят неприлично большие изображения, что непосредственно влияет и на скорость загрузки страницы и на общий размер файлов
Что делает плагин:
Проблема №1:
В tinyMCE все изображения которые вставляются имеют атрибуты width и height, и не имеют нужных классов
Проблема №2:
При загрузки файлов в каталог, где уже есть такое имя, файлы переписывают друг друга, необходимо было сделать добавление префикса для файлов с одинаковым именем
Проблема №3:
Иногда менеджеры грузят неприлично большие изображения, что непосредственно влияет и на скорость загрузки страницы и на общий размер файлов
Что делает плагин:
- Транслитерация файлов при загрузке, добавление префикса если файл дублируется
- Уменьшает загружаемое изображение до 1200px по ширине
- Из поля content достает все img, вырезает у них атрибуты width и height, вместо них подставляет класс img-thumbnail