Як відключити перевірку на дату публікації в joomla

Ця перевірка створює додаткове навантаження на MySQL, не даючи нормально кешувати запити. Як я вже говорив у своїй статті Прискорення Joomla. потрібно максимально зменшити кількість запитів і в тому числі унікальних запитів до бази даних. Це дозволить їх ефективно кешувати.


Що потрібно зробити?

Необхідно пройтися по фалам компонента com_content і використовують вами модулів і плагінів типу mod_mostread. mod_latestnews і т.п. і внести зміни в їх код вручну.

Орієнтовно потрібно буде виправити фали в компонента com_content
\ Components \ com_content \ modules \ article.php
\ Components \ com_content \ modules \ category.php
\ Components \ com_content \ modules \ frontpage.php
\ Components \ com_content \ modules \ section.php

Так само потрібно буде виправити фали хелпери helper.php модулів mod_latestnews. mod_mostread. mod_related_items. mod_sections і інших які використовують статті та включені у вас.

Що міняємо?

Можна зібрати всі зміни і викласти компонент і модулі, але вони буде актуальні тільки під певну версію joomla, і з оновленням нової версії практично всі привидітися повторити в тих файлах, які замінить нова версія ...


Ще один спосіб

Ще один спосіб дозволяє вирішити проблему великої кількості унікальних запитів до бази - це замість описаного вище дії внести виправлення всього в одну функцію JFactory :: getDate ();

Для цього в фалі \ libraries \ joomla \ utilities \ date.php

потрібно виправити gmdate ( "M d Y H: i: s", time ()) на gmdate ( "M d Y", time ()) і точність перевірок на дати з поточною датою стане до дня.

До яких наслідків це призведе в інших компонентах або модулях і плагінах, де потрібна більш висока точність - я не знаю.

Про всяк випадок нагадаю, що вносячи будь-які зміни в движок joomla і її стандартні компоненти, ви можете вдіяти не працездатною. Тому робіть резервні копії і не тренуйтеся на робочому сайті.