Задать вопрос
Контакты

Наибольший вклад в теги

Все теги (7)

Лучшие ответы пользователя

Все ответы (20)
  • Woocommerce. Активная ссылка на товар в категории. КАК?

    klyo
    @klyo
    Делай...
    Исходя из того кода, который вы написали, можно сделать таким образом.

    В WordPress есть глобальная переменная product:
    global $product;
    Чтобы сформировать ссылку, необходимо сделать следующее:
    echo '<a href="'.get_permalink($product->post->id).'">Якорь ссылки</a>';


    В вашем случае попробуйте заменить вот эту часть кода:
    // Add Wrapper to Product Info
    function rocket_wrap_before_product_desc() {
      echo '<div class="product-info">';
    }
    add_action( 'woocommerce_before_shop_loop_item_title', 'rocket_wrap_before_product_desc', 10);
    
    function rocket_wrap_after_product_desc() {
      echo '</div>';
    }
    add_action( 'woocommerce_shop_loop_item_title', 'rocket_wrap_after_product_desc', 20);

    На вот этот код:
    // Add Wrapper to Product Info
    function rocket_wrap_before_product_desc() {
      global $product;
      echo '<div class="product-info"><a href="'.get_permalink($product->post->id).'">';
    }
    add_action( 'woocommerce_before_shop_loop_item_title', 'rocket_wrap_before_product_desc', 10);
    
    function rocket_wrap_after_product_desc() {
      echo '</a></div>';
    }
    add_action( 'woocommerce_shop_loop_item_title', 'rocket_wrap_after_product_desc', 20);
    Ответ написан
    3 комментария
  • Как закрыть полностью сайт от индексации и удалить из поисковиков?

    klyo
    @klyo
    Делай...
    Добавьте в файл .htaccess:
    SetEnvIfNoCase User-Agent "^Yandex" search_bot
    SetEnvIfNoCase User-Agent "^Yahoo" search_bot
    SetEnvIfNoCase User-Agent "^Googlebot" search_bot
    SetEnvIfNoCase User-Agent "^Aport" search_bot
    SetEnvIfNoCase User-Agent "^msnbot" search_bot
    SetEnvIfNoCase User-Agent "^spider" search_bot
    SetEnvIfNoCase User-Agent "^Robot" search_bot
    SetEnvIfNoCase User-Agent "^php" search_bot
    SetEnvIfNoCase User-Agent "^Mail" search_bot
    SetEnvIfNoCase User-Agent "^bot" search_bot 
    SetEnvIfNoCase User-Agent "bot" search_bot 
    SetEnvIfNoCase User-Agent "^igdeSpyder" search_bot
    SetEnvIfNoCase User-Agent "^Snapbot" search_bot
    SetEnvIfNoCase User-Agent "^WordPress" search_bot
    SetEnvIfNoCase User-Agent "^BlogPulseLive" search_bot
    SetEnvIfNoCase User-Agent "^Parser" search_bot
    SetEnvIfNoCase User-Agent "^Googlebot-Image" search_bot
    SetEnvIfNoCase User-Agent "^StackRambler" search_bot
    SetEnvIfNoCase User-Agent "^Adsbot-Google" search_bot
    SetEnvIfNoCase User-Agent "^WebAlta" search_bot
    SetEnvIfNoCase User-Agent "^Googlebot-Mobile" search_bot
    SetEnvIfNoCase User-Agent "^YandexImages" search_bot
    SetEnvIfNoCase User-Agent "http://www.google.com/bot.html" search_bot
     
    <FilesMatch "^.*$">
    Order Allow,Deny
    Allow from all
    Deny from env=search_bot
    </FilesMatch>


    И файл .htaccess с этим кодом можно расположить в любой папке на сервере, которую хотите запретить от индексации.
    Ответ написан
    Комментировать
  • Как добавить такой блок?

    klyo
    @klyo
    Делай...
    То, что вам нужно сделать, нужно делать с помощью хуков и ни в коем случае не трогать исходные файлы плагина.
    Полный список хуков именно для woocommerce можно найти здесь: Хуки Woocommerce.

    Что касается вашей задачи. Вам необходим хук: woocommerce_product_meta_start.
    Необходимо добавить в файл functions.php активной темы следующий код:
    //Цепляем свою функцию
    add_action( 'woocommerce_product_meta_start', 'woocommerce_infobox_single_before_meta' ); 
     
    function woocommerce_infobox_single_before_meta() {
        // Здесь можете вывести любой код, который вам нужно
        echo '<div class="single-product-infobox">Дополнительная информация</div>';
    }


    Но сейчас сделан лишь функционал, вам останется разместить его справа с помощью CSS.
    Ответ написан
    3 комментария
  • Как оптимизировать скорость подгружаемого скрипта?

    klyo
    @klyo
    Делай...
    Лучше всего загружать скрипт после полной загрузки страницы, сделать это можно следующим образом:
    <script>
        var scr = {"scripts":[
    		{"src" : "http://path_to_form.js", "async" : false},
    		]};!function(t,n,r){"use strict";var c=function(t){if("[object Array]"!==Object.prototype.toString.call(t))return!1;for(var r=0;r<t.length;r++){var c=n.createElement("script"),e=t[r];c.src=e.src,c.async=e.async,n.body.appendChild(c)}return!0};t.addEventListener?t.addEventListener("load",function(){c(r.scripts);},!1):t.attachEvent?t.attachEvent("onload",function(){c(r.scripts)}):t.onload=function(){c(r.scripts)}}(window,document,scr);
    </script>


    Иначе у вас скрипт, при обычном подключении, будет тормозить загрузку страницы.

    Также не забудьте сжать скрипт. Вот онлайн сервис для сжатия JS: https://jscompress.com/
    Ответ написан
    1 комментарий
  • Насколько корректно использовать 2 размера шрифта?

    klyo
    @klyo
    Делай...
    Чтобы у вас не возникало проблем с тем, какой размер шрифта использовать, есть вот такие сервисы: https://www.gridlover.net/try. Как только начинаете создавать с нуля какой-нибудь проекты, сразу для основных частей сайта вы задаете размеры элементов по умолчанию. Также здесь есть множество пресетов (scale factor). Причем сразу видно как соблюдается на странице вертикальный ритм.
    Ответ написан
    Комментировать