File manager - Edit - /home/palg2351/public_html/wp-content/themes/blocksy/inc/components/woocommerce/common/rest-api.php
Back
<?php add_action('blocksy:rest_api:live_search:fields', function () { register_rest_field('search-result', 'placeholder_image', [ 'get_callback' => function ($post, $field_name, $request) { if ($post['type'] !== 'product') { return null; } return wc_placeholder_img_src('thumbnail'); } ]); if ( isset($_GET['product_price']) && $_GET['product_price'] === 'true' ) { register_rest_field('search-result', 'product_price', array( 'get_callback' => function ($post, $field_name, $request) { if ($post['subtype'] !== 'product') { return 0; } $product = wc_get_product($post['id']); $price = $product->get_regular_price(); $sale = $product->get_price(); if ( ! $product->is_type('simple') && ! $product->is_type('external') ) { return $product->get_price_html(); } if ($product->is_taxable()) { if (defined('WC_ABSPATH')) { // WC 3.6+ - Cart and other frontend functions are not included for REST requests. include_once WC_ABSPATH . 'includes/wc-cart-functions.php'; include_once WC_ABSPATH . 'includes/wc-notice-functions.php'; include_once WC_ABSPATH . 'includes/wc-template-hooks.php'; } if (null === WC()->session) { $session_class = apply_filters( 'woocommerce_session_handler', 'WC_Session_Handler' ); WC()->session = new $session_class(); WC()->session->init(); } if (null === WC()->customer) { WC()->customer = new WC_Customer( get_current_user_id(), true ); } $tax_display_mode = get_option('woocommerce_tax_display_shop'); if ($tax_display_mode === 'incl') { $price = wc_get_price_including_tax($product, ['price' => $price]); $sale = wc_get_price_including_tax($product, ['price' => $sale]); } else { $price = wc_get_price_excluding_tax($product, ['price' => $price]); $sale = wc_get_price_excluding_tax($product, ['price' => $sale]); } } if ($sale && $product->is_on_sale()) { $sale_html = $sale ? blocksy_html_tag( 'ins', [ 'aria-hidden' => 'true' ], wc_price($sale) ) : ''; $price_html = blocksy_html_tag( 'del', [], wc_price($price) ); return $price ? blocksy_html_tag( 'span', [ 'class' => 'sale-price' ], $price_html . $sale_html ) : 0; } return $price ? wc_price($price) : 0; }, 'update_callback' => null, 'schema' => [ 'description' => __('Product Price', 'blocksy'), 'type' => 'string' ], )); } if ( isset($_GET['product_status']) && $_GET['product_status'] === 'true' ) { register_rest_field('search-result', 'product_status', array( 'get_callback' => function ($post, $field_name, $request) { if ($post['subtype'] !== 'product') { return null; } $product = wc_get_product($post['id']); return $product->get_stock_status() === 'instock' ? __('In Stock', 'blocksy') : __('Out of Stock', 'blocksy'); }, 'update_callback' => null, 'schema' => [ 'description' => __('Product Status', 'blocksy'), 'type' => 'string' ], )); } });
| ver. 1.4 |
Github
|
.
| PHP 8.3.30 | Generation time: 0.07 |
proxy
|
phpinfo
|
Settings