php [Marketpress]在结帐页面添加服务条款/服务条款/条款和条件
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了php [Marketpress]在结帐页面添加服务条款/服务条款/条款和条件相关的知识,希望对你有一定的参考价值。
<?php
/*
Plugin Name: MarketPress Terms of Service
Plugin URI: https://premium.wpmudev.org/
Description: Adds Terms of Service on MarketPress checkout page
Author: Panos Lyrakis @ WPMUDEV
Author URI: https://premium.wpmudev.org/
License: GPLv2 or later
*/
if ( ! defined( 'ABSPATH' ) ) {
exit;
}
if ( ! class_exists( 'WPMUDEV_MP_TOS' ) ) {
class WPMUDEV_MP_TOS {
private static $_instance = null;
public static function get_instance() {
if( is_null( self::$_instance ) ){
self::$_instance = new WPMUDEV_MP_TOS();
}
return self::$_instance;
}
private function __construct() {
if( isset( $_GET[ 'token' ] ) && isset( $_GET[ 'PayerID' ] ) ){
return;
}
//add_filter( 'mp_cart/after_cart_html', array( $this, 'tos_after_cart' ), 40, 3 );
add_filter( 'mp_cart/cart_meta', array( $this, 'tos_after_cart' ), 40, 2 );
add_action( 'wp_footer', array( $this, 'tos_js' ), 99999 );
}
public function tos_after_cart( $html, $cart ){
if ( $payment_method = mp_get_post_value( 'payment_method' ) ) {
$html .= $this->tos_checkbox();
}
return $html;
}
public function tos_checkbox( $additional_class = '' ){
return '<div class="mp_checkout_field mp_checkout_checkbox '.$additional_class.'">
<label class="mp_form_label">
<input class="mp_form_checkbox" type="checkbox" id="mp-tos" /> I agree with the <a href="#">Terms of Service.</a>
</label>
</div>';
}
public function tos_js(){
if( ! function_exists( 'mp_is_shop_page' ) || ! mp_is_shop_page( 'checkout' ) ){
return;
}
?>
<script type="text/javascript">
(function($){
$(document).ready(function(){
$( document ).ajaxComplete(function( event, xhr, settings ) {
if( $('#mp-tos').length <= 0 && $( '#mp-cart-resume' ).length ){
var tos_option = '<?php echo trim(preg_replace('/\s+/', ' ', $this->tos_checkbox())); ?>';
$( '#mp-cart-resume' ).append( tos_option );
}
});
$( document ).on( 'click', '#mp-checkout-section-order-review-payment .mp_button-checkout', function( e ){
if(!$('#mp-tos').is(':checked')) {
e.preventDefault();
alert("You need to agree with terms and conditions");
return false;
}
return true;
});
});
})(jQuery);
</script>
<?php
}
}
add_action( 'plugins_loaded', function(){
$GLOBALS['WPMUDEV_MP_TOS'] = WPMUDEV_MP_TOS::get_instance();
});
}
以上是关于php [Marketpress]在结帐页面添加服务条款/服务条款/条款和条件的主要内容,如果未能解决你的问题,请参考以下文章
php [MarketPress] - 在产品的产品种类中添加虚拟产品类型
php [MarketPress] - 管理产品列表。在管理产品表中添加选择选项“无类别”。这应该显示所有产品
php 提供短代码以在任何页面中添加Pro Site结帐表单
php 在WooCommerce中创建直接购物车/结帐/页面添加到购物车按钮。
如何为 Ubercart 结帐完成页面设置主题
php [MarketPress] - 预览订单通知