Поддержка WooCommerce Дописать текст после цены только на странице товара

  • Решено rofl113

    (@rofl113)


    Здравствуйте. Необходимо дописать после цены товара на странице товара (в списке товаров должно остаться как есть)
    Я пробовал так, но это меняет в обоих случаях:

    // Добавляем текст  после цены в подробном просмотре товара
    function r5ua_change_product_price( $price ) {
        $price .= ' TEXT';
        return $price;
    }
    add_filter( 'woocommerce_get_price_html', 'r5ua_change_product_price' );
    • Тема изменена 2 мес. назад пользователем  Юрий. Причина: Перенес в раздел WC
Просмотр 5 ответов — с 1 по 5 (всего 5)
  • Если нет такой возможности то может можно изменить заголовок продукта дописав его но только на странице товара

    Модератор Юрий

    (@yube)

    Попробуйте так

    function r5ua_change_product_price( $price ) {
        if ( is_product() )  $price .= ' TEXT';
        return $price;
    }
    add_filter( 'woocommerce_get_price_html', 'r5ua_change_product_price' );
    

    Матчасть: https://docs.woocommerce.com/document/conditional-tags/

    Здорово, спасибо большое!
    А могу я как то узнать внутри функции что за продукт? Получить Id или WC_Product?

    Почитал матчасть, вроде вторая переменная функции и есть продукт

    Решил вопрос вот так:

    // Добавляем текст  после цены в подробном просмотре товара
    function r5ua_change_product_price( $price ) {
        if ( is_product() )  {
            $product_this = new WC_Product(get_the_ID());
            $price .= '<br />' . '<span itemprop="productID" class="sku">Артикул: ' . $product_this->sku . '</span>';
        }
        return $price;
    }
    add_filter( 'woocommerce_get_price_html', 'r5ua_change_product_price' );
Просмотр 5 ответов — с 1 по 5 (всего 5)