1. ¡OFERTA! con cupón "DIRVPS": hosting por $0,01 y también VPS Linux y Windows por $0,01 el primer mes por Interserver ← publi
    Descartar aviso
Descartar aviso
Al usar este sitio web, aceptas que nosotros y nuestros socios podamos establecer cookies para fines tales como personalizar el contenido y la publicidad. Más información.

Meta tags por variables de php

Tema en 'Programación y Diseño Web' iniciado por majo1985, 20 Feb 2009.

  1. majo1985

    majo1985 Nuevo usuario

    Buenas... el tema es ese... como hago para pasar en los meta (Donde buscan los robots) palabras pero por variables de php?

    si bien ya intente lo basico q es poner una variable dentro del meta con un echo y definir esa variable en el body despues de hacer un $_REQUEST[] pero no me muestra nada cuando en el explorador miro el codigo de fuente....

    alguien sabe como hacer eso?


    Muchas gracias!
     
  2.  
  3. elQuique

    elQuique Usuario activo

    No mires el problema como un todo, separalo en partes:

    Como va el html ?, mas o menos así:
    <!--c1--><div class='codetop'>CÓDIGO</div><div class='codemain'><!--ec1-->
    <html>
    <header>
    <title>titulo de tu pagina<title>
    <meta name="description" content="contenido de la descripción" />
    <meta name="keywords" content="palabra1, palabra2, palabra3" />
    </header>
    <body>
    <h1>titulo de tu pagina</h1>
    demás contenido y cosas varias
    </body>
    </html>
    <!--c2--></div><!--ec2-->

    Claro que supuéstamente agregamos el tema de que titulo, descripción, y keywords son variables (también el contenido pero sigues el mismo sistema), quedando algo así:
    <!--c1--><div class='codetop'>CÓDIGO</div><div class='codemain'><!--ec1-->
    <html>
    <header>
    <title><?php echo $titulo; ?><title>
    <meta name="description" content="<?php echo $descripcion; ?>" />
    <meta name="keywords" content="<?php echo $palabras; ?>" />
    </header>
    <body>
    <h1><?php echo $titulo; ?></h1>
    demas contenido y cosas varias
    </body>
    </html>
    <!--c2--></div><!--ec2-->

    O sea que en cada lugar, que es variable sustituiste por una variable impresa en PHP.

    Obviamente esa variable antes debió ser inicializada, por ejemplo inicializada con algo fijo así:
    <!--c1--><div class='codetop'>CÓDIGO</div><div class='codemain'><!--ec1-->
    <?php
    $titulo = 'titulo de tu pagina';
    $descripcion = 'descripcion de tu pagina';
    $palabras = 'palabra1, palabra2, ...';
    ?>
    <html>
    <header>
    <title><?php echo $titulo; ?><title>
    <meta name="description" content="<?php echo $descripcion; ?>" />
    <meta name="keywords" content="<?php echo $palabras; ?>" />
    </header>
    <body>
    <h1><?php echo $titulo; ?></h1>
    demas contenido y cosas varias
    </body>
    </html>
    <!--c2--></div><!--ec2-->

    Esquemáticamente:
    - Otorgo valor a las variables
    - Imprimo el HTML con variables PHP haciéndolo dinámico

    Hasta acá llevamos por parte para seguir la lógica, y obviamente las variables no se cargaran con algo fijo, pero lo hicimos así para separar los problemas en problemitas chicos, y debemos concentrarnos ahora solo en la parte de darle valor a las variables, todo lo demás ya esta resuelto :)

    Esas variables se pueden llenar con valores obtenidos de diferentes lugares:

    - Obtener valores de la URL y/o Formulario con el método GET

    - Obtener valores de Formulario con el método POST (debes recordar que REQUEST no existe mas, olvídalo, usa GET y POST según el caso)

    - Obtener valores desde una base de datos
    etc

    Ejemplo de cada caso:

    GET de URL, ejemplo si recibes algo como: "http://dominio.com/mostrarpagina.php?titulo=titulo de tu pagina&descripcion=descripcion de tu pagina&palabras=palabra1,palabra2,palabra3"

    <!--c1--><div class='codetop'>CÓDIGO</div><div class='codemain'><!--ec1-->
    $titulo = $_GET['titulo'];
    $descripcion = $_GET['descripcion'];
    $palabras = $_GET['palabras'];

    // y acá muestro todo el HTML como en el ultimo ejemplo...
    <html>
    ...
    <!--c2--></div><!--ec2-->

    POST de un formulario, el ejemplo es igual pero usas el comando para POST, así:
    <!--c1--><div class='codetop'>CÓDIGO</div><div class='codemain'><!--ec1-->
    $titulo = $_POST['titulo'];
    $descripcion = $_POST['descripcion'];
    $palabras = $_POST['palabras'];

    // y acá muestro todo el HTML como en el ultimo ejemplo...
    <html>
    ...
    <!--c2--></div><!--ec2-->

    BASE DE DATOS, si lo obtienes de una base de datos, es así:
    <!--c1--><div class='codetop'>CÓDIGO</div><div class='codemain'><!--ec1-->
    mysql_connect(....); // conexion al server
    mysql_select_db(...); // abrir la base

    $rs = mysql_query("SELECT id, titulo, descripcion, palabras, contenido FROM blog_articulos ORDER BY fecha DESC");&nbsp;&nbsp;// seleccionar la tabla de articulos de mi blog

    $row = mysql_fetch_array($rs);

    $titulo = $row['titulo'];
    $descripcion = $row['descripcion'];
    $palabras = $row['palabras'];

    .... // mas campos si tuvieras

    // y acá muestro todo el HTML como en el ultimo ejemplo...
    <html>
    ...
    <!--c2--></div><!--ec2-->


    :) algo así pues ....

    <b>Conclusión</b> tienes que resolver algo, a eso lo divides en problemas pequeños y vas solucionando uno a uno, de hecho si ahora miras la parte de mostrar el HTML es idéntica, y tienes 3 opciones distintas (GET, POST, DB) donde solo cambias una partecita, la de cargar datos, esa es otra ventaja de ver los problemas por separado, modularizar las cosas.
     
  4. majo1985

    majo1985 Nuevo usuario

    Wow muy buena la respuesta!
    me quedo todo mucho mas claro.
    el tema de la programacion modular la tengo bien en claro ya que lo rendi hace unas semanas, creo que me respondiste de una forma extraordinaria. Mi problema ahora que lo veo bien era que yo inicializaba las variables en el body, no las traje de ningun lado, entonces siempre las tenia vacia. Mi error.

    Bueno cuando hice el curso de php en la facultad siempre utilizamos el metodo $_request[]! y de este curos hace tan solo 8 o 9 meses lo termine!

    ahora voy a averiguar un poco mas sobre eso, pero gracias por el dato y la respuesta magnifica que diste.

    la verdad es que no dejo de asombrarme sobre 2 cosas.

    1) lo mucho que sabes.
    2) lo mucho que me falta aprender.

    Muchas gracias de nuevo
     
  5. elQuique

    elQuique Usuario activo

    Siento decirte que si te enseñan a usar request tu facultad se quedo en 2001, si tienes posibilidad cambiate :p

    Es un riesgo de seguridad usar REQUEST, por eso no se aconseja usarlo hace mucho, ya que tu piensas que vas a leer un POST de un formulario, pero malintensionadamente alguien puede pasarte el mismo parametro por la URL y tu lo lees y zas revientan todo, ya que REQUEST lee todo, GET, POST, COOKIE (peor aun), y si haces a cociencia un GET un POST tienes mas control de tu sistema.

    GET:
    <a href="http://www.php.net/manual/es/reserved.variables.get.php" target="_blank">http://www.php.net/manual/es/reserved.variables.get.php</a>

    POST:
    <a href="http://www.php.net/manual/es/reserved.variables.post.php" target="_blank">http://www.php.net/manual/es/reserved.variables.post.php</a>

    COOKIE:
    <a href="http://www.php.net/manual/es/reserved.variables.cookies.php" target="_blank">http://www.php.net/manual/es/reserved.variables.cookies.php</a>

    REQUEST:
    <a href="http://www.php.net/manual/es/reserved.variables.request.php" target="_blank">http://www.php.net/manual/es/reserved.variables.request.php</a>
     


Alojamiento web, Hosting Reseller, Servidores Dedicados - All in Hosting


    
    
    
    
Blog · Sitios amigos: GuiaHosting · Unidominios · Interalta ·