Heim  >  Fragen und Antworten  >  Hauptteil

Ich erhalte eine Fehlermeldung in der WordPress-Funktion, wenn ich den Alias ​​der Seite filtere

<p>Dies funktioniert auf der Store-Seite einwandfrei, führt jedoch auf anderen Seiten zu einem Fehler. </p> <p>Das hat mit if(is_page('shop')) zu tun. </p> <p><br /></p> <pre class="brush:html;toolbar:false;">function divi_engine_body_class( $classes ) { if(is_page('shop')) { $classes[] = 'woocommerce-page-SGARAGLINO'; $classes zurückgeben; } } add_filter('body_class','divi_engine_body_class',99999);</pre> <p><br /></p> <p>Fehlermeldung: PHP Fatal Error: Uncaught TypeError: array_unique(): Parameter #1 ($array) muss vom Typ Array sein, in /wordpress/core/6.2.2/wp-includes/post-template.php : Null wird bei 861 angegeben. </p>
P粉946336138P粉946336138451 Tage vor467

Antworte allen(1)Ich werde antworten

  • P粉269530053

    P粉2695300532023-08-18 14:05:48

    如果is_shop()为真,该函数只返回$classes变量,而实际上它应该始终返回$classes变量:

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

    过滤器必须始终返回一个值;如果不返回值,几乎总会引发错误。

    Antwort
    0
  • StornierenAntwort