![](/img/trans.png)
[英]Woocommerce - Product Page - How to create AJAX on "Add To Cart" button?
[英]WooCommerce: How to add download button on product page?
我們在我們的電子商務網站上使用 WooCommerce 插件。 我想在產品頁面上添加一個按鈕,允許用戶免費下載PDF文件,而無需進入產品單頁。 此外,所有產品都需要有一個唯一的 PDF 文件。 這可能嗎?
PS我也在這里嘗試了一些答案。
是的,它可能。 使用metaboxio或CMB2創建單個產品元字段。 創建或編輯產品時,您可以在哪里上傳每個產品的 pdf 文件。
然后你可以使用 WooCommerce 鈎子來顯示下載按鈕。
MetaBox IO 示例:
將上面的代碼添加到你的functions.php 文件的底部。 確保已安裝並激活 metaboxio 插件。 您可以轉到插件-> 添加新-> 然后使用metboxio 搜索然后安裝並激活它。 之后,您可以根據建議復制粘貼代碼。
function rox-pdf-button( $meta_boxes ) {
$prefix = 'rox-';
$meta_boxes[] = array(
'id' => 'pdf-btn',
'title' => esc_html__( 'Upload PDF', 'pluginrox' ),
'post_types' => array('product' ),
'context' => 'advanced',
'priority' => 'default',
'autosave' => 'true',
'fields' => array(
array(
'id' => $prefix . 'product-pdf',
'type' => 'file_advanced',
'name' => esc_html__( 'Upload PDF File', 'pluginrox' ),
'desc' => esc_html__( 'Here you can upload your pdf file to show on single product page', 'pluginrox' ),
'mime_type' => 'application/pdf',
'max_file_uploads' => 5,
'max_status' => 'true',
'size' => 5,
),
),
);
return $meta_boxes;
}
add_filter( 'rwmb_meta_boxes', 'rox-pdf-button' );
在我啟用了多個文件上傳選項的代碼中,您可以像單個文件上傳選項一樣簡單。 檢查 metabox io 文檔。
轉到您的產品,現在編輯任何產品,您現在可以選擇添加 PDF。
有關如何獲取上傳文件 url 的更多信息,請查看此文檔。
使用 WooCommerce 單一產品掛鈎在您的產品上發布下載按鈕。
顯示下載按鈕的示例編碼:
add_action( 'woocommerce_after_add_to_cart_form', 'rox_single_download_button', 5 );
function rox_single_download_button() {
$files = rwmb_meta( 'rox-product-pdf' );
foreach ( $files as $file ) {?>
<a href="<?php echo $file['url']; ?>"><?php echo $file['name']; ?></a>
<?php }
}
如果您想在產品存檔頁面/WooCommerce 商店頁面上添加按鈕,那么您必須在產品商店或環鈎上申請。
你可以試試下面的代碼,讓我知道它是否有效,因為我沒有在商店頁面上測試過。 我只在單頁上測試過,但它應該可以工作。
add_action('woocommerce_after_shop_loop_item', 'rox_loop_download_button', 5);
function rox_loop_download_button() {
global $product;
$product_id = $product->get_id();
$files = rwmb_meta('rox-product-pdf', '', $product_id);
foreach ($files
as $file) { ?>
<a href="<?php echo $file['url']; ?>"><?php echo $file['name']; ?></a>
<?php }
}
有關更多詳細信息, 您可以查看此鏈接。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.