Foros del Web » Estrategias Digitales y Negocios Online » SEO »

Plantillas y SEO

Estas en el tema de Plantillas y SEO en el foro de SEO en Foros del Web. Buenas! tengo una pregunta, quiero separar lo que es consultas y un par de funciones de PHP de lo que vendria a ser HTML>CSS, es ...
  #1 (permalink)  
Antiguo 25/10/2009, 20:05
 
Fecha de Ingreso: julio-2009
Ubicación: Argentina!
Mensajes: 324
Antigüedad: 14 años, 9 meses
Puntos: 4
Plantillas y SEO

Buenas! tengo una pregunta, quiero separar lo que es consultas y un par de funciones de PHP de lo que vendria a ser HTML>CSS, es decir, utilizo una libreria llamada template.php, hecha por el profesor que dicta el curso de php en la cual separa esas cosas, el tema es que

1) Debo hacer una pagina .html
2) una pagina .php
3) incluir el archivo template.php y con las funciones hacer que carge el html dentro del php

por si no se entiende:

index.php
Código:
<?php

include_once("template.php");

set_file("index","index.html");

pparse("todo");

?>
index.html
Código:
<!-- BEGIN todo -->
<div class="c">Algo</div>
<!-- END todo -->

entonces, en el html debo definir el estilo css o adjuntar la hoja de estilos, pero mi pregunta basicamente es ¿Esto interfiere en como deberian leer los robots mis paginas? al tener un archivo html y otro php con el mismo nombre, ¿ los robots pensarian que estoy duplicando?


Esta es la lib que nos dio el profesor.
tempalte.php
Código:
<?php

//                           +----------------------------------------------------+
//                           | Autor:  Dardo Guiodobono <[email protected]>|
//                           +----------------------------------------------------+
//
// ************************************************************************************************************
// * FUNCION:                                                                                                 *
// *         ESTE MODULO PERMITE ACCEDER A LAS PLANTILLAS POR MEDIO DEL PHP                                   *
// *                                                                                                          *
// *  en el script se debe hacer include("template.php3");                                                    *
// *  tenemos 4 funciones basicas;                                                                            *
// *                                                                                                          *
// * --set_file($nombrepagina,$path);                                                                         *
// *                                                                                                          *
// *   con esto busca el archivo /templates/."$path"                                                          *
// *   y ahora en mas lo referenciamos con el nombre $nombrepagina                                            *
// *                                                                                                          *
// * --set_var($var,$value)                                                                                   *
// *                                                                                                          *
// *   esta funcion sirve para cambiar  lo que pusimos en la plantilla entre llaves {var} por valor           *
// *   pero esta variable debe estar dentro de un bloque en la plantilla o sea dentro de                      *
// *   <!-- BEGIN nombrebloque -->                                                                            *
// *   <!-- END nombrebloque -->                                                                              *
// *                                                                                                          *
// * --parse(nombrebloque,nombrebloque,true o false)                                                          *
// *                                                                                                          *
// *   anexas a la plantilla un bloque pero con los datos pasados en set_var()                               *
// *   se puede ejecutar muchas veces para hacer un listado por ejemplo.                                      *
// *                                                                                                          *
// * --pparse($nombredepagina)                                                                                *
// *                                                                                                          *
// *   basicamente termina de imprimir el template pero con todos los bloques y variables cambiados.          *
// *                                                                                                          *
// *  Este software esta bajo la licencia GPL.                                                                *
// *                                                                                                          *
// ************************************************************************************************************
//
// Fecha=04-05-2001


if(defined("TEMPLATE")) return;
define("TEMPLATE", 1);

   $classname = "Template";
   $root = "./templates/";
   $blocks = array();
   $vars = array();
   $unknowns = "keep";  // "remove" | "comment" | "keep"
   $halt_on_error = "yes";   // "yes" | "report" | "no"


    function set_file($name, $filename) {
          extract_blocks($name, load_file($filename));
       }



    function set_var($var, $value) {
       global $vars;
         $vars["/\{$var}/"] = $value;
    }

    /*
     * string parse(string $target, [string $block], [bool $append]);
     * Procesa el bloque especificado por $block y almacena el resultado en
     * $target. Si $block no se ha especificado se asume igual a $target.
     * $append especifica si se debe a�dir o sobreescribir la variable
     * $target(sobreescribir por defecto).
     */
    function parse($target, $block = "", $append = true) {
       global $blocks,$vars,$unknowns,$regs;
        if($block == "") {
            $block = $target;
        }
		
        if(isset($blocks["/\{$block}/"])) {
            if($append) {
                $vars["/\{$target}/"] .= @preg_replace(array_keys($vars), array_values($vars), $blocks["/\{$block}/"]);
				if($vars["/\{$target}/"]{0}=="\\"){
   				$vars["/\{$target}/"]=str_replace("\\","",$vars["/\{$target}/"]);
				}
            } else {
                $vars["/\{$target}/"] = @preg_replace(array_keys($vars), array_values($vars), $blocks["/\{$block}/"]);
				if($vars["/\{$target}/"]{0}=="\\"){
					$vars["/\{$target}/"]=str_replace("\\","",$vars["/\{$target}/"]);
				}
            }
            switch($unknowns) {
                case "keep":
                break;

                case "comment":
                $vars["/\{$target}/"] = preg_replace('/{(.+)}/', "<!-- UNDEF: \\1 -->", $vars["/\{$target}/"]);
                break;

                case "remove":
                default:
                $vars["/\{$target}/"] = preg_replace('/{\w+}/', "", $vars["/\{$target}/"]);
                break;
            }
        } else {
            halt("parse: No existe ningun bloque llamado \"$block\"." . serialize($blocks));
        }
        return $vars["/\{$target}/"];
    }


    function pparse($target, $block="", $append = false) {
        return print(str_replace("\\","",parse($target, $block, $append)));
    }

    function gparse($target, $block="", $append = false) {
        return (str_replace("\\","",parse($target, $block, $append)));
    }

    function p($block) {
       global $vars;
        return print($vars[$block]);
    }


    function get_vars() {
       global $vars;
        reset($vars);
        while(list($k,$v) = each($vars)) {
            preg_match('/^{(.+)}$/', $k, $regs);
            $vars[$regs[1]] = $v;
        }
        return $vars;
    }


    function get_var($varname) {
       global $vars;

            return $vars["/\{$varname}/"];

    }


    function get($varname) {
       global $vars;
        return $vars["/\{$varname}/"];
    }



    function load_file($filename) {
       global $root;
        if(($fh = fopen("$root/$filename", "r"))) {
            $file_content = fread($fh, filesize("$root/$filename"));
            fclose($fh);
        } else {
            halt("load_file: No se puede abrir $root/$filename.");
        }
        return $file_content;
    }


    function extract_blocks($name, $block) {
       global $blocks,$regs;
        $level = 0;
        $current_block = $name;
        $blocksa = explode("<!-- ", $block);
        if(list(, $block) = @each($blocksa)) {
            $blocks["/\{$current_block}/"] = $block;
            while(list(, $block) = @each($blocksa)) {
                preg_match('/^(BEGIN|END) (\w+) -->(.*)$/s', $block, $regs);
                switch($regs[1]) {
                    case "BEGIN":

	                    $blocks["/\{$current_block}/"] .= "\{$regs[2]}";


                    $block_names[$level++] = $current_block;
                    $current_block = $regs[2];
                    $blocks["/\{$current_block}/"] = $regs[3];
                    break;

                    case "END":
                    $current_block = $block_names[--$level];
                    $blocks["/\{$current_block}/"] .= $regs[3];
                    break;

                    default:
                    $blocks["/\{$current_block}/"] .= "<!-- $block";
                    break;
                }
                unset($regs);
            }
        } else {
            $blocks["/\{$current_block}/"] .= $block;
        }
    }

    function halt($msg) {
      global $halt_on_error,$last_error;

        $last_error = $msg;
        if ($halt_on_error != "no")
            haltmsg($msg);
        if ($halt_on_error == "yes")
            die("<b>Halted.</b>\n");
        return false;
    }

    function haltmsg($msg) {
       print("<b>Template Error:</b> $msg<br>\n");
    }



?>
  #2 (permalink)  
Antiguo 26/10/2009, 09:24
Avatar de pablisho
Colaborador
 
Fecha de Ingreso: junio-2006
Ubicación: Buenos Aires
Mensajes: 1.268
Antigüedad: 17 años, 10 meses
Puntos: 39
Respuesta: Plantillas y SEO

El tema no está en cómo se nombren los archivos sino en lo que contengan y si son posiblemente "indexables" por los buscadores.
index.php devuelve contenido o sólo tendrá las funciones?
Recuerda que para evitar el contenido duplicado puedes bloquear determinada URL (desde el robots.txt o agregando una metaetiqueta) para especificar qué documentos no quieres que sean indexados.
__________________
Conoce las grandes ciudades del mundo en Sumando Millas | Pablo Ruzic
  #3 (permalink)  
Antiguo 27/10/2009, 00:04
Avatar de CircuitoX  
Fecha de Ingreso: julio-2008
Mensajes: 756
Antigüedad: 15 años, 9 meses
Puntos: 21
Respuesta: Plantillas y SEO

Por otra parte te comento que en herramientas para Web master te comenta, todo las fallas de código que pueda tener tu pagina. Esto incluye, títulos, duplicados, meta tags, contenido, etc.

Esto te puede ayudar en el proyecto. y para que veas si vas en buen camino hacia el SEO.
__________________
Diseño Robotico en Arequipa / Desarrollo web / Sitios / Paginas / 99 css3

Última edición por CircuitoX; 27/10/2009 a las 06:24
  #4 (permalink)  
Antiguo 27/10/2009, 06:04
 
Fecha de Ingreso: julio-2009
Ubicación: Argentina!
Mensajes: 324
Antigüedad: 14 años, 9 meses
Puntos: 4
Respuesta: Plantillas y SEO

Cita:
Iniciado por pablisho Ver Mensaje
El tema no está en cómo se nombren los archivos sino en lo que contengan y si son posiblemente "indexables" por los buscadores.
index.php devuelve contenido o sólo tendrá las funciones?
Recuerda que para evitar el contenido duplicado puedes bloquear determinada URL (desde el robots.txt o agregando una metaetiqueta) para especificar qué documentos no quieres que sean indexados.


mira, index.php tendria algo asi

*includes.
*sesiones.
*coneccion a bd.
*Variables de esta forma {variable} las cuales las paso asi: var_info ("variable","Contenido de la variable que se muestra en el html");.

en el index.html tendria algo asi

*estilos
*metas, head, body.
*variables llamadas de esta forma {variable}.

me gusta por el hecho de poder separar bien lo que es codigo php del html ya que cuando pase la plantilla a la parte de diseño solo tendran la restriccion de no tocar ni borrar nada contenido entre '{' y '}'. Si bien no duplica el contenido, solo duplica el nombre de la pagina, pero no la extension. Php != Html



Cita:
Iniciado por CircuitoX Ver Mensaje
Por otra parte te comento que en herramientas para Web master te comenta, todo las fallas de código que pueda tener tu pagina. Esto incluye, títulos, duplicados, meta tags, contenido, etc.

Esto te puede ayudar para en proyecto. y para que veas si vas en buen camino hacia el SEO.
Si esa la utilize y la verdad me habia olvidado de probarla con la plantilla.

Muchas gracias a los dos por tomarse la molestia en contestar.
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 12:44.