© Сделано на LiveStreet
Дизайн - ©2009 MODx RED Group
//<?php
/**
* custom Template
*
* Newly created Resources use the template configured in plugin
*
* @category plugin
* @version 0.1
* @author Dmi3yy (dmi3yy@gmail.com)
* @internal @properties &customTemplates=customTemplates;text;100,101|102,103
* @internal @events OnDocFormPrerender
* @internal @modx_category Manager and Admin
*/
/*
* custom Template
*
* Written By Dmi3yy - 13 Sep 2011
*
*
* Configuration:
* check the OnDocFormPrerender event
* add properties &customTemplates=customTemplates;text;100,101|102,103
* Version 0.1
*
*/
global $content;
$e = &$modx->Event;
$cusTemp=explode('|',$customTemplates);
switch($e->name) {
case 'OnDocFormPrerender':
if ($parent = $modx->getPageInfo($_REQUEST['pid'],0,'template')) {
foreach ($cusTemp as $value) {
$tpl=explode(',',$value);
if ($parent['template'] == $tpl[0]){ $content['template'] = $tpl[1];}
}
}
break;
default:
break;
}
Комментарии (16)
RSS свернуть / развернутьТяжко смотреть на советы про «каталог товаров» в виде ресурсов. Используйте свои таблицы и компоненты к ним. Сколько можно изобретать велосипеды?
MODX очень хорош и позволяет все, но не нужно зацикливаться на `modx_site_content`.
bezumkin
Проекты бывают разные.
Потому для одних хорошо EVO и дерево документов а для других хорошо REVO и выделенный сервер.
А велосипеды это хорошо, так как все с них начиналось.
тут главное знать меру и делать качественно.
Я готов выразить всем кто постил свои велосипеды большую благодарность! так как они помогают повысить уровень знаний :)
Dmi3y
У меня в личку по 10 писем на день идёт.
Приведу два последних, не буду тыкать пальцем, кто узнает, не в обиду (никто не знает)
++++++++++++++++++
Ещё не удержусь,
Это человек не знал, просто доступ дал, Babel настроить, открыл я файл robots.txt — а там.
…
valikras
Dmi3y
valikras
Leadmonkey
Для хранения и вывода данных нужно создать таблицу в БД, и компонент в админке — для управления. А в ресурсе собственным сниппетов вывести свой каталог товаров.
community.modx-cms.ru/blog/addons/2222.html
Шаблоны и Tv параметры вообще не должны использоваться для этого.
bezumkin
jabber
Leadmonkey
тоже довольно удобное решение, но работает немного по другому :)
так что как по мне и 1 и 2 варианты жизнеспособны
Dmi3y
У меня такая структура:
-Регулярные модели: (id необходимого шаблона 3)
--Сакура (id необходимого шаблона 4)
-Коллекции: (неопубликованный документ, любой шаблон)
--Сакура: (id необходимого шаблона 6)
---Модели номер 1 2 3: (id необходимого шаблона 5)
----Модель 1 (id необходимого шаблона 7)
----Модель 2 (id необходимого шаблона 7)
----Модель 3 (id необходимого шаблона 7)
Karandash
ну и по умолчанию поставить шаблон 6(что б в любом документе сразу же ставился 6)
единственное ещё прописать к остальным шаблонам зависимости,
если учитывать что 6 по умолчанию
Dmi3y
Karandash
Что я поменял — теперь привязка идет не к шаблоку родителя, а к его Id. ну и строчка теперь настройки имеет логику:
ID Папки родителя, Номер шаблона Документа дочки|ID Папки родителя, Номер шаблона Документа дочки
Может кому понадобится.
jean179
вместо
родитель — дочка
получилось
родитель(id) — дочка?
Dmi3y
Я сделал ID Родителя, Шаблон дочки
Именно для каталога: вывод в ленту карточек каталога используется шаблон 1. Он одинаковый для всех разделов. А вот в карточках используется разные шаблоны. Разница в TV полях. У меня такая была задача, разбить в выводе карточки данные так, что бы редактор забивал поля. А все лишнее скрыть от глаз редактора.
И стояла именно задача для дочек настроить выбор шаблон для карточек в разделах.
Ваш шаблон по умолчанию выводил шаблон родителя (что было очень плохо!), но ставил соседний шаблон где было (что было просто отлично!). Я крутил настройки и так и этак, но ничего не получалось.Настройки связки шаблон-шаблон мне было бесполезно. Вот я и перешел на ID — шаблон.
Вот поэтому я разобрался (ну мне так кажется :) ) в вашем коде и поправил под задачу. А решение выложил. Возможно кому-нибудь потребуется такое решение. Или вас натолкнет на идею и вы допишете плагин и вставите возможность штатной настройки выбора того или иного вывода.
В любом случае спасибо за этот отилчный плагин!
jean179
Только зарегистрированные и авторизованные пользователи могут оставлять комментарии.