當我過濾頁面的別名時,在WordPress函數中出現錯誤
P粉946336138
P粉946336138 2023-08-17 17:30:15
0
1
461
<p>這在商店頁面上可以正常工作,但在其他頁面上會拋出錯誤。 </p> <p>這與 if(is_page('shop')) 有關。 </p> <p><br /></p> <pre class="brush:html;toolbar:false;">function divi_engine_body_class( $classes ) { if(is_page('shop')) { $classes[] = 'woocommerce-page-SGARAGLINO'; return $classes; } } add_filter( 'body_class','divi_engine_body_class',99999);</pre> <p><br /></p> <p>錯誤訊息:PHP致命錯誤:Uncaught TypeError:array_unique():參數#1($array)必須是陣列類型,在/wordpress/core/6.2.2/wp-includes/post-template.php: 861處給了null。 </p>
P粉946336138
P粉946336138

全部回覆(1)
P粉269530053

如果is_shop()為真,函數只傳回$classes變量,而實際上它應該總是傳回$classes變數:

function divi_engine_body_class( $classes ) {
   if ( is_page( 'shop' ) ) {
        $classes[] = 'woocommerce-page-SGARAGLINO';
    }

    return $classes;
}

過濾器必須始終傳回一個值;如果不傳回值,幾乎總是會引發錯誤。

熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!