0.00
Рейтинг
0.00
Сила

hitch

Оптимизация одного из ключевых запросов к БД

Добрый день!
Сегодня получили письмо от службы поддержки со следующим содержанием
Доброго времени суток!

Вот этот запрос перегружает базу.

SELECT SQL_CALC_FOUND_ROWS DISTINCT t.topic_id, 
CASE WHEN (LOWER(t.topic_title) REGEXP '[[:<:]]plazan[[:>:]]') THEN 1 ELSE 0 END +
CASE WHEN (LOWER(tc.topic_text_source) REGEXP '[[:<:]]plazan[[:>:]]') THEN 1 ELSE 0 END AS weight
FROM prefix_topic AS t
LEFT JOIN prefix_topic_content AS tc ON tc.topic_id=t.topic_id
WHERE (topic_publish=1) AND
((LOWER(t.topic_title) REGEXP '[[:<:]]plazan[[:>:]]')
OR (LOWER(t.topic_title) REGEXP '[[:<:]]plazan[[:>:]]') 
OR
(LOWER(tc.topic_text_source) REGEXP '[[:<:]]plazan[[:>:]]')
OR (LOWER(tc.topic_text_source) REGEXP '[[:<:]]plazan[[:>:]]') 
)
ORDER BY
weight DESC,
t.topic_id ASC
LIMIT 0, 20

Сделаете с ним, пожалуйста, что-нибудь.--

Как я понимаю это один из ключевых запросов, поскольку он выполняется к таблицам prefix_topic prefix_topic_content и если я не ошибаюсь, то его основная задача — поиск топиков.
Подскажите что можно здесь сделать? Кто сталкивался с похожей проблемой?

У нас заблокировали пользователя БД из-за этого!!!

Шаблон Dribbble

Здравствуйте, меня интересует шаблон сайта Dribbble.com.Дизайн мне очень понравился, поэтому, возможно ли сделать такой под livestreet? Если возможно, то существует какой-либо мануал по созданию шаблонов livestreet?

Кнопка "Добавить пост" при просмотре блога




Добрый день ув. Сообщество!
Сегодня я бы хотел рассказать о небольшой «фиче», которую можно легко добавить к себе на сайт под управлением LS. Фича заключачается в следующем — при просмотре блога появится ссылка, при нажатии на которую, пользователь будет публиковать сразу в этот блог (присоединен он к блогу или нет).
Фича подходит для сайтов с большим кол-вом блогов, чтобы пользователи не мучались, листая выпадающий список с большим кол-вом блогов, да и вообще, по-моему, такая структура более понятна обычным пользователям.

Читать дальше →

Плагин "Ajax подгрузка по скроллу"


Плагин для подгрузки новых топиков при скроллинге. В конфиге есть настройка подгружать топики автоматически при достижении конца страницы, или по нажатию кнопки «дальше».

Читать дальше →

Мануал по интеграции плагинов с плагином "Role", на примере плагина "Публикация от чужого имени"

Данный топик является примером интеграции ролей с другими плагинами, и никак не призывом к действию. Предложения и замечания принимаются в комментариях.

Первое что нужно сделать для интеграции — это создать чекбоксы для плагина "Публикация от чужого имени" в добавлении и редактировании ролей.
Плагин "Role" имет хуки.

  • template_roles_role — в шаблоне добавления к списку прав роли
  • template_roles_user — в шаблоне добавления к списку прав отдельному пользователю
  • template_roles_role_show_end — в шаблоне редактирования к списку прав роли
  • template_roles_role_user_show_end — в шаблоне редактирования к списку прав отдельному пользователю

Читать дальше →

Система блоков - расставляем точки...

Была потребность разобраться с системой блоков. Очень много чего перечитал с сайта. Например, Система блоков. Ниже будет краткое изложение полученных знаний. Попытаюсь рассказать про систему блоков простым языком, чтобы и новички поняли.

Самое главное, что я выяснил:
1. Блоки можно создавать самостоятельно.
2. Блоки можно размещать в произвольном месте страницы (нужно заранее указать эти места)
3. Блоки могут отображаться в зависимости от Action'ов и Event'ов
4. Блоки могут отображаться в зависимости от адреса страницы. Адрес страницы можно задать с помощью регулярных выражений.
Итак, основные моменты.
Читать дальше →

Бесплатный плагин «OpenID Comments»

«Наш ответ Чемберлену» :)



При отправке комментария гость увидит всплывающее окошко авторизации/регистрации, а после авторизации/регистрации его комментарий появится на сайте.

Плагин может работать совместно с плагином OpenID (что удобней для гостей сайта) или без него.

Github репозиторий плагина.
Пример работы плагина можно увидеть на Кукораме.

PS. Поблагодарить разработчиков можно отправив небольшой донейт

Выводим в Top блогов количество постов вместо рейтинга.

Возникла задача выводить в блоке Tоп блогов вместо абстрактного рейтинга количество постов. Актуально для новых сайтов или неактивных комьюнити.



Для начала находим Экшен блока. Структура LS подробно описана, поэтому легко находим нужный блок: /classes/blocks/BlockBlogs.class.php В блоке вызывается единственная функция: Blog_GetBlogsRating, с ней и будем работать.

Сначала захотелось по-быстрому исправить эту функцию в коде движка, но после недолгих размышлений захотелось сделать правильно и красиво, потому что работа с Livestreet подталкивает к этому. Поэтому, оформим решение в виде модуля, который может оказаться полезным и другим пользователям.

Читать дальше →