Алексей Шумаев

Алексей Шумаев

С нами с 30 ноября -0001; Место в рейтинге пользователей: #24

Пишем RESTful API - практика. Часть 1.

Эта заметка продолжает цикл посвященный всестороннему обзору архитектуры REST для MODX.

Здесь можно почитать введение
Здесь быстрый осмотр встроенного в MODX модуля modRestService

Ну а начиная с этой заметки — поговорим уже о нюансах настоящей боевой разработки.
Николай Савин
05 октября 2019, 08:56
modx.pro
6
3 065
+18

RESTful API - быстрый старт.

Статья — продолжение цикла, рассматривающего создание REST API для MODX со всех сторон.
Часть первая — введение

Рассмотрим как работает встроенный в MODX модуль для RESTful API, настроим первое подключение, разберем базовые моменты.

Николай Савин
29 сентября 2019, 08:01
modx.pro
11
4 973
+22

Curl клиент modx

Встроенный curl клиент для отправки запросов на сторонние сервисы (RESTful и другие).
Так как все чаще используются сторонние сервисы в повседневной разработке сайтов, для этих целей в modx есть встроенный клиент, с помощью которого можно отправлять запросы:

/* @var modRest $client */
$client = $modx->getService('rest', 'rest.modRest');
$response = $client->get('GET запрос');
или
$response = $client->post('POST запрос');

// Обработка полученных данных в json или xml формате и преобразование их в массив
$array = $response->process();
В заметке перечислены способы работы с клиентом
Андрей Степаненко
12 августа 2019, 07:56
modx.pro
34
5 729
+39

Настройка Турбо страниц для Яндекса (Готовое решение)

Долго разбирался как настроить Турбо страницы для Яндекса. Много разного мануала нашел, в итоге решил поделиться тем, что у меня получилось. Не судите строго.
Может кто-то что-то подскажет, как реализовать проще или что-то улучшить. Может кому-то помогут мои наработки.
Рейтинга не хватило разместить в разделе Готовые решения или Пошаговые инструкции, оставляю в Вопросах.
Андрей Шевяков
30 июня 2019, 15:45
modx.pro
12
9 964
+2

TVTable 3.4.0

Привет всем!

Для того чтобы администрация форума не ругалась:
«Сегодня дорогие мои, не будет никаких сантиментов и смайликов. Только жесткач и технические данные в чистом виде! Кому нравится словоблудие и рукофлудие, свободен. Никого не держу. Досвидульки и ...»
Баха Волков
07 июня 2019, 18:35
modx.pro
7
2 997
+21

msTimeStamp - Снятие метки новинка, особый или популярный по времени

Приложение добавляет дополнительное поле "действителен до" с выбором даты до которой будет действовать метка о том что товар Новинка, Особый или Популярный.

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

Например можно установить у товара чекбокс Новинка и выбрать дату по наступлению которой товар перестанет быть новинкой

Андрей Степаненко
09 апреля 2019, 13:32
modx.pro
5
2 351
+16

Увечиличаем скорость синхронизации 1С с minishop2 в 3-5 раз. mSklad/mSync

Не давно обнаружил что во время синхронизации с 1С, есть возможность указать 1С-ке: упаковать в архив все файлы выгрузки и отправить на сервер.

Из-за того что 1С отправляет import.xml, offers.xml и изображения по одному файлу, синхронизация с сайтом довольно надолго затягивается.

К примеру: если у вас 1000 изображений (а время на отправку изображения минимум 1-2 секунды) то нетрудно подсчитать что в итоге ваша загрузка займет минимум 16 минут, это только на отправку файлов на сервер не считая самой обработки файлов.

Эта небольшая доработка класса, скажет 1С отправлять файлы в архиве со всеми данными целиком.
После чего архив будет слаться частями (размер архива указывается в file_limit).
Допустим что интернет у нас слабенький и укажим чтобы часть архива была максимум 10мб.

Внимание!!! Этот метод использовался для синхронизации через mSklad, так что ваш класс может чем то отличатся. Не советую пробовать на боевом сайте.
Андрей Степаненко
01 апреля 2019, 13:45
modx.pro
6
1 907
+10

Как зашифровать компонент на основе 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.
Александр Туниеков
31 марта 2019, 08:36
modx.pro
3
1 020
0

1 плагин - 3 лайвхака

Всем привет, порой работа менеджеров в админке modx — сущий ад. Сегодня поступил заказ с просьбой решить несколько проблем.

Проблема №1:
В tinyMCE все изображения которые вставляются имеют атрибуты width и height, и не имеют нужных классов

Проблема №2:
При загрузки файлов в каталог, где уже есть такое имя, файлы переписывают друг друга, необходимо было сделать добавление префикса для файлов с одинаковым именем

Проблема №3:
Иногда менеджеры грузят неприлично большие изображения, что непосредственно влияет и на скорость загрузки страницы и на общий размер файлов

Что делает плагин:
  1. Транслитерация файлов при загрузке, добавление префикса если файл дублируется
  2. Уменьшает загружаемое изображение до 1200px по ширине
  3. Из поля content достает все img, вырезает у них атрибуты width и height, вместо них подставляет класс img-thumbnail
Под катом — код с комментариями.
Pavel Zarubin
26 ноября 2018, 17:42
modx.pro
38
4 663
+19

[miniShop2] Как тестировать письма без оформления заказа


Иногда приходится тестировать внешний вид писем, отсылаемых при оформлении заказа. Чтобы не оформлять постоянно заказ для просмотра внешнего вида, написал сниппет. Подробности под катом.
Павел Гвоздь
25 ноября 2018, 15:48
modx.pro
36
3 963
+13