Новости Joomla

Человек на GitHub ускорил Joomla в 600 раз на объёме 150к+ материалов в 1700+ категориях

Человек на GitHub ускорил Joomla в 600 раз на объёме 150к+ материалов в 1700+ категориях

👩‍💻 Человек на GitHub ускорил Joomla в 600 раз на объёме 150к+ материалов в 1700+ категориях. На старте его сайт на Joomla 3 вообще не смог обновиться на Joomla 5. Пришлось делать экспорт/импорт материалов. Проделав всё это он запустил-таки этот объём данных на Joomla 5. Тестовый скрипт грузил 200 материалов из этого объёма всего за 94 секунды ))) А главная страница с категориями грузилась 20 секунд. Добавив индекс для таблицы #__content

CREATE INDEX idx_catid_state ON #__content (catid, state);
он сократил время загрузки категорий до 1 секунды. Затем наш герой решил поковырять SQL-запрос в ArticleModel, который отвечает за выборку материалов. И решил заменить тип JOIN на STRAIGHT_JOIN для категорий.
// ->from($db->quoteName('#__content', 'a'))->from(    $db->quoteName('#__content', 'a')    . ' STRAIGHT_JOIN ' . $db->quoteName('#__categories', 'c')    . ' ON ' . $db->quoteName('c.id') . ' = ' . $db->quoteName('a.catid'))// ->join('LEFT', $db->quoteName('#__categories', 'c'), $db->quoteName('c.id') . ' = ' . $db->quoteName('a.catid'))
Что сократило загрузку 200 материалов из 150к с 94 секунд до 5. К слову сказать, боевой сайт на Joomla 3 крутится на 12CPU 64GB рамы. А все манипуляции с кодом он делает на базовом 1CPU 1GB сервере и замеры скорости даны именно для базового сервера. Но это всё в дискуссии, хотя в идеале должно вылиться в Pull Requests. Мы - Open Source сообщество, где никто никому ничего не должен. Джунгли. Но человек ищет пути оптимизации Joomla и предлагает решения. Если оказать поддержку и предложить помощь хотя бы с тестированием самых разнообразных сценариев, то возможно эти улучшения смогут войти в ядро. Пусть не быстро, пусть через несколько лет, пусть не все, но войдут. Достаточно предложить руку помощи и приложить немного усилий.
Дискуссию на GitHub можно почитать здесь.@joomlafeed#joomla #community #php

0 Пользователей и 1 Гость просматривают эту тему.
  • 12 Ответов
  • 3243 Просмотров
*

xandeadx

  • Новичок
  • 7
  • 0 / 0
Задача организовать вывод подменю в отдельном блоке: т.е допустим пользователь переходит в раздел О компании, слева, под основным меню, появляется подменю:

  • Наши заслуги
  • Наши партнёры
  • История

Если пользователь переходит в раздел Услуги, слева, под основным меню, появляется подменю:

  • Услуга 1
  • Услуга 2
  • Услуга 3

Как сделал я:

1. Создал главное меню вида:

О компании
-- Наши заслуги
-- Наши партнёры
-- История
Услуги
-- Услуга 1
-- Услуга 2
-- Услуга 3

2. В менеджере модулей, у Главное меню прописал Последний уровень = 1.

3. Создал новый модуль Подменю у "О компании" с настройками: Начальный уровень = 1, Меню = Выбрать из списка (выбрал соответствующие пункты).

4. Аналогично поступил с модулем Подменю у "Услуги".

Всё ок.

А теперь внимание вопрос :) — можно ли как то автоматизировать процесс, т.е отказаться от создание модулей для каждого пункта основного меню, или может есть другой, более простой, способ добиться результата.
*

Вязной

  • Захожу иногда
  • 195
  • 19 / 0
  • Просто Вова
А вам и не нужно для каждого пункта модуль создавать. Достаточно 2 модулей - главное меню и подпункты.
*

xandeadx

  • Новичок
  • 7
  • 0 / 0
а где тогда прописать логику, чтобы подпункты отображались из текущего пункта главного меню?
*

xandeadx

  • Новичок
  • 7
  • 0 / 0
всё, понял, спасибо за совет! создал модуль Подменю с настройками Начальный уровень = 1, Меню = Выбрать из списка (выбрал все разделы и подразделы)
*

wdesign

  • Осваиваюсь на форуме
  • 11
  • 0 / 0
Добрый день, мучительно пытаюсь сделать вышеописанное, но ни как не получается!
Могли бы расписать по подробнее, где и как что делать? Заранее огромное спасибо!
*

xandeadx

  • Новичок
  • 7
  • 0 / 0
Добрый день, мучительно пытаюсь сделать вышеописанное, но ни как не получается!
Могли бы расписать по подробнее, где и как что делать? Заранее огромное спасибо!
http://xandeadx.ru/blog/joomla/51
*

wdesign

  • Осваиваюсь на форуме
  • 11
  • 0 / 0
Спасибо огромнейшее!
*

wdesign

  • Осваиваюсь на форуме
  • 11
  • 0 / 0
Вы случайно не знаете еще, как убрать отображение пункта меню «Главная»? Тема об этом
*

xandeadx

  • Новичок
  • 7
  • 0 / 0
удалить из меню через редактор меню
*

wdesign

  • Осваиваюсь на форуме
  • 11
  • 0 / 0
Просто какой-то пункт меню должен быть по умолчанию и выводить на главную, у меня это логотип, пункт Главная вообще не нужен
*

xandeadx

  • Новичок
  • 7
  • 0 / 0
тогда самый простой вариант это скрыть пункт с помощью CSS - li.item1 {display:none;}
*

xandeadx

  • Новичок
  • 7
  • 0 / 0
вот нашёл инструкцию, работает

1. Make a copy of your main menu inside the Module Manager and call it something else.
2. In the original main menu remove all your menu items except HOME.
3. Now that you have only HOME in the main menu, you can go to the module manager, select main menu and on the right side of the screen you select NONE, so the main menu will not be shown on any of your sites. Just make sure that it is still PUBLISHED.
4. In the copy of your main menu, delete HOME and use this menu to be displayed on all your sites.
*

Roberta

  • Захожу иногда
  • 182
  • 0 / 0
Подскажите как реализовать следующее  ( на примере первого поста)

Мне нужно, чтобы подменю услуга1, услуга2,  услуга3 выводилось не только на странице услуги, но и на Главной (при этом у "главной" есть свое подменю) тот есть получается что там тудет выводиться два подменю

как этот реализовать
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

убрать из меню заголовки h3

Автор nexter

Ответов: 19
Просмотров: 8693
Последний ответ 03.02.2020, 18:49:47
от durte
При добавлении нового пункта меню не отображается содержимое

Автор Denko

Ответов: 2
Просмотров: 3816
Последний ответ 16.01.2020, 18:40:55
от Denko
Не нажимается пункт меню на мобильной версии

Автор Sensession

Ответов: 7
Просмотров: 5467
Последний ответ 04.01.2020, 16:45:27
от xpank
Не отображаются пункты в меню

Автор physic

Ответов: 20
Просмотров: 23940
Последний ответ 20.09.2019, 16:54:01
от beliyadm
DJ Mega Menu разобраться с настройкой подменю

Автор Pene4ek

Ответов: 0
Просмотров: 3528
Последний ответ 14.07.2019, 18:28:45
от Pene4ek