我剛剛安裝了一個新的插件(WooCommerce SEO插件),它在我的網站上引起了一個關鍵錯誤,導致我無法進入后臺的Wordpress/WooCommerce Dashboard的產品區域。(顯示發生了嚴重的錯誤,而且頁面是白色的,并有警告文字)
網站實際上運行良好。
網站實際上運行良好,但當這個WooCommerce SEO插件激活時,我無法在產品儀表板中編輯或查看任何產品。
我已經縮小了沖突的范圍,但不知道如何解決它。是的,我可以禁用該插件,但我需要這樣做,沖突是基于我在子主題的Functions.php檔案中加入的自定義代碼。這顯示了當庫存不足時的警報(只剩下一個):
//WooCommerce Stock訊息
add_filter( 'woocommerce_get_availability', 'mw_get_availability', 1, 2 ) 。
function mw_get_availability( $availability, $_product) {
//change text "In Stock" to 'SPECIAL ORDER' .
global $product;
if ( $_product->is_in_stock() && $product-> get_stock_quantity() < 2 ) $availability['availability'] = $product->get_stock_quantity() 。 ' '.__('IN STOCK <p style="border:3px; border-style:solid; font-weight: bold; border-color:#FF0000; padding: 15px;">匆忙! 最后一個可用!</p>','woocommerce')。)
//change text "Out of Stock' to 'SOLD OUT' .
if ( !$_product-> is_in_stock() ) $availability['availability'] = __('SOLD OUT', 'woocommerce')。
return $availability。
}
這段代碼在我的網站上運行得很好。然而,當與WooCommerce SEO插件一起使用時,我得到了以下錯誤:
Error Details
=============
在檔案/home/site/public_html/website/wp-content/themes/photome-child/functions.php的88行引起了E_ERROR型別的錯誤。Error訊息。未被發現的錯誤。呼叫成員函式 get_stock_quantity(網站/public_html/website/wp-內容/主題/照片-兒童/功能。 php:88
Stack trace。
#0 /home/site/public_html/website/wp-includes/class-wp-hook。 php(303)。mw_get_availability(>Array, Object(WC_Product_Simple))
#1 /home/site/public_html/website/wp-includes/plugin。 php(189)。WP_Hook->apply_filters(>Array, Array>)
#2 /home/site/public_html/網站/wp-內容/插件。 title">plugins/woocommerce/includes/摘要/摘要-wc-產品。 php(2061)。apply_filters('woocommerce_get... ', Array, Object(WC_Product_Simple))
#3 /home/site/public_html/網站/wp-內容/插件。 title">插件/wpseo-woocommerce/classes。 title">classes/woocommerce-seo。 php(1280)。WC_Product->get_availability()
#4 /home/site/public_html/網站/wp-內容/插件。 title">插件/wpseo-woocommerce/classes。 title">classes/woocommerce-seo。 php(916)。Yoast_WooCommerce_SEO->localize_woo_script()
#5 /home/site/public_html/website/wp-includes/class-wp-hook。 php(303)。Yoast_WooCommerce_SEO->enqueue_scripts(span class="hljs-string">'edit.php')
#6 /home/the
錯誤始于這一行:
if ( $_product-> is_in_stock() && $product-> get_stock_quantity() < 2 ) $availability['availability'] = $product->get_stock_quantity() 。 ' '.__('IN STOCK <p style="border:3px; border-style:solid; font-weight: bold; border-color:#FF0000; padding: 15px;">匆忙! Last one AVAILABLE!</p>', 'woocommerce')。
我在網上搜索了一下,發現這可能是因為WooCommerce SEO使用了一個陣列,這導致了一個錯誤?
我真的很想使用WooCommerce SEO 并且能夠使用我的簡單的自定義代碼,該代碼運行良好。
希望有人能看到我的自定義代碼有一個簡單的修復方法,這樣我就可以更新它,使它不會引起這個錯誤。
我被難住了。
如果有任何幫助,我們將不勝感激,謝謝。
uj5u.com熱心網友回復:
我對你的代碼做了一些修改,試試這個。
//WooCommerce Stock message
add_filter( 'woocommerce_get_availability', 'mw_get_availability', 1, 2 ) 。
function mw_get_availability( $availability, $_product) {
//change text "In Stock" to 'SPECIAL ORDER' .
global $product;
if ( $_product->is_in_stock() && $_product -> get_stock_quantity() < 2 ) $availability['availability'] = $_product->get_stock_quantity() 。 ' '.__('IN STOCK <p style="border:3px; border-style:solid; font-weight: bold; border-color:#FF0000; padding: 15px;">匆忙! 最后一個可用!</p>','woocommerce')。)
//change text "Out of Stock' to 'SOLD OUT' .
if ( !$_product-> is_in_stock() ) $availability['availability'] = __('SOLD OUT', 'woocommerce')。
return $availability。
}
轉載請註明出處,本文鏈接:https://www.uj5u.com/qianduan/307833.html
標籤:
