Приветь! Нужен решения для вывода id текущего документа только для указанных категорий. Хотел сделать разные титле для новостей.
LowContext
Можете показать пример
Примеров может быть куча, но у каждого своя реализация проекта. Элементарно какая версия MODX-а? Используется modxSmarty или нет и т.д. и т.п. Но ваш вопрос - это вообще простейшие основы MODX-а. Если такие вопросы вас толкают на то, чтобы писать топики, что вы дальше будете делать? Изучайте основы php и MODX. P.S. простейший пример: if(in_array($modx->resource->parent, array(2,5,8,15,))){
// ........
}
Прежде чем задавать вопрос я ищу варианты. Вот мой код $id = $modx->resource->get('id');
$ids = $modx->getChildIds($id,2);
if ($id == $sitesatrt) {
return 'yes';
}
elseif(!empty($ids)) {
return 'no'
} :D
Во-первых, вы спрашивали про вывод id в определенных категориях, а значит вам родители нужны, а не дочерние документы. Во-вторых, ваш код совсем не оптимальный, ведь если $id == $sitesatrt, то дальше вообще все не важно, и нафига вообще тогда перебирать дочерние документы. Более правильно так: $id = $modx->resource->get('id');
if ($id == $sitesatrt){
return 'yes';
}
// else
if($ids = $modx->getChildIds($id,2)){
return 'no';
}
// some return?
Наверно я не могу ясно сказать что мне нужен. Тематика сайта спортивный ест 4 категорий 1 Превью к матчу 2 Предматчевая пресс-конференция 3 Послематчевая пресс-конференция 4 Цифры и факты Когда заполнял у всех бил одинаковые title после seo анализа ошибки били 30 что Примеру
[[++site_start]]
:then=[[++site_name:htmlent]]
:else=[[*pagetitle]] / [[++site_name]]
]] Потом решил сделать разные титле для каждой дочерних новостей категории Примеру&subject=1,2,3,4
&operator=inarray
&operand=1,2,3,4
&then=to
&else=neto
]] Код работал только для указанных категориях после этого сформулировал свой код но он работал.
Ваш пример работает с кодом
[[!If?
&subject=[[!title]]
&operator=empty
&operand=[[!title]]
&then=neto
&else=to
]] Спасибо
Не знаю, может кто и подскажет со всякими этими модификаторами и т.п., но мы давно уже такие технологии не практикуем и не пропагандируем. Это все устаревшее и не эффективное. А &operator=inarray
вообще вряд ли пройдет.
Мы работаем с phpTemplates и modxSmarty.
phpTemplates и modxSmarty для меня тёмный лес. Пока я новичок
А вот это думаете легче? [[!If?
&subject=[[!title]]
&operator=empty
&operand=[[!title]]
&then=neto
&else=to
]] Но каждый выбирает для себя свою дорогу сам.
Николай. Читаю комменты, смотрю решения, что приводят люди, смотрю те вопросы, которые задаются и решил написать свое мнение по некоторым вещам. 1. Раз люди комментируют твой модуль - значит он действительно интересен и есть смысл его использовать. 2. Если люди задают вопросы - значит есть непонятные вещи и может быть можно подумать и начать серию уроков по modxSmarty и phpTemplates? Хотя бы совершенно базовые основы. Ведь не боги же горшки обжигают... Все хотят что-то сделать. Разница лишь в том, что кто-то хочет брать, копипастить и не развиваться. А кому-то твои уроки по этим базовым вещам могут очень даже помочь в развитии. 3. Ну и крайнее. Если есть площадка, где люди пишут и делятся своими трудностями, а ты дал такую возможность на сайте - хотелось бы не видеть в ответах раздражительность и негодование тем, что кто-то не понимает простые вещи.
Извиняюсь, но всем мил не будешь. И я не буду пытаться быть для всех милым. Да, площадка открытая, и сюда может попасть любой. Но это не означает, что здесь всем рады и готовы отвечать на любые вопросы. Извиняюсь за прямоту, но это так. Для простых вопросов начального уровня, и тем более по старым технологиям - это на modx.im или типа того. Уточню еще раз: мы учим самым основам. Основы != Простое. Основы - это xPDO и т.п., это то, что освоив, программист потом может многое сделать сам. Я не учу как вывести id, потом как вывести content, потом как вывести pagetitle и т.п. (в modResource довольно много полей). Я учу как выводить параметры объектов в принципе. Я не учу передаваемым параметрам типа &operator=empty
, &operand=[[!title]]
, потому что модулей к MODX-у полно, и у каждого свои параметры. Я учу формировать xPDO-запросы, потому что это основа, и это раз и навсегда. Резюме: на этом сайте очень много учебного материала, но мало кто его читает и осваивает. Вместо этого приходят с одними и теми же вопросами (не всегда, но часто). Поэтому писать еще больше отдельного, в какой-то особенной форме учебного материала - нет смысла. Во-первых, читать от этого больше не станут, а во-вторых, очень много индивидуальных ситуаций, так что формат вопрос-ответ - он часто практичней получается. И еще: я не раз говорил, что у Ильи очень хорошие уроки по xPDO, но и их что-то народ не особо читает. Замечены единицы тех, кто в xPDO боле менее ориентируется. И, лучше такие темы отдельными топиками поднимать, а то много оффтопа сейчас будет.
Согласен. Я согласен, что материала полно. Но, как уже и говорил выше, люди часто хотят готовые решения. Скопировал - вставил. Все! И Это НЕПРАВИЛЬНО!!! Смысла в этом никакого. Так что я с тобой полностью солидарен. Но, тем не менее, какого-то учебного материала по modxsmarty, оформленного в удобном виде - все-таки не хватает. Да и поиска по сайту я как-то не вижу И еще, по поводу Ильи. Тут тоже все правильно. И, кстати говоря, терпения отвечать на простые вопросы, у него с избытком :) Спасибо и ему, и тебе, и вашей команде.
Но, тем не менее, какого-то учебного материала по modxsmarty, оформленного в удобном виде - все-таки не хватает. По modxSmarty материала и не должно быть, потому что это Smarty, а по Smarty полно инфы на оффсайте, даже на русском. Все! И Это НЕПРАВИЛЬНО!!! Смысла в этом никакого. Это не неправильно, а как есть, и это надо понимать. Я с этим не борюсь, я просто в этом не участвую, вот и все. Кто хочет копипастить - пусть этим занимаются, но площадки для общения им лучше другие выбирать. Не за что.