Тэги к тикетам

Здравствуйте. Хочу на своем маленьком блоге сделать теги для каждого тикета, чтобы можно было выводить их и искать то тегам (тэги буду назначать сам или будет правило их назначения, чтобы не было каши). Сам я это сделать не смогу. Есть ли готовое решение или сколько стоит такая доработка?
Виталий Барышников
Виталий Барышников
12 февраля 2016, 14:22
modx.pro
3 145

Комментарии: 20

Николай Загумённов
12 февраля 2016, 19:55
Компонент создающие новый тип ТВ — https://modstore.pro/packages/other/tvsuperselect
    Виталий Барышников
    13 февраля 2016, 03:52
    Спасибо всем, это интересные решения, уже разбираюсь с ними…
      Виталий Барышников
      14 февраля 2016, 12:27
      В общем выбрал я компонент tvSuperSelect. Кое-как (не без помощи автора) их в тикете вывел.
      tv.tags — моя TV типа tvsuperselect.
      Вот так вывожу сниппетом
      [[!getPostTags? &tpl=`tpl.PostTags`]]
      теги в посте:
      $tvValue = $modx->resource->getTVValue('tv.tags');
      $tags = json_decode($tvValue);
        foreach ($tags as $tag)
        {
      	$url = $modx->makeUrl($parentId = $modx->resource->get('parent'), '', array('tag' => $tag));
      	$output.= $modx->getChunk($tpl,array('tag' => $tag, 'link' => $url));
        }
      return $output;
      Шаблончик tpl.PostTags:
      <a href="[[+link]]" rel="tag">[[+tag]]</a>
      Если я делаю что-то не очень хорошо, поправьте пожалуйста, я плохо понимаю.

      Ссылки на тегах получились такого вида: сайтик.ру/adventures?tag=Отдых.
      Теперь другая головная боль — толку от них нет, пока по ним нельзя вывести все тикеты с такими же тегами.
      Выше Сергей кинул ссылку, где вроде есть решение этой проблемы, но я не знаю как его переписать, чтобы подходило для tvsuperselect.
      Там в разделе с тикетами для вывода предлагается использовать сниппет для фильтрации getFilteredTickets (который мне и нужно переделать для tvsuperselect):
      <?php
      $tag = isset($_GET['tag']) ? $modx->sanitizeString($_GET['tag']) : '';
      
      if ($tag) {
          $where = '["1=1 AND FIND_IN_SET(\''.$tag.'\', `Ticket`.`tags`)"]';
          $scriptProperties = array_merge($scriptProperties,array('where'=>$where));
      }
      
      return $modx->runSnippet('getTickets',$scriptProperties);
      Далее в разделе с тикетами он вызывается (получается он проверяет есть ли в GET tag, если есть то фильтрует, если нет, то всё как обычно, выводятся все тикеты раздела).
      [[!pdoPage?
          &element=`getFilteredTickets`
      ]]
      [[!+page.nav]]
      Вот такой вот вопрос беспокоит. Жаль, что blgt вышел, когда я уже заканчивал блог, купил бы и не парился так теперь.
        Павел Гвоздь
        14 февраля 2016, 19:37
        Ещё используешь tvSuperSelect? Есть смысл поторопиться с новой версией?
          Виталий Барышников
          15 февраля 2016, 03:38
          Да, использую. Мне пока это больше всего понравилось, но видимо пока я один.
            Виталий Барышников
            25 февраля 2016, 08:00
            Привет. Когда планируешь новую версию сделать и что в ней будет? Лично я жду сниппет, чтобы по тегу новости (тикеты) вывести. Либо сколько это стоит? А то у меня на сайте теги есть, но они там так, для красоты, ничего не выводят, если по ним тыкать.
        Борода
        14 февраля 2016, 12:40
        Попробуй этот вариант, у меня работает на ура.
          Виталий Барышников
          14 февраля 2016, 15:05
          Спасибо, я сделаю так на крайний случай. Очень уже этот tvSuperSelect удобен и прост показался, хочу на его основе. Мне просто запрос надо написать для выборки в сниппете, буду подбором проб/ошибок реализовать, а так конечно хороший резервный вариант.
            Борода
            14 февраля 2016, 15:29
            Там как раз есть запросы на все случаи) И для статей, и для блога, и для облака тегов) Я автора мучал в комментах)
              Владимир
              14 февраля 2016, 16:15
              Tagger — тоже считаю лучшим решением. Видимо, не все распробовали. Думаю, что заявленные «протестирован на миллионе тегов» не пустые слова.
                Виталий Барышников
                14 февраля 2016, 17:24
                Ага, я заметил, всё выложил)
            Alexander V
            14 февраля 2016, 17:00
            Теги не проблема. Проблема в другом. Вам придется перепрыгивать из админки на фронт, если хотите одновременно использовать галерею Tickets и теги.
            Реализацию добавления тегов из фронта я еще не видел.
              Виталий Барышников
              14 февраля 2016, 17:22
              Во фронте и не надо, т.к. посты и теги пишу я сам. Ну даже если кто-то будет писать посты, то я не поленюсь поставить их сам.
                Борис И
                20 февраля 2016, 19:57
                ТУТ мой костыль для добавления тегов с фронта Tickets, вроде работает.
                Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.
                20