Свяжите продукты Woocommerce напрямую с внешним сайтом (пропустите страницу с подробностями)

WP: 3.71 Тема: Юпитер (artbees) v.3.02 URL: http://thefastlearners.com/store/

Привет всем, у меня есть несколько продуктов Woocommerce, которые имеют внешнюю ссылку на Amazon или другие сайты.

Моя цель - связать эти продукты с их внешними страницами прямо со страницы магазина, без подробной страницы!

Уже попробовал расширение опции видимости, которое ничего не изменило.

Вот оригинальная выдержка content-product.php: `

$ mk_add_to_cart = 'id)).' "class =" add_to_cart_button "> '. apply_filters (' out_of_stock_add_to_cart_text ', (' READ MORE ',' woocommerce ')).' '; $ out_of_stock_badge ='. ',' woocommerce ').' ';} else {?>

switch ( $product->product_type ) {
case "external" :
    $link  = apply_filters( 'external_add_to_cart_url', get_permalink( $product->id ) );
    $label  = apply_filters( 'external_add_to_cart_text', __( 'Read More', 'woocommerce' ) );
    $icon_class = 'mk-moon-search-3';
    break;
default :
    $link  = apply_filters( 'add_to_cart_url', esc_url( $product->add_to_cart_url() ) );
    $label  = apply_filters( 'add_to_cart_text', __( 'ADD TO CART', 'woocommerce' ) );
    $icon_class = 'mk-moon-cart-plus';
    break;
}

if ( $product->product_type != 'external' ) {
    $mk_add_to_cart = &#039;<a href="&#039;. $link .&#039;" rel="nofollow" data-product_id="&#039;.$product->id.&#039;" class="add_to_cart_button product_type_&#039;.$product->product_type.&#039;"><i class="&#039;.$icon_class.&#039;"></i>&#039;. $label.&#039;</a>&#039;;
}
else {
    $mk_add_to_cart = &#039;&#039;;
}

} `

Который я изменил на

´<?php
$mk_add_to_cart = &#039**;<a href="<?php echo esc_url( $product_url )**; ?>" rel="nofollow" class="single_add_to_cart_button shop-flat-btn shop-skin-btn alt"></a>&#039;;
$out_of_stock_badge = &#039;<span class="mk-out-stock">&#039;.__( &#039;OUT OF STOCK&#039;, &#039;woocommerce&#039; ).&#039;</span>&#039;;

} еще {?>

switch ( $product->product_type ) {
case "external" :
    $link     = apply_filters( &#039;external_add_to_cart_url&#039;, esc_url( $product_url ) );
    $label     = apply_filters( &#039;external_add_to_cart_text&#039;, __(&#039;Read More&#039;, &#039;woocommerce&#039;) );
    $icon_class = &#039;mk-moon-search-3&#039;;
    break;
default :
    $link  = apply_filters( &#039;add_to_cart_url&#039;, esc_url( $product_url ) );
    $label  = apply_filters( &#039;add_to_cart_text&#039;, __( &#039;ADD TO CART&#039;, &#039;woocommerce&#039; ) );
    $icon_class = &#039;mk-moon-cart-plus&#039;;
    break;
}

if ( $product->product_type != &#039;external&#039; ) {
    $mk_add_to_cart = &#039;<a href="&#039;. $link .&#039;" rel="nofollow" data-product_id="&#039;.$product->id.&#039;" class="add_to_cart_button product_type_&#039;.$product->product_type.&#039;"><i class="&#039;.$icon_class.&#039;"></i>&#039;. $label.&#039;</a>&#039;;
}
else {
    $mk_add_to_cart = &#039;&#039;;
}`

Без каких-либо результатов, кроме того, что у меня нет кнопки, чтобы добавить что-либо.

из шаблона external.php я уже понял, что команда должна быть что-то вроде <?php echo esc_url( $product_url ); ?>

но я не понимаю, где поставить / связать это.

Было бы замечательно, если бы вы могли помочь мне здесь. Как только я получу эту работу, я могу изменить ссылки заголовка и изображения самостоятельно.

Спасибо маттис

1 ответ

Тебе стоит попробовать $product->product_url вместо простого $product_url,

Это сработало для меня на content-product.php стр.

Другие вопросы по тегам