Eliminar el nombre del sitio de la etiqueta <title>

9 abr 2013, 15:18:26
Vistas: 16.9K
Votos: 2

Mis etiquetas <title> actuales son así:

Título del artículo del blog | Nombre del sitio

¿Cómo puedo eliminar "Nombre del sitio" para que las etiquetas <title> queden así:

Título del artículo del blog

Excepto, por supuesto, en la página principal, donde la etiqueta <title> debería ser:

Nombre del sitio

Por favor, ten en cuenta que soy completamente nuevo en WordPress.


Edición: Aquí está mi etiqueta <title> actual de header.php:

<title>
<?php
if ( defined( 'WPSEO_VERSION' ) ) {
    // WordPress SEO está activado
        wp_title();

} else {

    // WordPress SEO no está activado
    wp_title( '&#124;', true, 'right' );
}
?>
</title>
3
Comentarios

Si tienes algún plugin de SEO activo, intenta encontrar su configuración de títulos. Si no, dinos. :)

fuxia fuxia
9 abr 2013 15:36:32

No tengo ningún plugin de SEO activo.

Miscreant Miscreant
9 abr 2013 15:39:44

Entonces, ¿por qué tienes el condicional if ( defined( 'WPSEO_VERSION' ) ) {}?

Chip Bennett Chip Bennett
9 abr 2013 15:47:42
Todas las respuestas a la pregunta 6
2

Lo mejor (y más fácil) es usar el filtro wp_title.

Primero, limpia tu llamado a <?php wp_title(); ?> en tu plantilla. Reemplaza lo que tengas con esto:

 wp_title( '&#124;', true, 'right' );

Luego, en functions.php (o en el functions.php de un Tema hijo; aplican las precauciones normales), añade lo siguiente:

function wpse95147_filter_wp_title( $title ) {
    if ( is_single() || ( is_home() && !is_front_page() ) || ( is_page() && !is_front_page() ) ) {
        $title = single_post_title( '', false );
    }
    return $title;
}
add_filter( 'wp_title', 'wpse95147_filter_wp_title' );

Este filtro sobrescribirá completamente la salida de $title en contextos de página única. (La condición real está tomada directamente del núcleo, de la propia definición de la función wp_title()).

La última vez que revisé, WordPress no muestra realmente el título del sitio en ningún lugar de wp_title(); así que si lo estás viendo, algo lo está añadiendo (¿quizás tu Tema?). Sin embargo, si quieres mostrarlo, simplemente escribe una condición complementaria en el filtro anterior; por ejemplo:

function wpse95147_filter_wp_title( $title ) {
    if ( is_single() || ( is_home() && !is_front_page() ) || ( is_page() && !is_front_page() ) ) {
        $title = single_post_title( '', false );
    }
    if ( is_front_page() && ! is_page() ) {
        $title = esc_attr( get_bloginfo( 'name' ) );
    }
    return $title;
}
add_filter( 'wp_title', 'wpse95147_filter_wp_title' );
9 abr 2013 16:07:16
Comentarios

Mi tema padre estaba agregando el nombre del blog al título. Pude usar esta solución para solucionarlo simplemente aumentando el parámetro de prioridad en la llamada a add_filter. Esto asegura que nuestro nuevo filtro se ejecute después del filtro del tema padre. Establecí la prioridad en 100: add_filter('wp_title', 'wpse95147_filter_wp_title', 100);

Kyle Kyle
5 sept 2014 20:04:29

+1 por "algo lo está agregando (¿quizás tu Tema?)".

Joshua Goossen Joshua Goossen
4 may 2015 23:44:16
0

Añade esta línea en tu archivo header.php

<title><?php wp_title();?></title>

Añade el siguiente código en el archivo functions.php de tu tema

function your_wp_title( $title, $sep ) {
    global $paged, $page;
    if(is_front_page()){        
        $title = get_bloginfo( 'name' );   
        return $title;
    } else {
        if ( is_feed() )            
        // Añade el nombre del sitio
        return $title;
    }
}
add_filter( 'wp_title', 'your_wp_title', 10, 2 );

Referencia:http://codex.wordpress.org/Plugin_API/Filter_Reference/wp_title

9 abr 2013 16:09:13
0

En mi archivo de plantilla header.php reemplacé la línea del título por esto:

<title><?php is_front_page() ? woo_title() : wp_title( '' ); ?></title>

En mi caso estoy usando una plantilla de woothemes, por eso ese output de woo_title().

Aquí, puedes verificar en una sola línea si estás en la página de inicio, si es verdadero, puedes permitir que se muestre el título del blog/sitio, si es falso muestra el título sin el nombre del sitio, solo mostrará el título de tu entrada o página.

15 jul 2014 09:43:38
0

Tenía este problema con las publicaciones, así que busqué en internet e hice un pequeño plugin que elimina el nombre del blog de las publicaciones.

########### inicio eliminar título del blog de las publicaciones #######
function wp_abdul0201_wp_title( $title ) {
    if ( is_single() ) {
        $title = single_post_title( '', false );
    }
    return $title;
}
add_filter( 'pre_get_document_title', 'wp_abdul0201_wp_title' );
########### fin eliminar título del blog de las publicaciones #######

Por favor, fíjate en este código:

if ( is_single() )

Solo se aplica al título de las publicaciones. Puedes añadir más condiciones como:

if ( is_single() || is_archive() )

Aquí he añadido también las páginas de archivo. Espero que tengas una idea general de cómo funciona.

23 ene 2017 23:43:27
0

La forma más fácil que he encontrado es en la pestaña de Configuración de WordPress, eliminar el "Título" de tu sitio. No es la solución más programática, pero sí la más sencilla.

16 jul 2021 17:51:43
1
-1
<?php wp_title(false); ?>

Prueba esto y lee más aquí

&#124; indica una barra vertical como separador. El argumento true representa $display, para decidir si mostrar el título o no. El tercer argumento es la posición donde colocar el separador.

9 abr 2013 15:44:23
Comentarios

Por favor agrega una explicación a tu respuesta: ¿por qué eso podría resolver el problema? ¿Dónde está el nombre del sitio en tu respuesta?

fuxia fuxia
9 abr 2013 15:45:49