Опубликовано: 13 июня 2016

Дублирование загрузки кода Есть решение

Здравствуйте. Если посмотреть исходный код главной страницы вашего демо сайта то можно увидеть что блок Контакты в шапке загружается три раза

<!--contact in header-->
<li class="top-contact phone">+7 (917) 57-07-577

</li>
<li class="top-contact hint">Ежедневно с 9:00 до 21:00</li>

На 544, на 1680 и на 1786 строке.

На моем сайте тоже самое. Однако у меня в этом блоке еще висит кнопка вашего же плагина Перезвонить вам? и еще плагин выбора регионов. Соответственно коды этих плагинов также грузятся по три раза. Можно узнать почему так? И влияет ли это факт на общую скорость загрузки сайта?

Комментарии (5)

  • Александр Тирон +23 13 июня 2016 12:22 #

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

    2) На общую скорость загрузки это влияет незначительно, от слова совсем.

    1
  • Oleg Astriyskiy +0 30 августа 2016 22:01 #

    Здравствуйте еще раз. Версия темы оформления у меня по всем признакам последняя.

    Последняя версия 2.3.1
    Установлена последняя версия темы дизайна Удобная Покупка.

    Так как все таки избавится от этого дублирования кода? Можно подробную инструкцию. А то мне это не очень нравится. Да и вдобавок W3 validator как мне кажется именно по этому выдает много ошибок Duplicate ID.

    1
  • Oleg Astriyskiy +0 5 сентября 2016 22:22 #

    Адрес сайта 747.kz

    И обратите внимание у меня 3152 строки кода, что очень много и очень много строк дублируются по три раза. Именно те которые выводятся из блока {$wa->block("comfortbuy.contact")}

    1
    • Александр Тирон Александр Тирон +23 6 сентября 2016 10:41 #

      Скорее всего вы используете блок для указания контактов, но используете его содержимое прежней версии. Сравните код блока с содержимым файла comfortbuy.contact.html приложения Сайт, там есть конструкция исключающая дублирование верхнего блока телефонов снизу и наоборот.

      1
  • Oleg Astriyskiy +0 6 сентября 2016 14:04 #

    Скопировал код из файла comfortbuy.contact.html приложения Сайт и заменил им блок {$wa->block("comfortbuy.contact")}

    Помогло, но только наполовину. Если раньше дублировалось три раза, то теперь только два раза стало. Количество строк в коде страницы сразу уменьшилось с 3152 до 2769.

    Как бы еще чуток убрать этот второй повтор?

    Вот содержимое обновленного блока {$wa->block("comfortbuy.contact")}

    {$__contact = $wa->globals("_contact")}
    {if $wa->shop}{$phone = $wa->shop->settings('phone')}{$email = $wa->shop->settings('email')}{else}{$phone=''}{$email=''}{/if}
    <ul>
    {if $__contact}
    <!--contact in header-->
    <li class="top-contact region"> {shopRegionsViewHelper::getWindow()} <p></p> </li>
    {if $phone}<li class="top-contact phone">{$phone}</li>{else}
    <li class="top-contact phone"> {shopRegionsViewHelper::parseTemplate('{region_phone}')} </li>
    <li class="top-contact phone"> 8 (747) 775 47 47</li>
    {/if}

    {* ссылка в шапке "заказаьть обратный звонок" при включенном плагине "Перезвонить Вам?"
    <li class="top-contact"><a href="javascript: void(0);" class="wm-recallback-plugin-button" rel="nofollow">Перезвонить Вам?</a></li>
    *}

    <li class="top-contact hint">
    {if $wh = $wa->shop->settings('workhours')}
    {*
    {foreach $wh.days as $d}{$d}{if !$d@last}, {/if}{/foreach}
    *}
    {$wh.days_from_to}
    {if $wh.hours_from && $wh.hours_to} {$wh.hours_from}—{$wh.hours_to}{/if}
    {else}
    Ежедневно с 9:00 до 21:00
    {/if}
    </li>

    {if $wa->shop}{shopRecallbackPlugin::showRecallbackButton()}{/if}
    <li class="top-contact messenger"> {shopMessageboxPlugin::display(2)} {shopMessageboxPlugin::display(1)} </li>
    {else}


    <!--contact in footer-->
    {if $phone}<li class="bottom-contact phone"><i class="icon-phone"></i>{$phone}</li>{else}
    <li class="bottom-contact phone"><i class="icon-phone"></i>+7 (747) 775-47-47 Tele2</li>
    <li class="bottom-contact phone"><i class="icon-phone"></i>+7 (702) 648-66-66 Kcell</li>
    <li class="bottom-contact phone"><i class="icon-phone"></i>+7 (777) 186-00-00 Beeline</li>
    <li class="bottom-contact messenger"><i class="icon-skype"></i><a href="skype:saltanatcards?chat">Skype chat saltanatcards</a></li>
    {/if}
    {* ссылка в подвале "заказаьть обратный звонок" при включенном плагине "Перезвонить Вам?"
    <li class="bottom-contact phone"><i class="icon-phone-sign"></i><a href="javascript: void(0);" class="wm-recallback-plugin-button" rel="nofollow">Заказать обратный звонок</a></li>
    *}
    {if $email}<li class="bottom-contact email"><i class="icon-envelope"></i><a href="mailto:{$email}">{$email}</a></li>{else}
    <li class="bottom-contact email"><i class="icon-envelope"></i><a href="mailto:info@saltanat-cards.kz">info@saltanat-cards.kz</a></li>
    {/if}
    {/if}
    </ul>

    1
    • Александр Тирон Александр Тирон +23 6 сентября 2016 14:48 #

      Второй повтор видимо из за кода для устаревших браузеров в файле lt-ie8.html. Попробуйте строки в этом файле:

      {$wa->globals("_contact", 1)}

      {if $contact=$wa->block("`$themeId`.contact")}

      {$contact}

      {else}

      {include file="comfortbuy.contact.html"}

      {/if}

      заменить строками:

      {*$wa->globals("_contact", 1)}

      {if $contact=$wa->block("`$themeId`.contact")}

      {$contact}

      {else}

      {include file="comfortbuy.contact.html"}

      {/if*}


      или вовсе убрать подключение этого файла в файле index.html удалите строку:

      <!--noindex--><div class="wrapper-lt-ie8">{include file="lt-ie8.html" themeId=$them[1]}</div><!--/noindex-->

      1
  • Решение
    Oleg Astriyskiy +0 6 сентября 2016 15:33 #

    Заменил строки в файле lt-ie8.html. Все повторы теперь убрались.

    Большое спасибо за помощь.

    1

Добавить ответ

Чтобы добавить комментарий, зарегистрируйтесь или войдите

Услуги

Контакты

Дорогие друзья!

К сожалению, Ваш браузер не поддерживает современные технологии используемые на нашем сайте.

Пожалуйста, обновите браузер, скачав его по ссылкам ниже, или обратитесь к системному администратору, обслуживающему Ваш компьютер.

Internet Explorer

от Microsoft

Chrome

от Google

Safari

от Apple

Opera

от Opera Software

Firefox

от Mozilla

Вверх