TITAN-UZ 13 сентября 2014 0 13
-1
Приветь!

Нужен решения для вывода id текущего документа только для указанных категорий.

Хотел сделать разные титле для новостей.
13 комментариев
Fi1osof1
Fi1osof 13 сентября 2014г в 19:24 #
LowContext
T
TITAN-UZ 13 сентября 2014г в 19:33 #
Можете показать пример
Fi1osof1
Fi1osof 13 сентября 2014г в 19:36 #
Примеров может быть куча, но у каждого своя реализация проекта. Элементарно какая версия MODX-а? Используется modxSmarty или нет и т.д. и т.п.
Но ваш вопрос - это вообще простейшие основы MODX-а. Если такие вопросы вас толкают на то, чтобы писать топики, что вы дальше будете делать? Изучайте основы php и MODX.

P.S. простейший пример:
if(in_array($modx->resource->parent, array(2,5,8,15,))){
// ........
}
T
TITAN-UZ 14 сентября 2014г в 14:55 #
Прежде чем задавать вопрос я ищу варианты.
Вот мой код

$id = $modx->resource->get('id');
$ids = $modx->getChildIds($id,2);

if ($id == $sitesatrt) {
return 'yes';
}
elseif(!empty($ids)) {
return 'no'
}

:D
Fi1osof1
Fi1osof 14 сентября 2014г в 15:28 #
Во-первых, вы спрашивали про вывод id в определенных категориях, а значит вам родители нужны, а не дочерние документы.

Во-вторых, ваш код совсем не оптимальный, ведь если $id == $sitesatrt, то дальше вообще все не важно, и нафига вообще тогда перебирать дочерние документы. Более правильно так:
$id = $modx->resource->get('id');
if ($id == $sitesatrt){
return 'yes';
}
// else
if($ids = $modx->getChildIds($id,2)){
return 'no';
}
// some return?
T
TITAN-UZ 14 сентября 2014г в 16:49 #
Наверно я не могу ясно сказать что мне нужен.

Тематика сайта спортивный ест 4 категорий
1 Превью к матчу
2 Предматчевая пресс-конференция
3 Послематчевая пресс-конференция
4 Цифры и факты

Когда заполнял у всех бил одинаковые title после seo анализа ошибки били 30 что

Примеру
1) Манчестер юнайтед - Арсенал
4) Манчестер юнайтед - Арсенал

Использовал этот код
[[*id:is=`[[++site_start]]`:then=`[[++site_name:htmlent]]`:else=`[[*pagetitle]] / [[++site_name]]`]]


Потом решил сделать разные титле для каждой дочерних новостей категории

Примеру
1) Превью к матчу: Манчестер юнайтед - Арсенал
4) Цифры и факты: Манчестер юнайтед 8 - 2 Арсенал

Через Phx не смог сделать и установил плагин if с кодом


[[!If?
&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`
]]

Спасибо
Fi1osof1
Fi1osof 14 сентября 2014г в 16:57 #
Не знаю, может кто и подскажет со всякими этими модификаторами и т.п., но мы давно уже такие технологии не практикуем и не пропагандируем. Это все устаревшее и не эффективное. А &operator=`inarray` вообще вряд ли пройдет.
Мы работаем с phpTemplates и modxSmarty.

T
TITAN-UZ 14 сентября 2014г в 17:11 #
phpTemplates и modxSmarty для меня тёмный лес. Пока я новичок
Fi1osof1
Fi1osof 14 сентября 2014г в 17:28 #
А вот это думаете легче?
[[!If?
&subject=`[[!title]]`
&operator=`empty`
&operand=`[[!title]]`
&then=`neto`
&else=`to`
]]

Но каждый выбирает для себя свою дорогу сам.
stager1
stager 16 сентября 2014г в 16:57 #
Николай.

Читаю комменты, смотрю решения, что приводят люди, смотрю те вопросы, которые задаются и решил написать свое мнение по некоторым вещам.

1. Раз люди комментируют твой модуль - значит он действительно интересен и есть смысл его использовать.

2. Если люди задают вопросы - значит есть непонятные вещи и может быть можно подумать и начать серию уроков по modxSmarty и phpTemplates? Хотя бы совершенно базовые основы.
Ведь не боги же горшки обжигают... Все хотят что-то сделать. Разница лишь в том, что кто-то хочет брать, копипастить и не развиваться. А кому-то твои уроки по этим базовым вещам могут очень даже помочь в развитии.

3. Ну и крайнее. Если есть площадка, где люди пишут и делятся своими трудностями, а ты дал такую возможность на сайте - хотелось бы не видеть в ответах раздражительность и негодование тем, что кто-то не понимает простые вещи.
Fi1osof1
Fi1osof 16 сентября 2014г в 17:15 #
Извиняюсь, но всем мил не будешь. И я не буду пытаться быть для всех милым. Да, площадка открытая, и сюда может попасть любой. Но это не означает, что здесь всем рады и готовы отвечать на любые вопросы. Извиняюсь за прямоту, но это так. Для простых вопросов начального уровня, и тем более по старым технологиям - это на modx.im или типа того.

Уточню еще раз: мы учим самым основам. Основы != Простое. Основы - это xPDO и т.п., это то, что освоив, программист потом может многое сделать сам. Я не учу как вывести id, потом как вывести content, потом как вывести pagetitle и т.п. (в modResource довольно много полей). Я учу как выводить параметры объектов в принципе. Я не учу передаваемым параметрам типа &operator=`empty`, &operand=`[[!title]]`, потому что модулей к MODX-у полно, и у каждого свои параметры. Я учу формировать xPDO-запросы, потому что это основа, и это раз и навсегда.

Резюме: на этом сайте очень много учебного материала, но мало кто его читает и осваивает. Вместо этого приходят с одними и теми же вопросами (не всегда, но часто). Поэтому писать еще больше отдельного, в какой-то особенной форме учебного материала - нет смысла. Во-первых, читать от этого больше не станут, а во-вторых, очень много индивидуальных ситуаций, так что формат вопрос-ответ - он часто практичней получается.

И еще: я не раз говорил, что у Ильи очень хорошие уроки по xPDO, но и их что-то народ не особо читает. Замечены единицы тех, кто в xPDO боле менее ориентируется.

И, лучше такие темы отдельными топиками поднимать, а то много оффтопа сейчас будет.
stager1
stager 16 сентября 2014г в 17:22 #
Согласен.
Я согласен, что материала полно. Но, как уже и говорил выше, люди часто хотят готовые решения. Скопировал - вставил. Все! И Это НЕПРАВИЛЬНО!!! Смысла в этом никакого.
Так что я с тобой полностью солидарен.
Но, тем не менее, какого-то учебного материала по modxsmarty, оформленного в удобном виде - все-таки не хватает. Да и поиска по сайту я как-то не вижу
И еще, по поводу Ильи. Тут тоже все правильно. И, кстати говоря, терпения отвечать на простые вопросы, у него с избытком :)
Спасибо и ему, и тебе, и вашей команде.
Fi1osof1
Fi1osof 16 сентября 2014г в 17:29 #
Но, тем не менее, какого-то учебного материала по modxsmarty, оформленного в удобном виде - все-таки не хватает.

По modxSmarty материала и не должно быть, потому что это Smarty, а по Smarty полно инфы на оффсайте, даже на русском.

Все! И Это НЕПРАВИЛЬНО!!! Смысла в этом никакого.

Это не неправильно, а как есть, и это надо понимать. Я с этим не борюсь, я просто в этом не участвую, вот и все. Кто хочет копипастить - пусть этим занимаются, но площадки для общения им лучше другие выбирать.

Не за что.
Авторизуйтесь или зарегистрируйтесь (можно через соцсети ), чтобы оставлять комментарии.