xandeadx.ru Блог музицирующего веб-девелопера

Drupal

DrupalПродолжаем резать, модуль Comment

Опубликовано в

В прошлой записи Уменьшаем количество запросов к MySQL в полтора раза был прооперирован модуль Path, в этой будем мучать модуль Comment :)

На каждый запрос информации о ноде, например вывод тизера на главной, модуль Comment выполняет запрос к БД, в котором достаёт число комментариев к этой ноде и информацию о последнем комментарии. Если эта информация нам не нужна, например в этом блоге она нигде не выводится (p.s.: уже выводится), можно избавится от десятка запросов.

Итак, открываем файл modules/comment/comment.module. Идём в строку 596 и находим там такой кусок кода:

    case 'load':

DrupalУменьшаем количество запросов к MySQL в полтора раза

Опубликовано в

Один из самых прожорливых (в плане работы с MySQL) модулей в Drupal это Path. Для каждой ссылки, будь то ссылка на ноду, термин или форму ответа в комментариях, модуль создаёт запрос к таблице url_alias с целью выяснить, не добавили ли мы для этой ссылки alias, и если добавляли, то использовать его вместо дефолтного url.

Например у вас включён модуль Path и Pathauto. Pathauto создаёт псевдонимы для записей типа "Блог" вида /blog/nid. Тогда для того чтобы вывести 10 последних записей в блоге, модуль Path сделает 10 запросов к MySQL. Если при этом у каждой записи есть теги, то Path сделает ещё по запросу на каждый тег. В итоге, на главной странице этого блога, Path создаёт около 70 запросов.

DrupalКак удалить поле "Домашняя страница" из формы добавления комментария

Опубликовано в

Странно не видеть в настройках друпала, функции, отключающей поля и кнопки в форме добавления комментариев. Например часто возникает ситуация когда поле Домашняя страница не желательно. Есть несколько способов удалить его.

DrupalВыводим список терминов из словаря с помощью модуля Taxonomy Block

Опубликовано в

Описание

Модуль Taxonomy Block добавляет блок, в который выводится список терминов из словаря в виде ссылок. Ссылки ведут на список материалов помеченных выбранным термином.

Это хорошая альтернатива модулю Taxonomy Menu. У Taxonomy Menu есть огромный недостаток — при добавлении терминов меню полностью уничтожается и после этого создаётся вновь.

DrupalМодуль AJAX Comments — добавление комментариев без перезагрузки страницы

Опубликовано в

Описание

Модуль AJAX Comments позволяет:

  • Добавлять комментарии с помощью AJAX
  • Отвечать на комментарии без промежуточной страницы
  • Быстро удалять комментарии с помощью AJAX

DrupalВыносим число материалов из ссылок в меню, которое сгенерировал модуль Taxonomy Menu

Опубликовано в

Меню сгенерированное модулем Taxonomy Menu, с включённой опцией "Display number of items", выглядит следующим образом:

Задача — вынести число материалов из ссылок, т.е сделать что-то подобное:

2009-11-10_171800.jpg

DrupalМодуль Taxonomy Menu — создаём меню со списком терминов из словаря

Опубликовано в

Был удивлён, не найдя в стандартной комплектации друпала, функции для вывода списка терминов в каком-нибудь блоке. Задачу можно решить несколькими способами.

Первый, это создать меню и руками добавить туда ссылки на термины. Ссылки можно скопировать в разделе Таксономия › Ваш словарь › список терминов.

Второй, воспользоваться сниппетом, например таким.

Третий способ, это возложить работу по добавлению и обновлению ссылок на модуль Taxonomy Menu. Поподробнее опишу как это работает.