Cómo eliminar metadescripciones duplicadas en categorías principales

  • Autor Autor Sergio López
  • Fecha de inicio Fecha de inicio
S

Sergio López

Lambda
SEO
Hola compañeros hoy tengo una duda que espero podamos solucionar juntos y así mismo aportar a quienes vengan buscando sobre este tema desde Google.

¿Cómo eliminar las metadescripciones duplicadas de las categorías? para que solo aparezcan en las páginas de categorías "Padre" y no en las "Hijas.

Ejemplo:

http://tusitio.com/categoria
http://tusitio.com/categoria/page/2
http://tusitio.com/categoria/page/3

¿Porqué tengo el contenido duplico?

En mi sitio en wordpress desde el panel de categorías le he colocado nombre / descripción / slug.
El problema es la descripción, por lo que todas las páginas de una categoría tendrán la misma descripción y por lo tanto se toma como contenido duplicado.


AYUDA
Alguien puede proporcionarnos un código en php con una condicional para mostrar las descripciones de las categorías sólo en la primera página de cada categoría.

Hago referencia a un tutorial que se encuentra en este mismo foro, donde se explica Tutorial: Elimina las Metadescripciones Duplicadas, sin embargo no tiene la condicional para que solo aparezca la descripción en la primera página. [MENTION=59]SoloNegocios[/MENTION]

PHP:
 <? 
if(is_category()||is_tag())
{
 $categoria = single_cat_title('', FALSE);
 $paginacion = get_query_var('paged');
 $descripcion = '<meta name="description" content="Todos los artículos sobre '.$categoria.'';

 if($paginacion!=0)
  $descripcion .= ' Página '.$paginacion.'';

 $descripcion .= '" />';

 echo $descripcion;
}
?>

¿Alguien puede amablemente ayudar a resolver este problema?
Con el siguiente codigo de arregla el problema de forma manual, actualmente si instalas la versión pro actualizada de all in one seo pack, automaticamente te agrega el codigo. De igual forma queda aquí para quienes desean implementarlo

PHP:
 <?
if ( (is_category() || is_tag()) && !is_paged() ) {
    $categoria = single_cat_title('', FALSE);
    $paginacion = get_query_var('paged');
    $descripcion = '<meta name="description" content="' . category_description() . '" />';

    echo $descripcion;
} ?>
 
Última edición:
Utiliza la función de WordPress:
PHP:
is_paged()

Aplicala a la sección completa.
 
[MENTION=557]shadowhck[/MENTION]

Gracias por tu valiosa respuesta, no soy muy conocedor del thema, podrías explicarme con un poco más de detalle donde colocar esa función y de que manera. Si te es posible por favor. De antemano gracias.

Además de que en cada categoría tengo una descipción diferente. te adjunto una imagen.
 
Última edición:
Prueba:
PHP:
<?
if ( (is_category() || is_tag()) && !is_paged() ) {
    $categoria = single_cat_title('', FALSE);
    $paginacion = get_query_var('paged');
    $descripcion = '<meta name="description" content="' . category_description() . '" />';

    echo $descripcion;
}
 
Última edición:
[MENTION=557]shadowhck[/MENTION] he colocado el codigo php que me has pasado y me dejo completamente el sitio en blanco, procedo a quitarlo.

esto es el codigo desde codex category del foro de wordpress
PHP:
<!-- Comienza la declaración condicional -->
<?php if ( $paged < 2 ) { // Do stuff specific to first page ?>

<p>Esto es un texto que será visible en la primera página de la página de categoría.</p>

<?php } else { // Do stuff specific to non-first page ?>

<p>Si desea mostrar texto en páginas secuenciales, póngalo aquí.</p>

<?php } ?>
<!-- fin de la declaración condicional -->
<!-- comienza Loop -->
  <?php while (have_posts()) : the_post(); ?>.....
 
Última edición:
Enlace eliminado he colocado el codigo php que me has pasado y me dejo completamente el sitio en blanco, procedo a quitarlo.

Lo actualize. El error fue porque no coloque el cierre ?>, deberías de tener un minimo conocimiento para editar, de lo contrario seguiras teniendo este tipo de problemas, que en ralidad no son problemas.

Notepad++ te ayudara a encontrar errores con el coloreo de sintaxis.
 
[MENTION=557]shadowhck[/MENTION] En efecto el codigo que haz compartido funciona muy bien!. Gracias. voy a colocarlo en la parte superior para los futuros usuarios que tengan la misma duda puedan resolverla.

Así mismo, solo te realizaria una pregunta más. Tengo instalado el All in Onse SEO. al revisar el codigo fuente de tusitio.com/categoría efectivamente aparecia la descripción con tu codigo y con la del plug in debajo de el por lo que veo esta 2 veces en el codigo fuente.

en tusitio.com/categoría/page/2 con tu codigo ya no aparecio, pero debajo sigue apareciendo la descipción con el plug in All in One SEO.

la pregunta es debo de seleccionar en activar la casilla "No index for Category" o la opción "use categories for Meta Keywords". en las opciones del plug in?
2.- Me recomendarias algun libro para comprar o sitio web, donde pueda aprender a leer php.

Por todo tu apoyo Gracias.
Pd. Si me envias tu cuenta paypal, te paso algo en forma de agradecimiento. Porque se que como yo muchos les será util esta información.
 
Última edición: