Евгений Webinmd
С нами с 07 января 2013; Место в рейтинге пользователей: #23[textGenerator] Компонент для генерации текстов
Простенький компонент для автоматической генерации SEO-текстов методом перебора из шаблона вида:
Это {скрипт|плагин|сниппет} генерации {текстов|описаний|заголовков} {для сайта|для {оптимизации|SEO}}
[looked] Компонент "Вы смотрели"
Компонент looked для MODX revolution даёт возможность добавить на сайт блок с последними просмотренными страницами (товарами) пользователем.
Резервное копирование сайта на MODX в Google Диск
О необходимости резервного копирования сказано много. Мы в этой статье рассмотрим удобный и простой способ для серверов, настроенных по этой замечательной инструкции.
Итак, вводные данные:
Итак, вводные данные:
- Каждый сайт работает от своего пользователя;
- Все сайты находятся в /var/www/ ;
- Системное имя пользователя, имя пользователя БД и название БД совпадают.
- Создание zip архива всего сайта и sql дампа БД в ~/backup
- Подстановка даты в имя файлов
- [Опционально] Закачивание всех архивов в Google Drive и удаление с сервера
Разработка компонента для маркетинга
Ребята, мы начинаем разработку глобального компонента для маркетинга с кучей киллер-фич.
Из уже проработанных плюх:
С какими кейсами вы сталкиваетесь при работе? Какого функционала вам не хватает? Что можно сделать, что бы облегчить вашу тяжелую ношу?
Мы очень ждем ваших ответов и постараемся реализовать большинство хотелок!
Из уже проработанных плюх:
- Автогенерация sitemap и robots при установке компонента
- Интеграция с яндекс метрикой и целями
- Плагин для ускорения работы сайта (гуглспид > 90 ;))
- Проверка текстов на плагиат
- Проверка текстов на соответствие ключевым словам
- Авторедиректы страниц
- Более глубокий контроль ЧПУ
- В будущем интеграция с яндекс директом
- Интеграция с соцсетями
С какими кейсами вы сталкиваетесь при работе? Какого функционала вам не хватает? Что можно сделать, что бы облегчить вашу тяжелую ношу?
Мы очень ждем ваших ответов и постараемся реализовать большинство хотелок!
Дополнительные поля профиля юзера (не extended)
Разрабатываю проект, в котором необходимо было реализовать более простое редактирование дополнительных полей профиля, чем есть из коробки. К слову, неудобное редактирование — это не единственный минус нативного способа расширения профиля полями. Ни для кого не секрет, что фильтрацию по JSON полям нормально не осуществить, только костылями. Фактически, мне надо было получить решение, которое бы расширяло стандартный код MODX, не трогая исходники, дабы сохранить
Пришёл к выводу, что буду расширять стандартную вкладку профиля «Общая информация». При желании можно чуть переписать код в событии OnUserFormPrerender и создать свою вкладку со своими полями.
Делаем колбеки miniShop2 для всех
Всем привет! Так как в miniShop2 есть список колбеков для того, чтобы на определённые действия, совершаемые компонентом, можно было повесить свой код и, тем самым, дополнить работу магазина, то многие разработчики дополнений используют их в своём коде. Я уж не говорю о вебмастерах, которые используют этот инструмент для решения определённых нужд в своих сайтах.
Проблема в том, что код одного компонента, использующего, например miniShop2.Callbacks.Order.getcost, пересекается с другим кодом, другого компонента, использующего этот же колбек. Получается конфликт, который я для себя, в своих пакетах, решаю так:
В чём проблема?
В связи с этим получается проблема. Колбеков мало, а желающих воспользоваться ими — много. Я уже не раз сталкивался с тем, что некоторые компоненты из Modstore не могут работать вместе, т.к. используют одни и те же колбеки, на одних и тех же страницах.Проблема в том, что код одного компонента, использующего, например miniShop2.Callbacks.Order.getcost, пересекается с другим кодом, другого компонента, использующего этот же колбек. Получается конфликт, который я для себя, в своих пакетах, решаю так:
Вывод количества просмотров в списке статей
Нужно вывести в списке статей количество просмотров для каждой. На странице статьи отрабатывают сниппеты ticketComments и ticketMeta. Полагаю, что этого достаточно для подсчета количества просмотров статей. После добавления параметра select в шаблоне articlePreview перестают работать все плэйсхолдеры. Почему так происходит?
[[!pdoPage? &parents=`22`
&limit=`10`
&element=`pdoResources`
&loadModels=`tickets`
&showLog=`1`
&tpl=`articlePreview`
&where=`{"template:=":4}`
&leftJoin=`{"View": {"class":"TicketView","alias":"View","on":"modResource.id = View.parent"}}`
&select=`{"modResource": "*","View": "COUNT(View.parent) as views}"`]]
[UPDATE] Разные скидки в зависимости от общей суммы корзины
По следам записи Михаила Воеводского и этого объявления о работе был написан плагин для miniShop2, который позволяет выставить скидку в процентах для всей корзины в зависимости от общей суммы корзины.
Скидка выставляется пошагово: по достижении определённых сумм применяется своя скидка. К примеру, корзина стоит 100кр — скидка 10%, 150кр — 15%. При желании можно выставить сколько угодно шагов и какой угодно процент. Данные указываются массивом в самом начале плагина, вот так:
Скидка выставляется пошагово: по достижении определённых сумм применяется своя скидка. К примеру, корзина стоит 100кр — скидка 10%, 150кр — 15%. При желании можно выставить сколько угодно шагов и какой угодно процент. Данные указываются массивом в самом начале плагина, вот так:
$discounts = array(
'100000' => '10%',
'150000' => '15%',
'200000' => '20%',
);
Часть кода была взята из компонента msPromoCode, в частности для того, чтобы цены на товары в корзине обновлялись динамически при смене кол-ва или удалении товара из корзины.Уведомления с MODx в Telegram
Всем привет. Это не совсем готовое дополнение, скорее инструкция. Может быть кто нибудь разовьёт и соберёт пакет.
У меня небольшой контентный проект и надо было быть оперативно в курсе, что там журналисты публикуют.
Такое извещение можно повесить на заказ обратного звонка, заказ товара или какие нибудь другие события о которых я не подумал :)
У меня небольшой контентный проект и надо было быть оперативно в курсе, что там журналисты публикуют.
Такое извещение можно повесить на заказ обратного звонка, заказ товара или какие нибудь другие события о которых я не подумал :)