Woocommerce 3商店页面上“添加到购物车”下的“添加额外”按钮

时间:2018-11-29 21:42:24

标签: php wordpress button woocommerce product

我是nube编码器,正在尝试在主页上产品Feed的“添加到购物车”按钮下添加一个额外的按钮。我使用简码在Woocommerce网站的首页上显示一种产品类别(在这种情况下,该网站可以用作目标网页,并且是Wordpress微型网站)。

问题是我无法在按钮下显示它。我有一个插件,可以添加一个额外的按钮,该按钮链接到预览文档,但仅在单个产品页面上。因此,我在代码中使用了该DIV类,并尝试将其插入产品Feed中。我想要实现的是印刷书籍的PDF预览。您可以在下面找到我的代码,我敢肯定这有很多错误。

我也不知道如何编码,以便它使用我在后端为每个产品预览文档插入的链接。现在,我具有用于测试目的的通用链接设置。

add_action( 'woocommerce_after_shop_loop_item', 'content_after_addtocart_button'); function content_after_addtocart_button() { 
echo '<div class="product_meta wcdp-preview-btn-div"><a class="wcdp-preview-btn thickbox" href="https://www.google.com/">Citește fragment</a></div>'; }

2 个答案:

答案 0 :(得分:1)

以下代码将在Woocommerce档案库中的默认退出按钮下的商店中添加一个自定义按钮(我增加了挂接优先级,因为其他插件似乎会造成麻烦)

add_action( 'woocommerce_after_shop_loop_item', 'add_loop_custom_button', 1000 );
function add_loop_custom_button() {
    global $product;

    $product_link = $product->get_permalink(); // Link to the product (if needed)

    // Define your button link
    $custom_link = home_url( "/something/" ) ;

    // Output
    echo '<div class="product_meta wcdp-preview-btn-div">
    <a class="button thickbox" href="' . esc_url( $custom_link ) .'">' . __( "Citește fragment" )  . '</a>
    </div>';
}

代码进入您的活动子主题(或活动主题)的function.php文件中。经过测试和工作。


添加-与Woo Document Preview插件配合使用:

要获取该按钮的预览文档链接,您将使用以下内容……

  

但是此插件似乎仅在单个产品页面上启用了特殊的Javascript,而在商店和归档页面上却未激活,因此该链接不会打开预览灯箱,而是在Google文档中打开预览。

add_action( 'woocommerce_after_shop_loop_item', 'add_loop_custom_button', 1000 );
function add_loop_custom_button() {
    global $product;

    // The PDF doc preview button link
    if( $pdf_doc = $product->get_meta('wcdp_preview_attachment') ){
        $preview_link  = "https://docs.google.com/viewer?url=" . urlencode($pdf_doc['url']);
        $preview_link .= "&embedded=true&TB_iframe=true&width=600&height=550";

        // Output
        echo '<div class="product_meta wcdp-preview-btn-div">
        <a class="button alt thickbox wcdp-preview-btn" href="' . esc_url( $preview_link ) .'">' . $pdf_doc['name']  . '</a>
        </div>';
    }
}

代码进入您的活动子主题(或活动主题)的function.php文件中。链接有效。

答案 1 :(得分:0)

add_action('woocommerce_after_shop_loop_item', 'content_after_addtocart_button');

function content_after_addtocart_button() {
   global $woocommerce;
   foreach($woocommerce->cart->get_cart() as $cart_item_key => $values ) {
      $_product = $values['data'];
      if( get_the_ID() == $_product->id ) {
         echo '<div class="product_meta wcdp-preview-btn-div"><a class="wcdp-preview-btn thickbox" href="http://localhost/cartsection/cart/">View Cart</a></div>';
      }
   }
}