Soporte » Temas y plantillas » Cambiar código PHP de la plantilla archive

  • Resuelto carlosmdh

    (@carlosmdh)


    Buenas tardes. Creo que este es el canal adecuado para preguntar esto.

    En un cliente con WordPress + Yoast + WPML he descubierto que al hacer una búsqueda en el resultado que devuelve Google, concretamente en los enlaces de sitio, a veces devuelve uno con el Title Hotels – Archivo, cuando la Web realmente es de reserva de actividades turísticas, no de hoteles, y ahí debería poner actividades en vez de hotels.

    Investigando, he llegado a la conclusión que el Theme que utilizaron es uno creado para Webs de Reservas de Hoteles, maldito ThemeForest!!! (AKA Mordor) y que, aunque hicieron un child Theme del tema que instalaron, no crearon en el child la plantilla de la página de Archivos de hoteles.

    El caso es que ahora me toca modificar los parámetros de Title y Description de esa plantilla, hotels-archive.php, pero no soy capaz de identificar donde narices tiene el php que pinta ese titulo y esa descripción, supongo que será como en cualquier otra plantilla…

    ¿Alguna idea?

    Feliz jueves.

    • Este debate fue modificado hace 1 mes por  josearcos.
Viendo 4 respuestas - 1 de 4 (de 4 total)
  • Moderador josearcos

    (@josearcos)

    Hola @carlosmdh, puedes usar el plugin Show Current Template para que te diga que archivos se están usando para visualizar dicha página. Otra cosa que te recomiendo es que con el inspector de Chrome o Firefox compruebes ese HTML y hagas una búsqueda en la carpeta del tema padre para ese HTML. Espero haberme explicado bien.

    Saludos

    Qué pone en Yoast > Titles y metas > Tipos de contenido? 🤔

    • Esta respuesta fue modificada hace 4 meses por  Elias Gómez.
    cybmeta

    (@cybmeta)

    El título que muestra Google en los resultados de búsqueda es el título del documento, y ese título no lo vas a encontrar en la plantilla. Antes se ponía con wp_title() en el header y ahora con add_theme_support( 'title-tag' ) en el functions.php.

    De todas formas, parece que “hotels” es un post type, así que lo que yo intentaría primero es cambiar todos los labels para ese custom post type. Por ejemplo, si son zapatos y no hoteles:

    add_filter( 'register_post_type_args' , 'cyb_register_post_type_args', 10, 2 );
    funcion cyb_register_post_type_args( $args, $post_type ) {
    
        if( 'hotels' == $post_type ) {
    
            // Label: se muestra en el menu
            $args['label'] = __( 'Shoes', 'textdomain' );
    
            // Labels: etiquetas para diferentes acciones y ubicaciones del post type
            // Lista completa en https://developer.wordpress.org/reference/functions/get_post_type_labels/
            $args['labels']['name'] = __( 'Shoes', 'textdomain' );
            $args['labels']['singular_name'] = __( 'Shoe', 'textdomain' );
            $args['labels']['add_new_item'] = __( 'Add new shoe', 'textdomain' );
            // ....
    
        }
    
        return $args;
    
    }

    Yo creo que con eso te debería funcionar bien. Eso sí, lo queries seguirán siendo para el post type “hotels”, el identificador del post type no lo puedes cambiar, pero sus etiquetas sí.

    • Esta respuesta fue modificada hace 4 meses por  cybmeta.
    • Esta respuesta fue modificada hace 4 meses por  cybmeta.
    • Esta respuesta fue modificada hace 4 meses por  cybmeta.
    Moderador josearcos

    (@josearcos)

    Hola @carlosmdh, ¿cómo te fue con este asunto? ¿Pudiste resolverlo?

Viendo 4 respuestas - 1 de 4 (de 4 total)
  • Debes estar registrado para responder a este tema.