【问题标题】:Click on product directs to cart点击产品重定向到购物车
【发布时间】:2018-07-11 11:20:51
【问题描述】:

我在类别页面上有一个产品循环。

我需要当用户点击产品时,他将不会被引导到产品页面,而是被引导到购物车页面。

两件事会同时发生:

  1. 产品将被添加到购物车;和
  2. 用户将被引导至购物车页面

实现这一目标的最佳方法是什么?

  1. 改变这个href?

    <?php the_permalink(); ?>
    
  2. 将产品的 a 标签替换为添加到购物车循环的 a 标签?

     <?php
       $args = array(
       'post_type' => 'product',
       'stock' => 1,
       'posts_per_page' => 4,
       'orderby' =>'date',
       'order' => 'DESC' );
       $loop = new WP_Query( $args );
       while ( $loop->have_posts() ) : $loop->the_post(); global    $product; ?>
       <div class="span3">
       <a id="id-<?php the_id(); ?>" href="<?php the_permalink(); ?>"      title="<?php the_title(); ?>">
       <?php if (has_post_thumbnail( $loop->post->ID )) echo    get_the_post_thumbnail($loop->post->ID, 'shop_catalog'); else echo '<img   src="'.woocommerce_placeholder_img_src().'" alt="My Image Placeholder"   width="65px" height="115px" />'; ?>
       <h3><?php the_title(); ?></h3>
       <span class="price"><?php echo $product->get_price_html(); ?>   </span>
       </a>
       <?php woocommerce_template_loop_add_to_cart( $loop->post, $product ); ?>
       </div><!-- /span3 -->
      <?php endwhile; ?>
      <?php wp_reset_query(); ?>
    

更新:

将此 URL href=”http://yourdomain.com/cart/?add-to-cart=25 添加到“添加到购物车”按钮 href,会将一个简单的产品添加到购物车并随后重定向到购物车。

https://businessbloomer.com/woocommerce-custom-add-cart-urls-ultimate-guide/

我仍然需要点击产品来实现这一点,而不是点击添加到购物车按钮。

【问题讨论】:

  • 您希望链接将用户直接带到购物车,还是先将产品添加到购物车,然后将用户重定向到购物车页面?跨度>
  • 嗨柯克,是的,我希望包含 HTML 中产品的链接将用户直接带到购物车......

标签: php wordpress woocommerce


【解决方案1】:

以下将做两件事:

  1. 将产品添加到您的购物车;和
  2. 将用户重定向到购物车

更新的代码行:

<a id="id-<?php the_id(); ?>" href="<?php site_url(); ?>/cart/?add-to-cart=<?php the_ID(); ?>" title="<?php the_title(); ?>">

你的完整代码应该变成:

<?php
$args = array(
    'post_type' => 'product',
    'stock' => 1,
    'posts_per_page' => 4,
    'orderby' =>'date',
    'order' => 'DESC'
);
$loop = new WP_Query( $args );
while ( $loop->have_posts() ) : $loop->the_post(); global $product; ?>
    <div class="span3">
        <!-- Line below is changed -->
        <a id="id-<?php the_id(); ?>" href="<?php site_url(); ?>/cart/?add-to-cart=<?php the_ID(); ?>" title="<?php the_title(); ?>">
            <?php if (has_post_thumbnail( $loop->post->ID )) echo get_the_post_thumbnail($loop->post->ID, 'shop_catalog'); else echo '<img src="'.woocommerce_placeholder_img_src().'" alt="My Image Placeholder" width="65px" height="115px" />'; ?>
            <h3><?php the_title(); ?></h3>
            <span class="price"><?php echo $product->get_price_html(); ?>   </span>
        </a>
        <?php woocommerce_template_loop_add_to_cart( $loop->post, $product ); ?>
    </div><!-- /span3 -->
<?php endwhile; ?>
<?php wp_reset_query(); ?>

如果您不希望显示“添加到购物车”按钮,您可以完全删除 woocommerce_template_loop_add_to_cart() 函数。

此示例仅适用于简单产品。可变产品需要woocommerce_template_loop_add_to_cart() 函数来确保您可以在产品的可用变体之间进行选择。

【讨论】:

  • 优秀!!非常感谢您抽出宝贵时间与我分享您的知识:))
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-08-30
  • 1970-01-01
  • 2018-03-31
  • 1970-01-01
  • 2014-06-01
相关资源
最近更新 更多