Файловый менеджер - Редактировать - /home/tuudkjt/globeasy/wp-content/plugins/woo-multi-currency/plugins/learnpress.php
Назад
<?php /** * Class WOOMULTI_CURRENCY_F_Plugin_LearnPress */ if ( ! defined( 'ABSPATH' ) ) { exit; } class WOOMULTI_CURRENCY_F_Plugin_LearnPress { protected $settings; public function __construct() { $this->settings = WOOMULTI_CURRENCY_F_Data::get_ins(); if ( $this->settings->get_enable() ) { if ( is_plugin_active( 'learnpress/learnpress.php' ) ) { $check_version = get_option( 'learnpress_version', '' ); if ( $check_version && version_compare( $check_version, '4.2.7', '>=' ) ) { add_filter( 'learn-press/course/regular-price', array( $this, 'learn_press_course_slash_regular_price' ), 99, 2 ); add_filter( 'learn-press/course/sale-price', array( $this, 'learn_press_course_slash_sale_price' ), 99, 2 ); add_filter( 'learn-press/course/regular-price-html', array( $this, 'learn_press_course_slash_regular_price_html' ), 99, 3 ); add_filter( 'learn_press_course_price_html', array( $this, 'learn_press_course_slash_price_html' ), 99, 3 ); //deprecated_function // add_filter( 'learn_press_get_cart_subtotal', array( // $this, // 'learn_press_get_cart_subtotal' // ) ); // add_filter( 'learn_press_get_cart_total', array( // $this, // 'learn_press_get_cart_total' // ) ); add_filter( 'learn-press/cart-total', array( $this, 'learn_press_slash_cart_total' ) ); add_filter( 'learn-press/cart-subtotal', array( $this, 'learn_press_slash_cart_subtotal' ) ); add_filter( 'learn-press/cart/item-subtotal', array( $this, 'learn_press_cart_item_subtotal' ), 10, 4 ); /*LearnPress – WooCommerce Payment Methods Integration*/ // add_filter( 'learn-press/woo-course-price', array( // $this, // 'learn_press_woo_course_price' // ), 10, 2 ); add_filter( 'learn-press/woo-course/price', array( $this, 'learn_press_slash_woo_course_price' ), 10, 2 ); add_filter( 'learn-press/woo-course/regular-price', array( $this, 'learn_press_slash_woo_course_regular_price' ), 10, 2 ); add_filter( 'learn-press/woo-course/sale-price', array( $this, 'learn_press_slash_woo_course_sale_price' ), 10, 2 ); } elseif ( version_compare( learn_press_get_current_version(), '4.1.5', '>=' ) ) { add_filter( 'learn-press/course/regular-price', array( $this, 'learn_press_course_regular_price' ), 99, 2 ); add_filter( 'learn_press_course_price_html', array( $this, 'learn_press_course_price_html_new' ), 99, 3 ); add_filter( 'learn_press_get_cart_subtotal', array( $this, 'learn_press_get_cart_subtotal' ) ); add_filter( 'learn_press_get_cart_total', array( $this, 'learn_press_get_cart_total' ) ); add_filter( 'learn-press/cart/item-subtotal', array( $this, 'learn_press_cart_item_subtotal' ), 10, 4 ); /*LearnPress – WooCommerce Payment Methods Integration*/ add_filter( 'learn-press/woo-course-price', array( $this, 'learn_press_woo_course_price' ), 10, 2 ); } else { add_filter( 'learn-press/course-price', array( $this, 'learn_press_course_price' ), 99, 2 ); add_filter( 'learn_press_course_price_html', array( $this, 'learn_press_course_price_html' ), 99, 2 ); add_filter( 'learn_press_course_origin_price_html', array( $this, 'learn_press_course_origin_price_html' ), 99, 2 ); } } } } public function learn_press_slash_woo_course_price( $price, $course ) { return wmc_get_price( $price ); } public function learn_press_slash_woo_course_regular_price( $price, $course ) { return wmc_get_price( $price ); } public function learn_press_slash_woo_course_sale_price( $price, $course ) { return wmc_get_price( $price ); } public function learn_press_slash_cart_subtotal( $price ) { if ( ! $this->is_default_currency() ) { $price = $this->wc_price( wmc_get_price( $GLOBALS['LearnPress']->get_cart()->subtotal ) ); } return $price; } public function learn_press_slash_cart_total( $price ) { if ( ! $this->is_default_currency() ) { $price = $this->wc_price( wmc_get_price( $GLOBALS['LearnPress']->get_cart()->total ) ); } return $price; } public function learn_press_course_slash_price_html( $price_html, $has_sale, $course_id ) { $course = learn_press_get_course( $course_id ); if ( $course ) { if ( is_plugin_active( 'thim-course-builder/thim-course-builder.php' ) && function_exists( 'learn_press_format_price' ) ) { $price_arr = explode( ' ', $price_html ); if ( count( $price_arr ) > 1 ) { $price_html = sprintf( '<span class="origin-price">%s</span>', $this->wc_price( $course->get_regular_price() ) ); $price_html .= sprintf( '<span class="price">%s</span>', $this->wc_price( $course->get_price() ) ); } else { $price_html = esc_html( $this->wc_price( $course->get_price() ) ); // $price_html = $course->get_price(); // $c_currency = $this->settings->get_current_currency(); // $current_currency_symbol = get_woocommerce_currency_symbol( $c_currency ); // return learn_press_format_price( $price_html, $current_currency_symbol ); } } else { if ( $has_sale ) { $price_html = sprintf( '<span class="origin-price">%s</span>', $this->wc_price( $course->get_regular_price() ) ); $price_html .= sprintf( '<span class="price">%s</span>', $this->wc_price( $course->get_price() ) ); } else { $price_html = esc_html( $this->wc_price( $course->get_price() ) ); } } } return $price_html; } public function learn_press_course_slash_regular_price_html( $price, $course_id ) { $course = learn_press_get_course( $course_id ); if ( $course ) { $price = esc_html( $this->wc_price( $course->get_regular_price() ) ); } return $price; } public function learn_press_course_slash_sale_price( $price, $course_id ) { if ( is_float( $price ) ) { $price = wmc_get_price( $price ); } elseif ( is_string( $price ) ) { $course = learn_press_get_course( $course_id ); if ( $course ) { $price = wmc_get_price( $course->get_regular_price() ); $price = $this->wc_price( $price ); } } return $price; } public function learn_press_course_slash_regular_price( $price, $course_id ) { if ( is_float( $price ) ) { $price = wmc_get_price( $price ); } elseif ( is_string( $price ) ) { $course = learn_press_get_course( $course_id ); if ( $course ) { $price = wmc_get_price( $course->get_regular_price() ); $price = $this->wc_price( $price ); } } return $price; } public function learn_press_woo_course_price( $price, $course ) { return wmc_get_price( $price ); } /** * @param $course_subtotal * @param $course LP_Course * @param $quantity * @param $lp_cart * * @return string */ public function learn_press_cart_item_subtotal( $course_subtotal, $course, $quantity, $lp_cart ) { if ( ! $this->is_default_currency() ) { $price = $course->get_price(); $row_price = $price * $quantity; $course_subtotal = $this->wc_price( wmc_get_price( $row_price ) ); } return $course_subtotal; } public function learn_press_get_cart_total( $price ) { if ( ! $this->is_default_currency() ) { $price = $this->wc_price( wmc_get_price( $GLOBALS['LearnPress']->get_cart()->total ) ); } return $price; } public function learn_press_get_cart_subtotal( $price ) { if ( ! $this->is_default_currency() ) { $price = $this->wc_price( wmc_get_price( $GLOBALS['LearnPress']->get_cart()->subtotal ) ); } return $price; } public function learn_press_course_regular_price( $price, $course_id ) { if ( is_float( $price ) ) { // $price = wmc_get_price( $price ); } elseif ( is_string( $price ) ) { $course = learn_press_get_course( $course_id ); if ( $course ) { $price = wmc_get_price( $course->get_regular_price() ); $price = $this->wc_price( $price ); } } return $price; } public function learn_press_course_price_html_new( $price_html, $has_sale, $course_id ) { $course = learn_press_get_course( $course_id ); if ( $course ) { $price_html = ''; if ( $has_sale ) { $price_html .= sprintf( '<span class="origin-price">%s</span>', $course->get_regular_price_html() ); } $price_html .= sprintf( '<span class="price">%s</span>', $this->wc_price( wmc_get_price( $course->get_price() ) ) ); } return $price_html; } public function learn_press_course_price( $price, $product_id ) { return wmc_get_price( $price ); } /** * @param $price * @param $course LP_Course * * @return string */ public function learn_press_course_price_html( $price, $course ) { return $this->wc_price( $course->get_price() ); } /** * @param $sale_price * @param $course LP_Course * * @return string */ public function learn_press_course_origin_price_html( $sale_price, $course ) { if ( $course ) { if ( $course->has_sale_price() ) { $sale_price = $this->wc_price( wmc_get_price( $course->get_origin_price() ) ); } } return $sale_price; } public function wc_price( $price, $args = array() ) { extract( apply_filters( 'wc_price_args', wp_parse_args( $args, array( 'ex_tax_label' => false, 'currency' => get_woocommerce_currency_symbol(), 'decimal_separator' => wc_get_price_decimal_separator(), 'thousand_separator' => wc_get_price_thousand_separator(), 'decimals' => wc_get_price_decimals(), 'price_format' => get_woocommerce_price_format(), ) ) ) ); $negative = $price < 0; $price = apply_filters( 'raw_woocommerce_price', floatval( $negative ? $price * - 1 : $price ) ); $price = apply_filters( 'formatted_woocommerce_price', number_format( $price, $decimals, $decimal_separator, $thousand_separator ), $price, $decimals, $decimal_separator, $thousand_separator ); if ( apply_filters( 'woocommerce_price_trim_zeros', false ) && $decimals > 0 ) { $price = wc_trim_zeros( $price ); } $formatted_price = ( $negative ? '-' : '' ) . sprintf( $price_format, $currency, $price ); return $formatted_price; } private function is_default_currency() { return $this->settings->get_current_currency() === $this->settings->get_default_currency(); } }
| ver. 1.6 |
Github
|
.
| PHP 8.1.34 | Генерация страницы: 0 |
proxy
|
phpinfo
|
Настройка