[Tutorial] Optimizando SMF para google, Lucha contra el contenido Duplicado

Started by MarioH, August 19, 2008, 03:26:58 AM

Previous topic - Next topic

lucas-ruroken

Adk Portal 3.1 is coming....

Design your universe!

Tamagochi

Tamagochi
Version Foro SMF 2.0 RC3
Ganar Dinero en Internet
Tienda de Summarios


franklinrony

ningun mod de seo viene por defecto en smf. el pretty url es muy bueno para la reescritura de urls,alguno de marcadores sociales,eso para comenzar.

con lo de robots,esos deben ir siempre en el root principal(carpeta public_html),es como google lo detecta,sin importar si tu foro lo tienes en otra carpeta
http://twitter.com/franklinrony

Entra y aprende a ser un webmaster
www.sv-blog.com
--Si pides ayuda al menos agradece el soporte recibido----

AlexMnrs

Indiferentemente de si utilizamos Pretty URL's o no (yo lo utilizo), ¿esto hay que ponerlo en el robots?

Disallow: /*.msg
Disallow: /msg/
Disallow: /Robots.txt

marcofbb

Ahora con la version SMF RC3 Tiene eso  fijense que si entras como new o msg te aparece en el code NOINDEX haci el bot no lo indexea
Mi blog y Foro

ExorCista

Quote from: marcofbb on July 01, 2010, 10:18:39 PM
Ahora con la version SMF RC3 Tiene eso  fijense que si entras como new o msg te aparece en el code NOINDEX haci el bot no lo indexea

No entiendo!!
cuando aparece NOINDEX, google me indexara mi foro?..es decir que no aparecere en Google??

io uso el SMF RC3
en ese caso no deberia usar Robots?
la verdad no entiendo mucho sobre esto.me gustaria qe google me indexe.

_sebas_


hola

no sería más fácil, añadir el número de página en que estamos  1 2 [3] 4 ... 12  13  a la descripción y el título
esas si que las indexa, e interesa que lo haga, pero no como duplicado

( no se hacerlo, lo he intentado, pero me sale una parrafada y no el dichoso número )

cieelo

Buscando una forma de poner el contendido del post en la meta descripción encontré tu pregunta.  este código te servirá para añadir el numero de página en la que estas, al titulo(esto suponiendo que muestras de 15 en 15 post, si no es así cambia este 15 por el numero de post por defecto, si alguien quiere ir más allá puede remplazar por la variable que tiene el smf para mostrar los post). el resultado esta en mi web, (mira mi perfil).

// script para agregar al título el número de página.

if ($context['current_topic']){
$str = $_SERVER['QUERY_STRING'];
$numpost = explode('.',$str);
$page = $numpost[1]/15 + 1;
if ($page == 1){
echo '<title>', $context['page_title'],'</title>';
}
else {
echo  ' <title>', $context['page_title'],' - página: ',$page,'</title>';
}
}
else{
echo '<title>', $context['page_title'],'</title>';
}
// Fin script para agregar al título el número de página.


haber si alguien me tira un cable con mi duda


_sebas_

he tenido que modificar lo anterior con un par de isset
sinó produce error en otras páginas que no son topics, o no llevan el "punto" .xx  detrás

DaRKeN_58

Hola chicos, alguien me podría ayudar con mi index.template.php del theme Flagrantly? Es que por más que lo he intentado, no lo consigo, tengo más código por medio y he intentado adaptarlo y nada, al final acaba la página solo mostrando errores.

En esta parte:

Quote from: MarioH on August 19, 2008, 03:26:58 AM

Paso 1:

Editando las Descripciones:
Nuestro objetivo es simple, haremos que cada vez que visitemos una página las descripciones cambien, de esta forma cada página que visitemos, tendrá una descripción random al azar.

Para ello buscamos el index.template del theme que usemos actualmente.

Buscamos:
Quote// Show right to left and the character set for ease of translating.
   echo '<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"';, $context['right_to_left'] ? ' dir="rtl"' : '', '><head>
   <meta http-equiv="Content-Type" content="text/html; charset=', $context['character_set'], '" />
   <meta name="description" content="', $context['page_title'], '" />', empty($context['robot_no_index']) ? '' : '
   <meta name="robots" content="noindex" />', '
   <meta name="keywords" content="PHP, MySQL, bulletin, board, free, open, source, smf, simple, machines, forum" />

Este es el contenido que trae por defecto SMF al instalar desde cero, obviamente si tu lo has editado lucirá diferente.

Ahora lo remplazaremos por lo siguiente (Mas adelante explico todo):
Quote
$aim[0] = "Descripciones (Editalas a tu gusto)";
$aim[1] = "Por ejemplo: Comunidad online dispuesta a quererte mucho";
$aim[2] = "Nos esforzamos en entregarte todo tipo de lo que (tu ofreces)";
$aim[3] = "Somos una empresa limitada y privada en donde te divertiras mucho muchito";
$aim[4] = "Mama mama, en mi casa me dicen distraido, hijo esta no es su casa...";
$aim[5] = "Nombre de tu web, la descripcion que quieras";
$aim[6] = "Nombre de tu web, la descripcion que quieras";
$aim[7] = "Recuerda que son descripciones, no palabras claves....";
   
// Show right to left and the character set for ease of translating.
   echo '<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"';, $context['right_to_left'] ? ' dir="rtl"' : '', '><head>
   
   <!-- Mis Meta Tag www.aimbox.cl -->
   <meta http-equiv="Content-Type" content="text/html; charset=', $context['character_set'], '" />
   <meta name="description" content="', $aim[rand(0,7)] ,'" />
   <meta name="keywords" content="', $context['page_title'], ', ';
   foreach ($context['topic_tags'] as $i => $tag)
         {
            echo '' . $tag['tag'] . ', ';
         }
      echo ' SMF, PHP, Mysql, Foros, Lo que tu quieras, Maximo 10, palabras" />
   <link rev="made" href="mailto:[email protected]" />
   <META NAME="Author" CONTENT="Tu- Nombre">
   <meta name="Revisit" content="10 days" />
   <meta name="REVISIT-AFTER" content="1 days" />
   <meta name="DC.Language" scheme="RFC1766" content="Spanish" />
   <meta name="robots" content="all" />
   <meta name="distribution" content="global" />
   <meta name="resource-type" content="document" />
   <meta http-equiv="Pragma" content="cache" />
   
   <!-- Fin Meta Tag -->


No encuentro manera de adaptarlo a esto, que es lo que tengo yo:
// Show right to left and the character set for ease of translating.
echo '<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"', $context['right_to_left'] ? ' dir="rtl"' : '', '>
<head>';

// The ?rc5 part of this link is just here to make sure browsers don't cache it wrongly.
echo '
<link rel="stylesheet" type="text/css" href="', $settings['theme_url'], '/css/index', $context['theme_variant'], '.css?rc5" />';

// Some browsers need an extra stylesheet due to bugs/compatibility issues.
foreach (array('ie7', 'ie6', 'webkit') as $cssfix)
if ($context['browser']['is_' . $cssfix])
echo '
<link rel="stylesheet" type="text/css" href="', $settings['default_theme_url'], '/css/', $cssfix, '.css" />';

// RTL languages require an additional stylesheet.
if ($context['right_to_left'])
echo '
<link rel="stylesheet" type="text/css" href="', $settings['theme_url'], '/css/rtl.css" />';

// Here comes the JavaScript bits!
echo '
<script type="text/javascript" src="', $settings['default_theme_url'], '/scripts/script.js?rc5"></script>
<script type="text/javascript" src="', $settings['theme_url'], '/scripts/theme.js?rc5"></script>
<script type="text/javascript"><!-- // --><![CDATA[
var smf_theme_url = "', $settings['theme_url'], '";
var smf_default_theme_url = "', $settings['default_theme_url'], '";
var smf_images_url = "', $settings['images_url'], '";
var smf_scripturl = "', $scripturl, '";
var smf_iso_case_folding = ', $context['server']['iso_case_folding'] ? 'true' : 'false', ';
var smf_charset = "', $context['character_set'], '";', $context['show_pm_popup'] ? '
var fPmPopup = function ()
{
if (confirm("' . $txt['show_personal_messages'] . '"))
window.open(smf_prepareScriptUrl(smf_scripturl) + "action=pm");
}
addLoadEvent(fPmPopup);' : '', '
var ajax_notification_text = "', $txt['ajax_in_progress'], '";
var ajax_notification_cancel_text = "', $txt['modify_cancel'], '";
// ]]></script>';

echo '
<meta http-equiv="Content-Type" content="text/html; charset=', $context['character_set'], '" />
<meta name="description" content="', $context['page_title_html_safe'], '" />', !empty($context['meta_keywords']) ? '
<meta name="keywords" content="' . $context['meta_keywords'] . '" />' : '', '
<title>', $context['page_title_html_safe'], '</title>';

// Please don't index these Mr Robot.
if (!empty($context['robot_no_index']))
echo '
<meta name="robots" content="noindex" />';

// Present a canonical url for search engines to prevent duplicate content in their indices.
if (!empty($context['canonical_url']))
echo '
<link rel="canonical" href="', $context['canonical_url'], '" />';



Como podéis ver, debajo de esto:
// Show right to left and the character set for ease of translating.
echo '<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"', $context['right_to_left'] ? ' dir="rtl"' : '', '>



Tengo esto:
<head>';

// The ?rc5 part of this link is just here to make sure browsers don't cache it wrongly.
echo '
<link rel="stylesheet" type="text/css" href="', $settings['theme_url'], '/css/index', $context['theme_variant'], '.css?rc5" />';

// Some browsers need an extra stylesheet due to bugs/compatibility issues.
foreach (array('ie7', 'ie6', 'webkit') as $cssfix)
if ($context['browser']['is_' . $cssfix])
echo '
<link rel="stylesheet" type="text/css" href="', $settings['default_theme_url'], '/css/', $cssfix, '.css" />';

// RTL languages require an additional stylesheet.
if ($context['right_to_left'])
echo '
<link rel="stylesheet" type="text/css" href="', $settings['theme_url'], '/css/rtl.css" />';

// Here comes the JavaScript bits!
echo '
<script type="text/javascript" src="', $settings['default_theme_url'], '/scripts/script.js?rc5"></script>
<script type="text/javascript" src="', $settings['theme_url'], '/scripts/theme.js?rc5"></script>
<script type="text/javascript"><!-- // --><![CDATA[
var smf_theme_url = "', $settings['theme_url'], '";
var smf_default_theme_url = "', $settings['default_theme_url'], '";
var smf_images_url = "', $settings['images_url'], '";
var smf_scripturl = "', $scripturl, '";
var smf_iso_case_folding = ', $context['server']['iso_case_folding'] ? 'true' : 'false', ';
var smf_charset = "', $context['character_set'], '";', $context['show_pm_popup'] ? '
var fPmPopup = function ()
{
if (confirm("' . $txt['show_personal_messages'] . '"))
window.open(smf_prepareScriptUrl(smf_scripturl) + "action=pm");
}
addLoadEvent(fPmPopup);' : '', '
var ajax_notification_text = "', $txt['ajax_in_progress'], '";
var ajax_notification_cancel_text = "', $txt['modify_cancel'], '";
// ]]></script>';



Y entonces ya aparece la parte de los meta, pero salen así:
echo '
<meta http-equiv="Content-Type" content="text/html; charset=', $context['character_set'], '" />
<meta name="description" content="', $context['page_title_html_safe'], '" />', !empty($context['meta_keywords']) ? '
<meta name="keywords" content="' . $context['meta_keywords'] . '" />' : '', '
<title>', $context['page_title_html_safe'], '</title>';

// Please don't index these Mr Robot.
if (!empty($context['robot_no_index']))
echo '
<meta name="robots" content="noindex" />';

// Present a canonical url for search engines to prevent duplicate content in their indices.
if (!empty($context['canonical_url']))
echo '
<link rel="canonical" href="', $context['canonical_url'], '" />';




Espero haberme explicado y no es que me lo hagáis vosotros, es que no me apaño con tanto código por medio para poder conseguir dejar esto bien adaptado y bueno al menos si me podéis dar alguna idea y ya me pongo yo al lío. Uso SMF 2 RC5 + SimplePortal 2.3.3 y el Theme Flagrantly by Crip.


Muchas gracias a todos. Saludos.
... :-X Dime de que presumes y te diré de que careces ;)...

distante

Te recomiendo (por experiencia) no poner la linea de las descripciones, al final tendrás miles de temas con la misma descripción.

DaRKeN_58

Muchas gracias por el consejo compañero  ;) de todas maneras me gustaría dejar este asunto correctamente configurado, así que si alguien me deslumbra una idea please, yo estás configuraciones las he echo en SMF 1.X.X sin ningún problema. Pero es que ahora estoy usando SMF 2 RC5 y hay más código y ya pues me salen errores cuando toco jeje.

Saludos.
... :-X Dime de que presumes y te diré de que careces ;)...

h3r0

Muchas gracias
pero tengo un problema
al subir el archivo indextemplate
me sale un error de escritura dice qu como que nohe cerrado alguna etiqueda

podrian revisarlo??

http://www.mediafire.com/?84xz6d8fi172pb7

delivery



La Casa

Buenas!

Cual es para smf 2 final el archivo robots recomendado si tienes instalado pretty urls?

Gracias!

edito para decir que también utilizo simple portal.

chachin

ke buen tuto, yo uso optimus brave y me parece muy bueno porque hace casi todo eso que dice el tuto :P

cyberspeed

para la gente que tiene problemas integrandolo con el mod que te deja agregar meta tags desde el panel de admin, la solucion fue sacar el
, !empty($context['meta_keywords']) ? '
Quedaria asi (Me funciona perfectamente):

    echo '
    <meta http-equiv="Content-Type" content="text/html; charset=', $context['character_set'], '" />
    <meta name="description" content="', $context['page_title_html_safe'], '" />
    <meta name="keywords" content="' . $context['meta_keywords'] . ', ';
foreach($context['topic_tags'] as $i => $tag){
$count_tags++;
            echo ''.$tag['tag'].', ';
         }
      echo '
" />
    <title>', $context['page_title_html_safe'], '</title>';

rafadizeo

Quote from: cyberspeed on February 24, 2012, 07:07:30 PM
para la gente que tiene problemas integrandolo con el mod que te deja agregar meta tags desde el panel de admin, la solucion fue sacar el
, !empty($context['meta_keywords']) ? '
Quedaria asi (Me funciona perfectamente):

    echo '
    <meta http-equiv="Content-Type" content="text/html; charset=', $context['character_set'], '" />
    <meta name="description" content="', $context['page_title_html_safe'], '" />
    <meta name="keywords" content="' . $context['meta_keywords'] . ', ';
foreach($context['topic_tags'] as $i => $tag){
$count_tags++;
            echo ''.$tag['tag'].', ';
         }
      echo '
" />
    <title>', $context['page_title_html_safe'], '</title>';


gracias, tenía el mismo problema
My web: Nacion Trance [nofollow]

Advertisement: