Error wordpress is_home() no funciona con WPML

¿Usas el plugin de traducción WPML para la traducción de tu página web? Entonces aqui tienes la solución

Las funciones is_home() o is_front_page() en la acción “wp_enqueue_scripts” no funcionan con wpml activo

Documentación completa : https://wpml.org/forums/topic/canada-link-for-shop-page-always-display-the-page-of-the-current-language/#post-8800079

La solución es añadir el siguiente filtro

$my_home_url = apply_filters( 'wpml_home_url', get_option( 'home' ) );
$url = get_pagenum_link();

//echo "<script> alert('".$url."'); </script>";
 

if ($my_home_url == $url) {
?> 
<div> Ejemplo - contenido home </div>

<?php      
    } else {
      ?> 
 <div> ejemplo </div>
<?php 
    }
?>

En algunos casos no funciona porque las urls difieren del final según nos han comentado para ello podéis usar esta solución. Donde comparamos get_pagenum_link() con nuestra url escrita manualmente

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.