Я работаю над отображением конкретной пользовательской ценой Pricelist Price, и она работает должным образом. Однако, когда пользователь посещает страницу списка продуктов, для загрузки требуется больше времени, поскольку я делаю запрос базы данных, чтобы получить цену. Я думал о кэшировании цены, но в любом случае мне нужно позвонить в базу данных для кэширования цены в первый раз. Еще одна проблема, которую цены часто меняются, поэтому я не могу удерживать кэш в течение более длительного времени.add_filter( 'woocommerce_product_get_price', array( $this, 'show_pricelist_price' ), 10, 2);
add_filter( 'woocommerce_product_get_sale_price', array( $this, 'show_pricelist_price' ), 10, 2);
add_filter( 'woocommerce_product_variation_get_price', array( $this, 'show_pricelist_price' ), 10, 2);
public function show_pricelist_price($price, $product) {
if(is_admin())
return $price;
if( current_user_can('manage_options') ) {
return $price;
}
$current_user_id = get_current_user_id();
$id= $product->get_id();
$sale_price = get_post_meta( $id, '_sale_price', true);
$pricelist_id = get_user_meta($current_user_id,'user_pricelist_b2bwoo', true);
if( !is_user_logged_in()) {
$pricelist_id =31;
}
global $wpdb;
$table_name = $wpdb->prefix . 'woo_pricelists_products';
$sku = $product->get_sku();
if (empty($sku) || empty($pricelist_id)) {
return $price;
}
if(!empty($pricelist_id)) {
$query = $wpdb->prepare(
"SELECT final_price FROM $table_name WHERE pricelist_id = %d AND sku = %s",
$pricelist_id,
$sku
);
$get_baseprice = $wpdb->get_var($query);
}
if(!empty($get_baseprice) && empty($sale_price)) {
return $get_baseprice;
}
else {
return $price;
}
}
Подробнее здесь: https://stackoverflow.com/questions/796 ... ommerce-pr
Как добавить Pricelist Price, конкретную пользователь, не прерывая скорость страницы продукта WooCommerce ⇐ Php
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение
-
-
Woocommerce Добавление класса суммы цены («woocommerce-Price-amount sum») для возврата $price
Anonymous » » в форуме Php - 0 Ответы
- 80 Просмотры
-
Последнее сообщение Anonymous
-
-
-
WooCommerce PHP Получите конкретную категорию продукта для дополнительного поля продукта
Anonymous » » в форуме Php - 0 Ответы
- 88 Просмотры
-
Последнее сообщение Anonymous
-
-
-
Условно установите конкретную цену продукта на странице продукта и в корзине Woocommerce.
Anonymous » » в форуме Php - 0 Ответы
- 125 Просмотры
-
Последнее сообщение Anonymous
-