We launched new forums in March 2019—join us there. In a hurry for help with your website? Get Help Now!
    • 16754
    • 56 Posts
    Как можно реализовать сабж? Способен ли на это AjaxSearch? читал доки - ничего не нашёл.
      • 32725
      • 107 Posts
      Смотря что именно нужно найти.
      Если, например, содержимое, то можно так:
      <?php
      $id = isset($_GET['id']) ? intval($_GET['id']) : 0;
      
      if ($id == 0) {
          return '<p>ID is empty :(</p>';
      }
      else {
          $do = $modx->getDocumentObject('id', $id);
          return '<h1>' . $do['pagetitle'] . '</h1><p>' . $do['content'] . '</p>';
      }
      ?>
      
        My portfolio
        Самурай без меча подобен самураю с мечом, только без меча.
        • 785
        • 2,113 Posts
        Что такое поиск по ID? Если нужна страница с определенным ID, то и искать ее нечего - имя_сайта.ru/index.php?id=2. Если что-то иное, то нужны пояснения.
          Создание сайтов на MODx, поддержка сайтов, поисковая оптимизация, программирование, копирайтинг
          Статьи о MODx, регулярно новые публикации
          • 16754
          • 56 Posts
          поясняю:
          как организовать поиск документа по его id (уникальному номеру, который автоматически присваивается при его создании).
          админки это возможно из раздела "поиск".
          как искать с фронта?
            • 32725
            • 107 Posts
            Quote from: Lawer at Sep 24, 2009, 02:06 PM

            поясняю:
            как организовать поиск документа по его id (уникальному номеру, который автоматически присваивается при его создании).
            админки это возможно из раздела "поиск".
            как искать с фронта?
            То, что ID - это уникальный номер - это понятно smiley
            Что именно нужно искать - непонятно.
            З.Ы. У вас под никнеймом есть очень хорошая подпись. Попробуйте ей воспользоваться и правильно задать вопрос smiley
              My portfolio
              Самурай без меча подобен самураю с мечом, только без меча.
              • 16754
              • 56 Posts
              ок grin

              Вобщем дело такое:
              В разделе представлены документы представляющие собой анкеты фотомоделей. Каждая анкета имеет набор параметров (рост, объём, возраст, титьке и т.д. smiley) Также нужен параметр, являющийся уникальным идентификатором, был выбран внутренний id документа, следовательно пользователям он виден.
              так вот - как например пользователю, запомнившему лишь id анкеты быстро найти эту анкету?

              Понятно, что можно использовать TV, как и для остальных параметров, но тогда возникает вероятность дублирования id.
                • 1788
                • 1,103 Posts
                Quote from: Lawer at Sep 24, 2009, 07:40 PM
                но тогда возникает вероятность дублирования id.
                Два ID не могут иметь один номер.
                  • 16754
                  • 56 Posts
                  Quote from: antey at Sep 24, 2009, 08:28 PM

                  Quote from: Lawer at Sep 24, 2009, 07:40 PM
                  но тогда возникает вероятность дублирования id.
                  Два ID не могут иметь один номер.

                  Имелось в виду - при указании условного идентификатора для анкеты (не системной id ModX) путём введения её руками через TV.
                    • 32725
                    • 107 Posts
                    Короче есть страничка с формой
                    <form action="[~[*id*]~]" method="get">
                    Введите ID фотомодели: <input type="text" name="pid" value="" /> <input type="submit" value="Найти">
                    </form>
                    [!search_model!]
                    

                    Есть сниппет search_model с таким кодом:
                    <?php
                    // Template ID of model
                    $tid = 5;
                    if (isset($_GET['pid'])) {
                       $pid = intval($_GET['pid']);
                       if ($pid <= 0) {
                           return '<p>Incorrect ID.</p>';
                       }
                       else {
                           $table_site_content = $modx->getFullTableName('site_content');
                           $model_exists = $modx->db->getValue("
                               SELECT COUNT(*) FROM $table_site_content
                               WHERE `id` = $pid AND `template` = $tid AND `published` = 1 AND `deleted` = 0
                           ");
                           if ($model_exists) {
                               return '<p>You model is <a href="' . $modx->makeUrl($pid) . '">here</a>.</p>';
                           }
                           else {
                               return '<p>Model not found. Sorry looser ;)</p>';
                           }
                       }
                    }
                    ?>
                    

                    Где $tid = 5 это ID вашего шаблона с моделями.
                      My portfolio
                      Самурай без меча подобен самураю с мечом, только без меча.
                      • 785
                      • 2,113 Posts
                      Quote from: Wuron at Sep 25, 2009, 10:32 AM

                      Есть сниппет search_model с таким кодом:
                      Все ID в MODx хранятся в памяти, так что лучше вообще не обращаться к базе, а использовать $modx->aliasListing или $modx->documentListing.
                        Создание сайтов на MODx, поддержка сайтов, поисковая оптимизация, программирование, копирайтинг
                        Статьи о MODx, регулярно новые публикации