產品有庫存時隱藏查詢按鈕
P粉860370921
P粉860370921 2023-09-02 17:30:31
0
1
458
<p>如何根據產品的庫存狀態隱藏特定按鈕? </p> <p>外掛程式正在創建此類:</p> <pre class="brush:php;toolbar:false;">function wdm_pefree_init() { // phpcs:ignore WordPress.NamingConventions.ValidFunctionName.FunctionNameInvalid if ( ! class_exists( 'Product_Enquiry_For_Woocommerce', false ) ) { include_once WDM_PE_PLUGIN_PATH . '/includes/class-product-enquiry-for-woocommerce.php'; } Product_Enquiry_For_Woocommerce::instance(); }</pre> <p>我只想在缺貨的每個產品的單一產品頁面上顯示此按鈕,但我無法讓我的程式碼正常運作。 </p> <p>我對 PHP 不太熟悉,所以我嘗試調整 Functions.php 檔案中的一些其他程式碼,但沒有成功。 </p> <p>任何幫助都會很棒,謝謝! </p> <p>我試過這段程式碼:</p> <pre class="brush:php;toolbar:false;">add_filter('woocommerce_get_availability', 'wcs_custom_get_availability', 1, 2); function wcs_custom_get_availability($availability, $_product) { // Remove Enquiry Button if (!$_product->is_in_stock()) { remove_action('Product_Enquiry_For_Woocommerce'); } return $availability; }</pre> <p>我還看到按鈕的 css 類別是 .pe-show-enq-modal,但我無法執行僅適用於缺貨產品的條件「可見性:隱藏」。 </p>
P粉860370921
P粉860370921

全部回覆(1)
P粉555696738

您正在尋找的是這樣的:

add_action( 'woocommerce_single_product_summary', 'remove_enquiry_button_if_out_of_stock', 30 );
function remove_enquiry_button_if_out_of_stock() {
    global $product;
    if ( ! $product->is_in_stock() ) {
        remove_action( 'woocommerce_single_product_summary', array( Product_Enquiry_For_Woocommerce::instance(), 'enquiry_button' ), 25 );
    }
}

或透過CSS:

.product.out-of-stock .pe-show-enq-modal {
    display: none;
}
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板