We launched new forums in March 2019—join us there. In a hurry for help with your website? Get Help Now!
    • 24704
    • 35 Posts
    Здравствуйте.
    Столкнулся с проблемой создания архива новостей с помощью Reflect-a. Информации в сети фактически нет. Возникли сложности с написанием параметров для вызова, т.к. не везде смог подобрать однозначный перевод параметра или комментария к нему. Быть может кто подскажет что я делаю неправильно, либо поможет примером.
    Мой вызов Reflect:
    [!Reflect? targetID=`5` &ditto_base=`/assets/snippets/ditto` &getDocuments=`1` &showItems=`1` &tplContainer=`tplCont` &tplItem=`Item` &config=`default` &getDocuments=`1`!]
    

    Страница кэшируемая.
    Темплы использованы стандартные, на всякий случай вот они:
    -tplCont
    <h3>Archives</h3>
    <div class="reflect_archive_list">
        [+archive_items+]
    </div>

    -Item
    <a href="[~[+id+]~]" title="[+pagetitle+]" class="reflect_item_link">[+pagetitle+]</a> (<span class="reflect_date">[+date+]</span>)
      • 23695
      • 230 Posts
      вот здесь есть построение архива http://ditto.modxcms.com/tutorials/wordpress-style-archives.html
        • 897
        • 1,620 Posts
        Вопрос вы задали правильно, подготовили тему основательно, только забыли указать с какой именно проблемой столкнулись
          "Und wenn du lange in einen Abgrund blickst, blickt der Abgrund auch in dich hinein."

          Не используйте Revo для "просто сайтов". Используйте Evo

          Who can defeat the Russian bear?
          • 24704
          • 35 Posts
          2 aleksei.stepanov: у меня прям из огня да в полымя - если не вопрос , то проблему не опишу laugh
          2 РоМеО:спасибо за источник!
          сижу теперь над тем чтобы названия месяцев были русскими, вроде где-то на форуме встречалось такое
            • 33694
            • 742 Posts
            > сижу теперь над тем чтобы названия месяцев были русскими, вроде где-то на форуме встречалось такое
            Ключевое слово «setlocale»
              • 24704
              • 35 Posts
              ключевое слово найдено =) разбираюсь, спасибо!
              разобрался! =)
                • 24704
                • 35 Posts
                завести завел reflect, только не под wordpress конфигом. но это не столь важно.
                сталкнулся с проблемой: когда сижу в режиме редактора всё работает как надо, но выйдя из режима обнаруживаю что не могу перейти на новости какого-либо месяца\года.
                может кто нибудь подсказать каким образом reflect зависит от режима?
                  • 31022
                  • 328 Posts
                  Здраствуйте!

                  Пытаюсь подключить Reflect к новостям Ditto. Пока, вроде, все работает; дело за руссификацией. Нашел на форуме это:
                  1. Руссификация дат в архиве.
                  При использовании первый раз сниппета Reflect с Ditto столкнулся с проблемой, даты отображались на английском. т.е. 12-Jan-2007 а надо было 12-Янв-2007. Решил проблему следующим образом. В файле ditto.class.inc.php в функции formatDate использую функцию setlocale(LC_TIME, "Russian_Russia.1251") (у меня локаль оказалась Russian_Russia.1251, могут быть ru_Ru.1251, ru_Ru.UTF8). Теперь даты стали отображаться в кодировке win-1251, но кодировка моего сайта UTF-8 и даты все равно отображались кракозябрами. К сожалению локали типа Russian_Russia.UTF8 нету и я использовал фунцию перевода из win-1251 в Utf8 функцию iconv("windows-1251","UTF-8",$dt); Теперь в функции появились такие строки:
                  setlocale(LC_TIME, "Russian_Russia.1251");
                  $dt = strftime($dateFormat, (intval($dateUnixTime) + $modx->config["server_offset_time"]));
                  $dt = iconv("windows-1251","UTF-8",$dt);
                  Отсюда: http://modxcms.com/forums/index.php/topic,18995.0.html


                  Где найти эту самую локаль? Перерыл phpinfo(), не приметил.
                    • 785
                    • 2,113 Posts
                    Имеющиеся локали проще всего определить перебором. Можно запустить простую программу, вроде этой:
                    <?php
                    $arr= array("ru_RU", "Russian_Russia", "ru_RU.UTF8", "ru_RU.UTF-8", "ru_RU.utf8", "Russian_Russia.UTF-8", "Russian_Russia.utf8", "ru_RU.utf-8", "Russian_Russia.utf-8", "Russian_Russia.UTF8", "ru_RU.1251", "Russian_Russia.1251", "ru_RU.CP-1251", "Russian_Russia.CP-1251", "ru_RU.CP1251", "Russian_Russia.CP1251", "ru_RU.cp-1251", "Russian_Russia.cp-1251", "ru_RU.cp1251", "Russian_Russia.cp1251", "ru_RU.KOI8-R", "ru_RU.KOI8-U", "ru_RU.CP866", "Russian_Russia.KOI8-R", "Russian_Russia.KOI8-U", "Russian_Russia.CP866");
                    echo "Default ".setlocale(LC_ALL, '')." (".strftime('%B')."), settting ";
                    foreach ($arr as $value){
                    if ($value==setlocale(LC_ALL, $value)){
                    echo $value." (".strftime('%B').") ";
                    }
                    }
                    ?>
                      Создание сайтов на MODx, поддержка сайтов, поисковая оптимизация, программирование, копирайтинг
                      Статьи о MODx, регулярно новые публикации
                      • 31022
                      • 328 Posts
                      Спасибо! Запустил, попробовал.На денвере и на хостинге получаются разные результаты. Это нормально (с).

                      Денвер:
                      Default Russian_Russia.1251 (Июнь), settting Russian_Russia.1251 (Июнь)

                      Хостинг:
                      Default C (June), settting ru_RU.UTF-8 (июня) ru_RU.CP1251 (����) ru_RU.KOI8-R (����) ru_RU.CP866 (���)

                      Попробую включить Reflect теперь.