Drupal 7 самых популярных тегов в списке в виде блока: как?


15

Я обнаружил, что Tagadelic работает очень хорошо из коробки и, по моим часам исследований и знаний, единственная функция plug & play для облака тегов, доступная для Drupal 7.

Это единственная проблема, с которой я столкнулся - мне нужна функциональность Tagadelic, но она мне не нужна в «облачном» формате. Мне нужно, чтобы мое облако тегов было в списке от самых популярных до наименее популярных и без изменения размера. Например:

Пункт x
Пункт h
Пункт j
Пункт o
Пункт 4

Очевидно, что самым популярным элементом является «Элемент x», а наименее популярным - «Элемент 4». Как Tagadelic может быть изменен для этого, так как я знаю, что для этого потребуется нечто большее, чем исправление CSS? Или есть лучший вариант, чем Tagadelic?


Ответы:


13

Вы можете сделать это с помощью представлений:

  • создать вид терминов
  • добавить обязательное отношение к «контенту с помощью тегов»
  • установить агрегацию использования: да
  • во второй раз добавьте поле «имя термина», установите для одного из них «тип агрегации: количество»
  • добавить «имя термина» в качестве критерия сортировки, установить «тип агрегации: количество»

Пример просмотра находится на http://drupalbin.com/19467


Я предполагаю, что у вас установлен модуль Views Group By для агрегации.
Ян Томка

2
Агрегирование встроено в Views 7.x-3.0! Там нет необходимости для дополнительного модуля.
Дилан Тэкс

О, слишком просто! ;-)
Ян Томка

Спасибо за решение. Не забудьте отфильтровать по опубликованному узлу, используя отношения (если вы получаете странные результаты).
Алесс Машерпа

Хороший пример, учтите, что если вы попытаетесь выбрать «количество», счет будет отличаться, поэтому вам нужно отметить «Число» в настройках агрегации. Это будет эффективно подсчитывать использование термина, не ища различного (что приведет к подсчету 1 для каждого отдельного термина, когда-либо использованного, который проходит фильтр).
Версия от

2

Tagadelic фактически делает то, что вы хотите, но затем использует CSS для преобразования списка в облако.

Все, что вам нужно, это переопределить CSS в вашей теме:

.wrapper.tagadelic {
  display: block;
  text-align : left;
  margin-right: 0;
}

.tagadelic.level1,
.tagadelic.level2,
.tagadelic.level3,
.tagadelic.level4,
.tagadelic.level5,
.tagadelic.level6,
.tagadelic.level7,
.tagadelic.level8,
.tagadelic.level9,
.tagadelic.level10 {
  font-size : 1em;
}

1

Смотрите модуль cctags в качестве альтернативы.

гибкая конфигурация и расширенные возможности для тематических облаков. (отдельные файлы шаблонов для тегов, названия словаря, облака страниц)


CCtags вызывает эту ошибку: Устаревшая функция: передача по времени вызова не рекомендуется в _theme_process_registry () (строка 413 из /home/sites/site01/drupal/includes/theme.inc). Устаревшая функция: переход по ссылке во время вызова устарел в _theme_process_registry () (строка 413 из /home/sites/site01/drupal/includes/theme.inc). Есть идеи? Спасибо за вашу помощь
Джереми

1
Без понятия. Боюсь, вам придется попасть в очередь выдачи модуля для дальнейшей поддержки.
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.