Woocommerce 更改订单下载文件
Woocommerce change order download files
我正在尝试操纵订单中文件的下载 URL link。
基本上,我有一个用例,当购买下载产品时,我需要将文件添加到订单才能下载它。所以我无法为产品添加订单 ID,因为当时没有订单。
要点是,每个可下载的产品都需要有一个动态 link,因为它会即时生成。
那么如何添加数据到产品下载URL link ->
WooCommerce 提供 2 个过滤器,可用于实现您正在寻找的内容:
A) woocommerce_download_product_filepath 用来指定URL包含哪些要下载的文件,它有以下参数:
- @param string $file_path 文件路径
- @param string $email_address 邮箱地址
- @param WC_Order|bool $order 订单对象或false
- @param WC_Product $product 产品对象
- @param WC_Customer_Download $download 下载数据
并且是这样注册的:
add_filter( 'woocommerce_download_product_filepath', 'change_woocommerce_file_download_path', 10, 5 );
这里有更多信息https://wp-kama.com/plugin/woocommerce/hook/woocommerce_download_product_filepath
B) woocommerce_file_download_filename 用于操作下载文件的名称,它接受以下参数:
- @param string $filename 可下载的文件名。
- @param int $product_id WC 产品编号
并且是这样注册的:
add_filter( 'woocommerce_file_download_filename', 'change_woocommerce_file_download_filename', 10, 2 );
这里有更多信息https://wp-kama.com/plugin/woocommerce/hook/woocommerce_file_download_filename
我正在尝试操纵订单中文件的下载 URL link。
基本上,我有一个用例,当购买下载产品时,我需要将文件添加到订单才能下载它。所以我无法为产品添加订单 ID,因为当时没有订单。
要点是,每个可下载的产品都需要有一个动态 link,因为它会即时生成。
那么如何添加数据到产品下载URL link ->
WooCommerce 提供 2 个过滤器,可用于实现您正在寻找的内容:
A) woocommerce_download_product_filepath 用来指定URL包含哪些要下载的文件,它有以下参数:
- @param string $file_path 文件路径
- @param string $email_address 邮箱地址
- @param WC_Order|bool $order 订单对象或false
- @param WC_Product $product 产品对象
- @param WC_Customer_Download $download 下载数据
并且是这样注册的:
add_filter( 'woocommerce_download_product_filepath', 'change_woocommerce_file_download_path', 10, 5 );
这里有更多信息https://wp-kama.com/plugin/woocommerce/hook/woocommerce_download_product_filepath
B) woocommerce_file_download_filename 用于操作下载文件的名称,它接受以下参数:
- @param string $filename 可下载的文件名。
- @param int $product_id WC 产品编号
并且是这样注册的:
add_filter( 'woocommerce_file_download_filename', 'change_woocommerce_file_download_filename', 10, 2 );
这里有更多信息https://wp-kama.com/plugin/woocommerce/hook/woocommerce_file_download_filename