1. Уважаемые пользователи, прежде чем ответить в теме или создать новую,
    внимательно ознакомьтесь с правилами раздела

    Кому лень работать или руки не оттуда - пользуйтесь услугами специалистов
  2. Не задавайте глупых вопросов "Посоветуйте какой-нибудь компонент.."

    Есть JED!!! Ищите там!!!

Помощь Как загрузить определенный модуль после загрузки всей страницы?

Тема в разделе "Joomla", создана пользователем silmarion, 28 янв 2014.

Информация :
  • Уважаемые пользователи, прежде чем ответить в теме или создать новую, внимательно ознакомьтесь с правилами раздела
  • Не задавайте глупых вопросов "Посоветуйте какой-нибудь компонент.." Есть JED!!! Ищите там!!!
  • Аналоги ищите там же - на JED!!!
  • Новая версия? - У кого будет - тот выложит!
Модераторы: arman29, DMS, Genk0
  1. silmarion

    silmarion

    Регистр.:
    21 июн 2012
    Сообщения:
    195
    Симпатии:
    19
    Доброго всем времени суток всем.
    Собственно вопрос в названии темы

    Есть магазин, Virtuemart 2 joomla 2.5
    Используется модуль Offjan accordion menu lдля вывода пунктов меню соответственно.
    Все бы отлично, но на сайте более 2000 категорий, модуль категорий аккордеон, так что при переходе на новую страницу на сайте меню генерирует каждый раз ссылки на все категории!!!

    У не особо быстрых провайдеров скорость загрузки страницы с включенным модулем доходит до 10секунд, что есть не особо хорошо. Пользователь до полной загрузки страницы видит белый лист (думаю что в фрэймворке JS какой то исполняется чтобы не выводило постепенную загрузку страницы, а показывало пользователю сразу полную страницу).

    Вижу тут 2 варианта решения:
    1) найти и отключить JS в шаблоне который выводит сразу всю страницу, чтобы была постепенная загрузка, тогда не особо заметно будет (так и не нашел что за JS за это отвечает).

    2) перенести загрузку модуля меню после загрузки и показа страницы.
    3)...может как то по-другому...

    Буду рад любым советам и рекомендациям.


    Ссылка на сайт:
     
  2. ddn128

    ddn128

    Регистр.:
    31 июл 2013
    Сообщения:
    374
    Симпатии:
    163
    А кеширование не помогает?
     
  3. silmarion

    silmarion

    Регистр.:
    21 июн 2012
    Сообщения:
    195
    Симпатии:
    19
    Уже и кэш, и gzip на стороне хостинга, и отдельно объединение и сжатие css и js (сжатие и объединение пока отключил чтобы гуру смогли посмотреть что подгружается)
    Все одно, с включенными кэшем и т.п. и выключенным модулем меню сайт грузится просто отлично.
    Проблема вся в нем.
    Так что не знаю или как сделать чтобы этот модуль грузится уже после генерации и показа всей страницы или вообще отключить фишку, которая показывает страницу уже после ее загрузки (не знаю точно какую)
     
  4. jDony

    jDony Создатель

    Регистр.:
    25 янв 2014
    Сообщения:
    41
    Симпатии:
    40
    Глянул ваш сайт:
    1. У вас сама страница грузится почти 5с. Там явно ни о каком кэше речи не идет. Я не знаю что у вас там генерится, но это ОЧЕНЬ долго.
    2. Второй по тормазнутости у вас shadowbox-js, он почти пол секунды грузится.
    Как вариант нужно:
    1. Переместите все скрипты из хедера в футер(перед </body>)
    2. Проверьте что запросы к бд\результат у вас кэшируются. Сколько у вас sql запросов на страницу?
    3. У вас статику отдает сам апач+пхп? Не думали поставить nginx перед ними, и отдавать им статику? Нагрузка на пхп должна уменьшиться.
     
  5. silmarion

    silmarion

    Регистр.:
    21 июн 2012
    Сообщения:
    195
    Симпатии:
    19
    В данный момент я отключил сжатие полностью, чтобы видно было что грузится.
    Большую часть времени отнимает меню, если его выключить страница грузится в несколько раз быстрее (1-2.5 сек макс)
    В общем решил вопрос таким способом
    перед </body> вынес меню в блок
    <div id="script_ad" class="script_ad" style="display:none;">
    <jdoc:include type="modules" name="left_left" style="<?php echo $this->module_styles['left_left']; ?>" />
    </div>
    <script type="text/javascript">
    document.getElementById('script_block').appendChild(document.getElementById('script_ad'));
    document.getElementById('script_ad').style.display = 'block';
    </script>

    Если включен внутренний gzip и кэш жумлы
    Есть ли смысл делать какие то из этих пунктов
    Combine CSS Files Нет Да
    Combine JavaScript Files Нет Да
    GZip JavaScript and CSS Нет Да
    Minify CSS Нет Да
    Minify JS Нет Да
    Minify Html Нет Да
    через плагин System - JCH Optimize?
    И есть ли смысл помещать туда JS которые грузятся через CDN гугла?
     
    Последнее редактирование: 29 янв 2014
  6. Light_And_Dark

    Light_And_Dark Постоялец

    Регистр.:
    9 дек 2012
    Сообщения:
    50
    Симпатии:
    7
    Я скорость загрузки страницы тестирую или самим google или Yslow для firefox (в принципе они даю рекомендации по сжатию). Как по мне нужно экспериментально пробовать варианты сжатия на конкретном сайте. Я читала об одних и тех же плагинах противоречивую информацию кто-то добился ускорения, а кто-то нет и все на разных сайтах. От сюда вывод пробовать. Я в свое время экспериментировала в итоге половину яваскриптов сжимала через спец. сервисы, а не плагином - давали лучше результат.
     
  7. mr_denisters

    mr_denisters

    Регистр.:
    7 окт 2013
    Сообщения:
    150
    Симпатии:
    44