OwlCyberSecurity - MANAGER
Edit File: WoocommerceProductVariablePlaceholderDataStoreCPT.php
<?php /** * Register data store for ET_Theme_Builder_Woocommerce_Product_Variable_Placeholder_Data_Store_CPT * which aims to bypass database value retrieval and simply returns default value as placeholder * * @since 4.0.10 */ class ET_Theme_Builder_Woocommerce_Product_Variable_Placeholder_Data_Store_CPT extends WC_Product_Variable_Data_Store_CPT implements WC_Object_Data_Store_Interface, WC_Product_Variable_Data_Store_Interface { /** * Basically the original read() method with one exception: retruns default value (which is * placeholder value) and remove all database value retrieval mechanism so any add-ons * on TB refers to TB placeholder product data * * @since 4.0.10 * * @param WC_Product $product Product object. */ public function read( &$product ) { $product->set_defaults(); } /** * Register product type data store * * @since 4.0.10 * @since 4.3.3 register the store for tb-placeholder-variation product * * @param array $stores * * @return array */ public static function register_store( $stores ) { $stores['product-tb-placeholder'] = 'ET_Theme_Builder_Woocommerce_Product_Variable_Placeholder_Data_Store_CPT'; // Placeholder variation store requirement is identical to placeholder variable, which is // loading defaults as value and skipping database value retrieval; thus best keep thing // simple and reuse it for tb-placeholder-variation $stores['product-tb-placeholder-variation'] = 'ET_Theme_Builder_Woocommerce_Product_Variable_Placeholder_Data_Store_CPT'; return $stores; } } /** * Register product tb-placeholder's store * * @since 4.0.10 */ add_filter( 'woocommerce_data_stores', array( 'ET_Theme_Builder_Woocommerce_Product_Variable_Placeholder_Data_Store_CPT', 'register_store' ) );