Soporte » Guías – Resolución de problemas » Código PHP que no termina de funcionar como me gustaría

  • Resuelto LaguntzaWeb

    (@laguntzaweb)


    Hola.

    He añadido el siguiente código php para hacer desaparecer la searchbox superior del tema Storefront en todas las páginas fuera de la tienda online (!is_woocommerce()), pero en la práctica se desactiva dicha searchbox en el sitio entero. En la tienda online debería aparecer.

    ¿Qué está fallando en ese código?

    Gracias de antemano.

    /* Desactiva la searcbox del tema storefront durante la navegación fuera de Woocommerce */
    
    add_action( 'init', 'jk_remove_storefront_header_search' );
    
    function jk_remove_storefront_header_search() {
    	
    	if(!is_woocommerce()){
    
    remove_action( 'storefront_header', 'storefront_product_search',             40 );
    
    	}	
    }
    • Este debate fue modificado hace 3 meses, 2 semanas por LaguntzaWeb.
    • Este debate fue modificado hace 3 meses, 2 semanas por LaguntzaWeb.

    La página con la que necesito ayuda: [accede para ver el enlace]

Viendo 2 respuestas - de la 1 a la 2 (de un total de 2)
  • Hola @laguntzaweb

    Prueba el siguiente codigo:

    
    /**
     * Action storefront_header
     *
     * Eliminamos el buscador cuando no se esta visitando la tienda.
     */
    function laguntzaweb_eliminar_el_buscador() {
    	/** Comprobamos que exista la funcion y su estado. */
    	if ( ! ( function_exists( 'is_woocommerce' ) && is_woocommerce() ) ) {
    		/** Eliminamos el buscador siempre que no se cumpla la condicion. */
    		remove_action( 'storefront_header', 'storefront_product_search', 40 );
    	}
    }
    /** Usamos el siguiente action para asegurarnos que ya esta registrado el que queremos eliminar. */
    add_action( 'storefront_header', 'laguntzaweb_eliminar_el_buscador', 0 );
    
    Iniciador del debate LaguntzaWeb

    (@laguntzaweb)

    Hola, @kallookoo. Tengo que decirte que eres una auténtica máquina. Ese código ha resuelto exactamente el problema que se me planteaba. Muchas gracias. Estoy en deuda contigo.

Viendo 2 respuestas - de la 1 a la 2 (de un total de 2)
  • Debes estar registrado para responder a este debate.