Виталий Серый
С нами с 17 января 2013; Место в рейтинге пользователей: #107Кастомизация админки Modx
Добрый день, форумчане! У меня вопрос к вам такой, кто занимался реально кастомизацией админки в modx revo. В частности интересует редактирование форм отвечающих за компонент MiniShop2. В форме заказов добавить новые поля, которые бы подгружались бы в базу, а также выводились бы в контенте сайта, через плейсхолдеры. Спасибо за ответы, если кто даст грамотный ответ.
Ограничение доступа в админку по IP и дням недели
Это никак не отражено в документации, но любому пользователю можно ограничить авторизацию по IP и дням недели. Работает это c помощью настроек пользователя. Далее краткая инструкция (я использую MODX 2.3, поэтому в версии 2.2 пути могут отличаться):
1) Заходим в пункт меню Управление -> Пользователи.
2) Выбираем нужного пользователя правой кнопкой и жмем «Редактировать».
3) Переходим на вкладку «Настройки» и жмем кнопку «Создать новый».
4) В появившемся окне называем ключ allowed_ip — это будет настройка ограничения по IP. Имя можно выбрать любое. В поле значение записываем IP через запятую, например, «192.168.0.1,127.0.0.1». Сохраняем.
5) Аналогично настройка по дням. Ключ называем allowed_days. Значение — это номера дней через запятую от 1 (воскресенье) до 7 (суббота). Например, строка «2,3,4,5,6» ограничит доступ в админку только рабочими днями.
1) Заходим в пункт меню Управление -> Пользователи.
2) Выбираем нужного пользователя правой кнопкой и жмем «Редактировать».
3) Переходим на вкладку «Настройки» и жмем кнопку «Создать новый».
4) В появившемся окне называем ключ allowed_ip — это будет настройка ограничения по IP. Имя можно выбрать любое. В поле значение записываем IP через запятую, например, «192.168.0.1,127.0.0.1». Сохраняем.
5) Аналогично настройка по дням. Ключ называем allowed_days. Значение — это номера дней через запятую от 1 (воскресенье) до 7 (суббота). Например, строка «2,3,4,5,6» ограничит доступ в админку только рабочими днями.
mSearch не ищет по стандартным tv (не ms2)
Не так давно, я столкнулся с тем что mSearch выводит в результатах тв только у первого найденного элемента.
Решение это проблемы подсказали заменой части кода сниппета от 78 строки и до конца, этим куском
Решение это проблемы подсказали заменой части кода сниппета от 78 строки и до конца, этим куском
Сниппет Yandex-Карта со своими иконками-маркерами + возможность по клику отключать определённые типы гео-объектов
Сниппет устарел.
Его Вам заменит компонент YandexMaps:
Топик — modx.pro/components/5033-yandexmaps-1-0-create-objects-from-resources-on-yandex-maps/
Скачать на модсторе — modstore.pro/packages/other/yandexmaps
Его Вам заменит компонент YandexMaps:
Топик — modx.pro/components/5033-yandexmaps-1-0-create-objects-from-resources-on-yandex-maps/
Скачать на модсторе — modstore.pro/packages/other/yandexmaps
Ошибка ext-all.js line 21 в firefox и chrome
Захожу сегодня в админку а она виснит, выдаёт ошибку
Админка работает нормально теперь только в экплорере :)
Версия MODX Revolution 2.3.2-pl
Сжатие css и js отключено.
Хостинг hosthator.com
php 5.3
Может быть кто нибудь сталкивался с подобным?
/manager/assets/ext3/ext-all.js line 21 > Function:1
Где то месяц назад стал виснуть хром, так и не выяснив почему я перешёл на фф, сейчас и он заглючил. Админка работает нормально теперь только в экплорере :)
Версия MODX Revolution 2.3.2-pl
Сжатие css и js отключено.
Хостинг hosthator.com
php 5.3
Может быть кто нибудь сталкивался с подобным?
[pdoTools] 1.9.6-rc Ajax пагинация в pdoPage
Предлагаю вам обновление pdoTools с одной очень интересной функцией — возможностью работы pdoPage через ajax.
С этого момент pdoPage может выдавать JSON и прерывать работу движка при соответствии запроса трём характеристикам:
На этом сайте и на bezumkin.ru все страницы с пагинацией уже переведены на работу через ajax — можно тестировать, а под катом вас ждёт готовый код для внедрения у себя.
С этого момент pdoPage может выдавать JSON и прерывать работу движка при соответствии запроса трём характеристикам:
- Запрос сделан при помощи XMLHttpRequest, то есть — ajax.
- В запросе содержится переменная, указанная у сниппета в &pageVarKey. По умолчанию, это page.
- У сниппета включен параметр &ajax=`1`.
$.get('document.html?page=5', function(response) {
console.log(response);
}, 'json');
И в ответ вы получите JSON c результатами работы, пагинацией и служебными данными: номер страницы, сколько всего страниц и сколько всего результатов.На этом сайте и на bezumkin.ru все страницы с пагинацией уже переведены на работу через ajax — можно тестировать, а под катом вас ждёт готовый код для внедрения у себя.
Организация разработки с phpstorm
Доброго дня!
Есть, к примеру, корпоративный сайт, требующий постоянных доработок, поддержки и т п.
Хотелось бы осуществлять это без лишних движений.
Допустим, разворачиваю локально копию боевого проекта.
phpstorm, как я понимаю, может синхронизировать с удаленным сервером как файлы, так и БД.
Значит, по-идее, работая с админкой локально, а затем синхронизируя БД, я получаю то же самое на удаленном сервере.
Про css, изображения, javascript молчу, с ними все ясно.
Нормальна ли такая схема?
С уважением.
Есть, к примеру, корпоративный сайт, требующий постоянных доработок, поддержки и т п.
Хотелось бы осуществлять это без лишних движений.
Допустим, разворачиваю локально копию боевого проекта.
phpstorm, как я понимаю, может синхронизировать с удаленным сервером как файлы, так и БД.
Значит, по-идее, работая с админкой локально, а затем синхронизируя БД, я получаю то же самое на удаленном сервере.
Про css, изображения, javascript молчу, с ними все ясно.
Нормальна ли такая схема?
С уважением.
Динамическое обновление основной корзины
У MS2 есть хорошая вещь как возможность расширения класса msCartHandler. Все обновленные данные берутся $miniShop2->cart->status() и отсюда следует что нужно в этот массив данных дописать нужные нам данные, а именно список товаров которые попадут в [[+goods]]
И так начнем «колдовать»!
И так начнем «колдовать»!
Хлебные крошки в админке MODX
<?php
if ($modx->event->name == 'OnDocFormPrerender') {
if (!$id = $modx->controller->resourceArray['id']) {
return;
}
$resources = array();
foreach ($modx->getParentIds($id, 10, array('context' => 'web')) as $parentId) {
if ($parentId) array_push($resources, $parentId);
}
natsort($resources);
$resources[] = $id;
$setting = $modx->getObject('modSystemSetting', 'settings_version');
$version = explode('.',$setting->get('value'));
$url = MODX_MANAGER_URL.'/manager/index.php?a=30&id=';
if($version[1]==3){
$url = MODX_MANAGER_URL.'?a=resource/update&id=';
}
$level = 0;
$childTemplates = '<a style="color: #333;" href="'.MODX_MANAGER_URL.'">Панель</a> <span style="color: #333;">|</span> ';
foreach ($resources as $resourceId) {
$resource = $modx->getObject('modResource', $resourceId);
if ($resourceId == $id) {
$childTemplates .= '<span style="color: #333;">'.$resource->get('pagetitle').'</span>';
} else {
$childTemplates .= '<a style="color: #333;" href="'.$url.$resource->get('id').'">'.$resource->get('pagetitle').'</a> <span style="color: #333;">|</span> ';
}
$level++;
}
$modx->controller->addHtml('
<script>'."
Ext.onReady(function() {
var title = Ext.select('#modx-resource-header');
var pagetitle = Ext.select('#modx-resource-pagetitle');
title.createChild('<p style=\"padding-bottom: 15px;\">$childTemplates</p>');
pagetitle.on('keyup', function(){
title.createChild('<p style=\"padding-bottom: 15px;\">$childTemplates</p>');
});
});
</script>
".'</script>');
return;
}
Update
(15.10.2014) — Добавлена генерация url в зависимости от версии cms.
Исходный код: github.com/tanaevr/BreadCrumbsManager