WooCommerce 添加 亚马逊 速卖通等购买链接

加速器,跨境电商必备

本文分别介绍如何在前台和后台的页面中添加buy on amazon按钮。

后台商品编辑页面新增字段

一、找到wp-contentpluginswoocommerceincludesadminmeta-boxesviews html-product-data-general.php

<div class=“options_group pricing show_if_simple show_if_external hidden”></div>里面新增

woocommerce_wp_text_input(
array(
'id' => '_amazonurl',
'value' => $product_object->get_amazonurl( 'edit' ),
'data_type' => 'amazonurl',
'placeholder' => 'http://',
'label' => __( '亚马逊商品链接', 'woocommerce' ) ,
'description' => __( 'Enter the external URL to the product.', 'woocommerce' ),
)
);

 

后台商品的数据保存

二、找到 wp-contentpluginswoocommerceincludesdata-storesclass-wc-product-data-store-cpt.php

在protected $internal_meta_keys = array()里 新增

'_amazonurl',

protected function read_product_data( &$product ) {}里新增 (依据自己版本填写)

'amazonurl' => get_post_meta( $id, '_amazonurl', true ), //或者 '_amazonurl' => 'amazonurl',

protected function update_post_meta( &$product, $force = false ) { }里面新增

 

'_amazonurl' => 'amazonurl',

三、找到文件wp-contentpluginswoocommerceincludesadminmeta-boxesclass-wc-meta-box-product-data.php 

$errors = $product->set_props()里新增

'amazonurl' => esc_url_raw( wp_unslash( $_POST['_amazonurl'] ) ),

四、找到文件wp-contentpluginswoocommerceincludesabstractsabstract-wc-product.php

protected $data = array()里 增加

'amazonurl' => '',

public function get_sale_price( $context = ‘view’ ) {}下面新增

public function get_amazonurl( $context = 'view' ) {
return $this->get_prop( 'amazonurl', $context );
}

public function set_sale_price( $price ) {}下面新增

public function set_amazonurl( $amazonurl ) {
$this->set_prop(
'amazonurl', htmlspecialchars_decode( $amazonurl ) );
}

打开后台,已经有亚马逊的选项出现。

WooCommerce 添加 亚马逊 速卖通等购买链接

前端商品页面的实现

一、找到文件wp-contentpluginswoocommerceincludesabstractabstract-wc-product.php

public function get_price_html( $deprecated = ‘’ ) {}下面新增

public function get_amazonurl_html(){
return apply_filters(
'woocommerce_product_amazonurl', $this->get_amazonurl(), $this );
}

public function single_add_to_cart_text() {}下面新增

public function single_amazonurl() {
return apply_filters( 'woocommerce_product_single_amazonurl', __( 'Buy on Amazon', 'woocommerce' ), $this );
}

二、新建一个php文件,文件名为amazonurl.php,上传到wp-contentpluginswoocommercetemplatessingle-product 文件夹中

<?php
/**
* Single Product amazonurl
* @see https://docs.woocommerce.com/document/template-structure/
* @author WooThemes
* @package WooCommerce/Templates
* @version 3.0.0
*/
if ( ! defined( 'ABSPATH' ) ) {
exit; // Exit if accessed directly
}
global $product;
?>
<style>
.amazon{
clear:both;display:blcok;width:100%;height:45px;line-height:45px;background-color:red;text-align:center;margin-bottom:10px;border-radius:5px;font-weight:bold;
cursor:pointer;
}
.amazon a{
color:#fff;
}
.amazon:hover{
opacity:0.9;
}
.amazon a:hover{
background-color:red;
color:#fff;
border-radius:5px;
cursor:pointer;
}
</style>
<?php
$b=$product->get_amazonurl_html();
$a=$product->single_amazonurl(); if($b!==''){

echo "

";

}else{} ?>

 

三、找到文件wp-contentpluginswoocommerceincludeswc-template-functions.php

if ( ! function_exists( ‘woocommerce_template_single_title’ ) ) {}下面新增

if ( ! function_exists( 'woocommerce_template_single_amazonurl' ) ) {
function woocommerce_template_single_amazonurl() {
wc_get_template( 'single-product/amazonurl.php' );
}
}

四、找到文件wp-contentpluginswoocommerceincludeswc-template-hooks.php

add_action( ‘woocommerce_single_product_summary’, ‘woocommerce_template_single_meta’, 40 );下面新增

add_action( 'woocommerce_single_product_summary', 'woocommerce_template_single_amazonurl',35);

最效效果如下,样式可以在php中自调一下CSS。

WooCommerce 添加 亚马逊 速卖通等购买链接

 

用下面的插件也可以达到相同的效果

如果想同时加多个平台,例如Buy From Ebay 等,可以通过插件实行

插件地址:https://wordpress.org/plugins/multiple-external-product-urls-for-woocommerce/

后台也可以直接搜索:Multiple external product URLs for WooCommerce

前台显示效果

WooCommerce 添加 亚马逊 速卖通等购买链接

后台设置设置

WooCommerce 添加 亚马逊 速卖通等购买链接
版权声明:大卖家 发表于 21 June 2022 12:20 pm。
转载请注明:WooCommerce 添加 亚马逊 速卖通等购买链接 | 卖家说

相关文章

暂无评论

您必须登录才能参与评论!
立即登录
暂无评论...