Разделы

  
 

Random

Здравтвуйте! У меня такая ситуация: в одном чанке я использую 4 раза вот такой код
[!Ditto? &summarize=`1`  &startID=`1`   &randomize=`1` &depth=`6` &hideFolders=`1` &tpl=`randompost`!]

для того, чтобы выводить 4 случайные картинки. Но картинки всегда одинаковые. Поставить &summarize=`4` не подходит, так как я вызываю дитто в отдельной ячейке таблицы.

Можно ли перезапускать рандом перед каждым вызовом дитто?
  • 0
  • 31 января 2012, 17:33
  • B0Bka
  • 5

Случайные новости/статьи в MODx EVO

Приветствую всех. Отличное сообщество, много всего полезного.
Всем отличного дня и хорошего настроения.

Столкнулся с интересной для себя задачей.
На MODx перешел относительно недавно, и, имея хороший опыт работы с Вордпрессом, мне не хватает одной фишки. Как понятно из названия — это возможность сделать блок случайных новостей/статей.

К примеру на главной Ditto будет выводить новости, кругом меню, всё как полагается.
А в подвале, над копирайтами хочется сделать четыре столбца, в которых будут выводиться по 4-5 случайных ссылок на статьи (ссылка в виде обычного заголовка или же longtitle) из 4х разных категорий. Один столбец — для одной категории.

Начитавшись и в рунете и в буржуйском про Ditto, мол он один-то нагружает нехило — возможность использовать его я отбросил (хотя его &randomize — самое то)… Далее нашел здесь же неплохой сниппет MiniNews, но там нету случайного вывода, как я понял.

Кто-нибудь сталкивался с этим, есть ли решения?
Сразу скажу, что в php не силен (только минимум знаний, необходимых для верстки-натяжки). Поэтому если кто подскажет-подсобит — буду очень благодарен :)

Wayfinder random

Здравствуйте.Столкнулся с такой проблемой у меня есть несколько статей, но нужно выводить только 3 из них, при том постоянно разные.это не сложно делаю так:
[!Wayfinder? &sortBy=`random` &limit=`3`!] 

а сложность состоит в том чтобы выбранный элемент оставался видимым, при данном вызове идёт постоянная смена пунктов меню и поэтому при выборе пункта меню страница перезагружается и пункты меняются.
Вы не подскажите как можно этого избежать?
В общем суть: нужно сделать чтобы видимы были активное меню и 2 рандомных.
  • 0
  • 2 апреля 2011, 03:14
  • Actek
  • 6

вывод случайного опроса

В продолжение темы.

Теперь необходимо случайным образом выводить один из трех опросов на главной.

Создал три опроса в EasyPoll с id=1,2 и 3
Создал в папке с id=108 три страницы с вызовом опросов:
[!EasyPoll? &pollid=`1`!] — для первой, для второй соответтвенно &pollid=`2` и т.д.

В шаблоне главной вызываю ditto

[!Ditto? &id=`polls` &startID=`108` &display=`1` &tpl=`polls` &randomize=`1` &depth=`2` &extenders=`summary` &hideFolders=`1`!]

шаблон polls содержит:
[+summary+]

В итоге мне рандомно текстом выводится:
[!EasyPoll? &pollid=`1`!],
[!EasyPoll? &pollid=`2`!]
или [!EasyPoll? &pollid=`3`!]

Хотя по прямому адресу страницы с шаблоном я вижу, что он на ней отображается и работает.

Я из одного модуля другой вызвать не могу получается? или я что-то неправильно делаю?

Заранее спасибо за ответы

рандомный вывод статей

Задача — рандомно выводить статьи на главной.
Добавил в шаблон:

[[Ditto? id=`random` &startID=`94` &display=`1` &tpl=`polezno` &randomize=`1` &depth=`2` &extenders=`summary`]]

Проблема в том, что ditto выводит только одну статью из имеющихся трех. причем если я что-то правлю в этом шаблоне, сохраняюсь — выводит другую. если ничего не правлю — всегда выводит одну и ту же, ctrl+f5 не помогает.

Отсюда вопрос, в randomize как вообще работает? При каждом открытии страницы должен выводить случайный документ? Или один раз выбрал и выводит его?
  • +1
  • 17 декабря 2009, 21:43
  • seo_mosk
  • 2

Вывод случайных документов средствами DItto.

В голову приходит только такой способ, но он не реально кривой.

<?php
$results = $modx->getDocumentChildren($id = $rootID,$active = 1,$deleted = 0,'id',$where = '',$sort='',$dir='',$limit = '');
shuffle($results);
for($i=0;$i<$countItem;$i++){
  if($i==0){
   $s.= $results[$i]['id'];
  }else{
    $s.= ', '.$results[$i]['id'];
  }
}
echo $modx->runSnippet('Ditto', array('startID' => $rootID, 'documents'=>$s, 'tpl'=>$tpl' ));
?>


Вызов [!RandChildren? &rootID=`6` &countItem=`2` &tpl=`TPL_ROW_PARTNERS` !]
  • +2
  • 3 сентября 2009, 11:26
  • chus
  • 9