Введите часть искомого слова, названия или фразы...
↑ ↓
  1. Новые темы озаглавленные с маленькой буквы - удаляются без предупреждения!
  2. Вопрос без рабочей ссылки на проблему считается риторическим. Без ссылки и скриншота - провокацией!

Добавить дополнительное описание(маленькое) в каталог

Тема в разделе "Вопросы новичков", создана пользователем prandros, 28 июл 2015.

  1. prandros

    prandros

    Сообщения:
    9
    Симпатии:
    1
    Баллы:
    3
    Нужно сделать что то подобное,как на фото:

    QIP Shot - Screen 066.png




    Что бы для каждого товара прописывался данный текст и отображался в этом месте. Кто что посоветует?
     
  2. searchingman

    searchingman Местный

    Сообщения:
    1.634
    Симпатии:
    553
    Баллы:
    113
    Для товара добавить дополнительное поле. Затем в шаблоне выводить это поле.
     
  3. prandros

    prandros

    Сообщения:
    9
    Симпатии:
    1
    Баллы:
    3
    Поле добавить не проблема! А как вывести его в том месте как раз.
     
  4. searchingman

    searchingman Местный

    Сообщения:
    1.634
    Симпатии:
    553
    Баллы:
    113
    Н-р, добавили поле cf_short_description с содержимым для товара http://take.ms/QzDaQ .
    В functions.php своей темы добавляете код.
    PHP:
    add_action('woocommerce_after_shop_loop_item','cf_woocommerce_after_shop_loop_item');
    function 
    cf_woocommerce_after_shop_loop_item() {
        global 
    $post;
        if (
    get_post_meta($post->ID'cf_short_description'true)) 
            echo 
    '<span class="cf_short_description">'.get_post_meta($post->ID'cf_short_description'true).'</span>';
    }
    На примере темы storefront результат http://take.ms/vRUIA
     
    Последнее редактирование: 28 июл 2015
    • Симпатия Симпатия x 2
    • Нравится Нравится x 1
  5. prandros

    prandros

    Сообщения:
    9
    Симпатии:
    1
    Баллы:
    3
    Заработало!
    Большое спасибо,очень помог!

    Ты по документации разбираешься или как?
     
  6. searchingman

    searchingman Местный

    Сообщения:
    1.634
    Симпатии:
    553
    Баллы:
    113
    Интернет + документация + исходники.
     
    • Нравится Нравится x 1
  7. prandros

    prandros

    Сообщения:
    9
    Симпатии:
    1
    Баллы:
    3
    А можешь еще помочь. Нужно вывести эти же данные в карточку товара,прямо под ценой.
     
  8. searchingman

    searchingman Местный

    Сообщения:
    1.634
    Симпатии:
    553
    Баллы:
    113
    К вышеприведенному коду в functions.php добавить
    PHP:
    add_action('woocommerce_single_product_summary','cf_woocommerce_after_shop_loop_item',25);
    Для темы storefront будет выглядеть так http://take.ms/jB0IS
     
  9. prandros

    prandros

    Сообщения:
    9
    Симпатии:
    1
    Баллы:
    3
    Ошибка( royal-cup.com.ua/shop/kartonny-j-stakan-110ml-dizajn-tea-time/
     
  10. searchingman

    searchingman Местный

    Сообщения:
    1.634
    Симпатии:
    553
    Баллы:
    113
    У Вас функция cf_woocommerce_after_shop_loop_item не существует. Я же написал, что код добавить "дополнительно к вышеуказанному коду". Т.е. в functions.php должно быть так
    PHP:
    add_action('woocommerce_after_shop_loop_item','cf_woocommerce_after_shop_loop_item');
    add_action('woocommerce_single_product_summary','cf_woocommerce_after_shop_loop_item',25);
    function 
    cf_woocommerce_after_shop_loop_item() {
        global 
    $post;
        if (
    get_post_meta($post->ID'cf_short_description'true))
            echo 
    '<span class="cf_short_description">'.get_post_meta($post->ID'cf_short_description'true).'</span>';
    }
     
    Последнее редактирование: 31 июл 2015
    • Нравится Нравится x 1
    • Согласен Согласен x 1
  11. kvo

    kvo

    Сообщения:
    59
    Симпатии:
    6
    Баллы:
    8
    Всем привет, сделал так же , тема Flatsome
    Создал дополнительное поле: cf_short_description
    Вставил код:
    Код:
    add_action('woocommerce_after_shop_loop_item','cf_woocommerce_after_shop_loop_item');
    add_action('woocommerce_single_product_summary','cf_woocommerce_after_shop_loop_item',25);
    function cf_woocommerce_after_shop_loop_item() {
     global $post;
     if (get_post_meta($post->ID, 'cf_short_description', true))
     echo '<span class="cf_short_description">'.get_post_meta($post->ID, 'cf_short_description', true).'</span>';
    }
    

    В карточке товара вес отображается нормально, а в каталоге уехало под кнопку "Добавить в корзину".
    Что нужно сделать, чтобы в каталоге тоже вес отображался над кнопкой, как в карточке товара?
    Спасибо.

    0001.jpg 0002.jpg
     
  12. searchingman

    searchingman Местный

    Сообщения:
    1.634
    Симпатии:
    553
    Баллы:
    113
    Попробуйте уменьшить приоритет в хуке, т.е.
    PHP:
    add_action('woocommerce_after_shop_loop_item','cf_woocommerce_after_shop_loop_item',5);
     
  13. kvo

    kvo

    Сообщения:
    59
    Симпатии:
    6
    Баллы:
    8
    Пробовал изменить от 5 до 30, в карточке товара строка скачет вверх - вниз, а в каталоге остается на месте.
     
  14. searchingman

    searchingman Местный

    Сообщения:
    1.634
    Симпатии:
    553
    Баллы:
    113
    Приведите строку в которой изменяли.
     
  15. kvo

    kvo

    Сообщения:
    59
    Симпатии:
    6
    Баллы:
    8
    А , я балда , менял тут))
    Код:
    add_action('woocommerce_single_product_summary','cf_woocommerce_after_shop_loop_item',25);
    

    добавил ваш код

    Код:
    add_action('woocommerce_after_shop_loop_item','cf_woocommerce_after_shop_loop_item',5);
    
    
    и теперь появился дубль

    0003.jpg
     
  16. searchingman

    searchingman Местный

    Сообщения:
    1.634
    Симпатии:
    553
    Баллы:
    113
    Нужно не добавлять, но заменять.
    Т.е. вместо
    PHP:
    add_action('woocommerce_after_shop_loop_item','cf_woocommerce_after_shop_loop_item');
    вставить
    PHP:
    add_action('woocommerce_after_shop_loop_item','cf_woocommerce_after_shop_loop_item',5);
     
  17. kvo

    kvo

    Сообщения:
    59
    Симпатии:
    6
    Баллы:
    8
    Конечно, теперь всё заработало. Спасибо огромное!
     
  18. jkapro

    jkapro

    Сообщения:
    17
    Симпатии:
    1
    Баллы:
    3
    Это можно как то стилизировать?
     
  19. searchingman

    searchingman Местный

    Сообщения:
    1.634
    Симпатии:
    553
    Баллы:
    113
    Да. В примере указан класс 'cf_short_description'. На него можно прописать свои стили.
     
  20. jkapro

    jkapro

    Сообщения:
    17
    Симпатии:
    1
    Баллы:
    3
    Searchingman, помогите пожалуйста. Как дополнительную строку вывести в блоке где указан артикул, цена. И что бы перед самой надписью по умолчанию стояло слово например "Код:" , в карточке товара это слово было а на странице товаров в категориях его не было. Как бы сделать аналог артикул. Спасибо!
     
    • Нравится Нравится x 1