WooCommerce 自定义商品价格显示HTML结构

WooCommerce 虽然有中文本地化支持,但整个插件本身是按照欧美人的习惯去开发的,一些细节上不可能做到各个国家或地区的用户满意。下面就用一个例子抛砖引玉,自定义商品价格显示HTML结构。

默认的话,WooCommerce 输出商品价格显示HTML结构是这样的(当商品本身设置了一般价格与优惠价):

<a href=""> <span class="onsale">促销中</span> <img src="xxxx.png"> <h3>商品名称</h3> <span class="price"><del><span class="amount">¥109.00</span></del> <ins><span class="amount">¥99.00</span></ins></span> </a>

前端显示的话类似:

新旧价格的显示大概遵循“¥109.00 ¥99.00”的形式,但根据国人的习惯(不知道是不是这样?),一般显示为 “¥99.00 ¥109.00 ”。要想显示出我们的效果的话,那就可以通过对woocommerce_get_price_html 函数下刀,hook之。

代码如下:

<?php // DeveWork.com //这是一个可以修改woocommerce_get_price_html 函数默认输出的html代码的例子, //作用是调换新旧价格的位置 //感谢http://wordpress.stackexchange.com/questions/83367/how-to-edit-the-get-price-html-on-woocommerce   add_filter( 'woocommerce_get_price_html', 'dw_change_default_price_html', 100, 2 );   function dw_change_default_price_html( $price,$product ){ if ( $product->price > 0 ) { if ( $product->price && isset( $product->regular_price ) ) { $from = $product->regular_price; $to = $product->price; return '<ins><span class="amount">'.( ( is_numeric( $to ) ) ? woocommerce_price( $to ) : $to ) .'</span></ins> <del><span class="amount">'. ( ( is_numeric( $from ) ) ? woocommerce_price( $from ) : $from ) .' </span></del>'; } else { $to = $product->price; return '<ins><span class="amount">' . ( ( is_numeric( $to ) ) ? woocommerce_price( $to ) : $to ) . '</span></ins>'; } } else { return '免费'; } } ?>

代码已经托管到 Github gist 上:https://gist.github.com/Jeff2Ma/91c6f19ab63552be269c

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏FreeBuf

我是如何破解亚马逊一键购物按钮的?

写在前面的话(原文作者) 怎么和婴儿沟通呢?他/她什么时候睡觉?什么时候起来? 这看起来是个简单的问题,但并不好解决,于是我开始选择一些婴儿跟踪应用程序,但是功...

2126
来自专栏SDNLAB

思博伦OpenFlow性能测试白皮书上篇

OpenFlow性能测试目前依然处于起步阶段,虽然有少数的开源工具用于测试OpenFlow性能,但是比较OpenFlow产品的性能还没有一个标准。思博伦测试仪提...

3686
来自专栏Brian

深入浅出 VXLAN

---- 概述 如果大家有做网络或者云计算相关的,大家应该都知道VXLAN以及SDN技术,在之前VPC相关技术、概念和一些技术方案。今天着重来记录一下博主对VX...

8279
来自专栏DeveWork

WordPress自定义栏目运用实例Ⅰ:添加文章来源

WordPress 的自定义栏目是一个非常强大的功能,借助它,你的WordPress 站点不仅仅可以是博客,也可以是购物店,企业站,CMS等等。如果你对Word...

2009
来自专栏逍遥剑客的游戏开发

关于游戏自动更新工具的思考

2747
来自专栏phodal

如何在 8 小时内开发上线一个在线表单系统

欢迎使用 moform,一个无需注册、基于 Serverless 的开源表单系统。 在使用开发了一个精简版的 Serverless 日志存储系统 molog 之...

49511
来自专栏SDNLAB

数据中心网络架构—VL2

一、背景 随着网络技术的发展,数据中心已经成为提供IT网络服务、分布式并行计算等的基础架构。数据中心应用范围愈加广泛,应用需求不断增加,业务数据量达T/P级以上...

5904
来自专栏大数据智能实战

Spark 2.0.0正式版编译及问题分析

从上次编译了技术预览版2.0.1之后,官网终于放出了正式版本的2.0.0版本。 Spark Release 2.0.0(见http://spark.apach...

1936
来自专栏小白课代表

跨越距离,一键远控——向日葵远程控制

4734
来自专栏ytkah

wamp支持win10吗?怎么设置?

  上周ytkah总算把系统升级到win10了,可怎么设置wamp支持win10呢?启动wampwerver是处于黄色状态,打开本地页面是空白,应该是端口问题。...

3609

扫码关注云+社区