Николай
С нами с 06 марта 2013; Место в рейтинге пользователей: #94Хлебные крошки в админке 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
Механизм ajax в MiniShop2
Добрый день! У меня вопрос такой к вам профессионалы, как реализуется все же механизм динамического обновления данных в MiniShop2? Изучая стандартные чанки, я заметил что они оборачиваются в определенные блоки. Например, для того чтобы динамически обновлялась общая стоимость покупок при изменении корзины делают так:
<span class="ms2_total_cost">[[+total_cost]]</span>
. И таким образом делаются аналогично другие поля. Где эта прописана логика, что делают контент динамичным? И пробовал я вывести общую стоимость конкретного товара в корзине, но обновления не происходило по той причине, что он не был обернут в блок. Где это можно допилить? Что-то типа такого чтобы получалось <span class="ms2_good_cost">[[+cost]]</span>
. Кто подскажет?) pdoCrumbs Разметка с помощью microdata
Разметка «хлебных крошек» с помощью microdata
Стандартный шаблон pdoCrumbs работает без микродатой чтоб исправит эту надо добавит в шаблон этот код
Обновил код теперь он валидный на w3
Стандартный шаблон pdoCrumbs работает без микродатой чтоб исправит эту надо добавит в шаблон этот код
[[pdoCrumbs? &showAtHome=`0`&showHome=`1` &outputSeparator=``
&tplCurrent=`@INLINE <li><span>[[+menutitle]]</span></li>`
&tpl=`@INLINE <li itemtype="http://data-vocabulary.org/Breadcrumb" itemscope><a href="[[+link]]" itemprop="url" ><span itemprop="title">[[+menutitle]]</span></a><span> / </span></li>`
&tplWrapper=`@INLINE <ul class="breadcrumbs">[[+output]]</ul>`
]]
css.breadcrumbs {float:left; padding:0; margin:0; border:0;}
.breadcrumbs li {display: inline-table;}
Проверит разметкуОбновил код теперь он валидный на w3
Наложение watermark в ms2Gallery
Часто спрашивают, а как сделать наложение водяных знаков на изображения, загружаемые через ms2Gallery?
Понятно, что работа идёт через PhpThumb, понятно какие ему нужно задавать параметры, но что именно нужно настроить на сайте, чтобы одно изображение накладывалось на другое?
Понятно, что работа идёт через PhpThumb, понятно какие ему нужно задавать параметры, но что именно нужно настроить на сайте, чтобы одно изображение накладывалось на другое?
Как начать участвовать в Open Source
Какое-то время назад я считал, что порог вхождения в OpenSource-разработку очень высок — ведь надо использовать git, отправлять пулл-реквесты. Это было чем-то незнакомым, далеким и останавливало меня. Тем более, что весь github.com на английском и многие слова и, соответственно, функции непонятны.
Однако сейчас я понимаю, как ошибался. Надеюсь, что после этой статьи вы согласитесь со мной и начнете вносить свой вклад в сообщество Open Source (и сообщество MODX в частности). Предлагаю на примере разобрать, как помочь разработчикам радовать нас дополнениями и уроками.
Однако сейчас я понимаю, как ошибался. Надеюсь, что после этой статьи вы согласитесь со мной и начнете вносить свой вклад в сообщество Open Source (и сообщество MODX в частности). Предлагаю на примере разобрать, как помочь разработчикам радовать нас дополнениями и уроками.
[РЕШЕНО] Пытаюсь создать плагин в miniShop2
Борюсь с плагином. Решил попаразитировать на поле popular.
Делаю по инструкции. Однако, хочу, чтобы это поле управлялось комбобоксом, потому как значений 3.
Создал необходимые файлы, разложил по папкам. В форме появился комбобокс с нужными значениями. Выбираю, сохраняю, всё вроде нормально. Перезагружаю форму редактирования и упс — значение этого комбобокса всегда становится равным 1. Такое ощущение, что это true, но почему, блин, тру-то? Что ж не так?! Прямо в расстройстве сижу.
Делаю по инструкции. Однако, хочу, чтобы это поле управлялось комбобоксом, потому как значений 3.
Создал необходимые файлы, разложил по папкам. В форме появился комбобокс с нужными значениями. Выбираю, сохраняю, всё вроде нормально. Перезагружаю форму редактирования и упс — значение этого комбобокса всегда становится равным 1. Такое ощущение, что это true, но почему, блин, тру-то? Что ж не так?! Прямо в расстройстве сижу.
Сервер: резервное копирование и выгрузка в Dropbox
Первым делом всегда-всегда-всегда нужно заботиться о резервной копии. Вариантов огромное множество, но лично я написал для себя простой и понятный скрипт для ежесуточного запаковывания данных с любого сервера, в том числе и shared-хостинга.