We launched new forums in March 2019—join us there. In a hurry for help with your website? Get Help Now!
    • 6348
    • 90 Posts
    1. Как в сниппет добавить код из php ф-ла (ф-я require_once не работает)
    2. как в php ф-ле запусить сниппет (пробовал через $modx->runSnippet(бла-бла), но надо еще как-то порубить интерпритатор)
      • 785
      • 2,113 Posts
      Quote from: daima at Nov 05, 2010, 11:30 AM

      ф-я require_once не работает
      А слабо посмотреть, как у других работает (в том числе в стандартных сниппетах)?
        Создание сайтов на MODx, поддержка сайтов, поисковая оптимизация, программирование, копирайтинг
        Статьи о MODx, регулярно новые публикации
        • 16111
        • 101 Posts
        1) Всё работает;
        2) Создайте экземпляр класса DocumentParser.
          Basic Manager
          Хочешь ускорить развитие Basic Manager? Хочешь создавать невероятно красивые фотогалереи и слайдшоу за 1 клик? Пожертвуй деньги на развитие плагина, WMR: R148348561691. Помни, что даже 50 рублей являются стимуляцией к разработке.

          Я в контакте
          • 785
          • 2,113 Posts
          Quote from: kobezzza at Nov 05, 2010, 01:09 PM

          2) Создайте экземпляр класса DocumentParser.
          В действительности в изначальном вопросе многое не указано, так что вариантов слишком много. Если, например, надо вызвать сниппет в файле, загруженном из другого сниппета, все намного проще…
            Создание сайтов на MODx, поддержка сайтов, поисковая оптимизация, программирование, копирайтинг
            Статьи о MODx, регулярно новые публикации
            • 6348
            • 90 Posts
            Quote from: AKots at Nov 05, 2010, 01:08 PM

            Quote from: daima at Nov 05, 2010, 11:30 AM

            ф-я require_once не работает
            А слабо посмотреть, как у других работает (в том числе в стандартных сниппетах)?
            Ворчать будем на другом форуме

            2) Создайте экземпляр класса DocumentParser.
            1) да, работает)) Продолжим ковырять))
            2) В ООП не шарю, увы ((( Как?

            В действительности в изначальном вопросе многое не указано, так что вариантов слишком много. Если, например, надо вызвать сниппет в файле, загруженном из другого сниппета, все намного проще…
            1. <a href="trailer.php?trailer=trailer30"> В этом ф-ле trailer.php мне нужно обратиться к сниппету, который проверяет достаточно ли прав у юзверя
            2. писать php код в админке без подсветки стремно. Я бы предпочел написать код в спец. редакторе, а потом этот ф-л подцепить в сниппете
              • 16111
              • 101 Posts
              Вот пример создания экземпляра из папки /assets/snippets/my_snipet/:
              $_api_path = '../../..';
              
              require($_api_path.'/manager/includes/config.inc.php');
              require($_api_path.'/manager/includes/document.parser.class.inc.php');
              
              $modx = new DocumentParser();
              


              Но если скрипт находится в пространстве снипета MODx то можно сделать проще:

              global $modx;
                Basic Manager
                Хочешь ускорить развитие Basic Manager? Хочешь создавать невероятно красивые фотогалереи и слайдшоу за 1 клик? Пожертвуй деньги на развитие плагина, WMR: R148348561691. Помни, что даже 50 рублей являются стимуляцией к разработке.

                Я в контакте
                • 9085
                • 630 Posts
                Quote from: daima at Nov 05, 2010, 02:09 PM

                2) В ООП не шарю, увы ((( Как?
                Для работы с MODx шарить в ООП не обязательно. Достаточно уметь читать (неплохо ещё и на Англицком), копировать и вставлять. API довольно подробно описано..

                1. <a href="trailer.php?trailer=trailer30"> В этом ф-ле trailer.php мне нужно обратиться к сниппету, который проверяет достаточно ли прав у юзверя
                Эм.. а зачем, trailer.php???? (Или зачем тогда MODx вообще?) Сниппеты можно вызывать на страницах (документы), страницам можно передавать $_GET параметры. Как раз для выполнения php кода сниппеты и служат (ну, должны, во всяком случае) Так (на мой взгляд) корректнее...

                2. писать php код в админке без подсветки стремно. Я бы предпочел написать код в спец. редакторе, а потом этот ф-л подцепить в сниппете
                Оглянуться вокруг? Некоторые сниппеты (Easy2Gallery, например.. ) содержат всего одну строчку с "инклудом". Все файлы можно править в редакторе.
                * как вариант, ещё можно прикрутить редактор с подсветкой smiley

                Удачи!
                  Правильно заданный вопрос повышает вероятность получения нужного ответа.
                  Что-то не работает? Загляните в лог ошибок!
                  Есть проблема? "Локализуйте" её!
                  Ответы на большинство вопросов по MODx | MODx RTFM | API Evo Revo | галопом по Европам Азиям smiley wikibooks(ru) Ditto(en) | Wayfinder e-book | Заметки и о MODx