PHP Diseño Web Modular Parte 2

Categories: Diseño, PHP - Tags: , ,

En un post anterior expliqué la forma más simple de hacer una web modular; aunque esa forma funciona bien para proyectos de muchas páginas, proyectos con CMS o sistemas con friendly url (url amigable) no es buena idea usarla.
Tengo pensado hacer 2 partes más del tutorial para explicar además a hacer conexión con la base de datos y friendly URL

Estructura de la Web Modular

Para este caso prefiero separar header de menu, el footer lo separo del final del código html, la estructura general de la página esta en el archivo index.php, todos los contenidos en si están en la carpeta pages, para poder acceder a cualquier página usamos la ruta index.php?page=nombre_del_archivo_sin_extension

index.php

En el anterior post index.php era una página mas, pero ahora es el centro del script, las páginas ahora sólo tendrán el contenido sin ningún include y estarán en la carpeta pages.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
<?php
    include("includes/top_page.php");
?>
<div id="wrapper">     
    <div id="header">      
        <? include("includes/header.php"); ?>        
    </div>  
    <div id="menu">
            <? include("includes/menu.php"); ?>
        </div> 
    <div id="contenido">
        <? include("includes/pages.php"); ?>        
        <br style="clear:both;" />
    </div>
    <div id="footer">          
        <? include("includes/footer.php"); ?>        
    </div>
</div>
<? include("includes/bottom_page.php"); ?>

Carpeta includes

En esta carpeta colocamos todos los trozos de nuestra páginas, que es casi los mismo del tutorial anterior , la novedad el include encargado de llamar las páginas web

pages.php

Este script llama la página dentro de la carpeta pages que pidamos usando GET index.php?page=nombre_del_archivo_sin_extension

1
2
3
4
5
6
7
<?php
if (!isset($_GET['page'])) {
    include("pages/homepage.php");
} else {
    include("pages/".$_GET['page'].".php");
}
?>

Si por ejemplo en la carpeta pages tengo la pagina servicios.php para llamarla la url sería index.php?page=servicios






UPDATE: Y que ocurre si quisiera una estructura distinta con un menu lateral por ejemplo, simplemente edita el index.php agregando el div que corresponde a ese menu adicional y sobre todo edita el CSS para que se ubique adecuadamente ese div adicional, puedes ver como en este tutorial de maquetación

61 Responses to PHP Diseño Web Modular Parte 2

« Older Comments
  1. Cesar says:

    me queda la duda de como asignar el title debido a cada page ya que según el top_page.php el title siempre sera el mismo en toda la web, saludos y muchas gracias por la ayuda brindada.

  2. Fernando says:

    Buenos Días, he seguido tu tutorial me parece excelente. Pero tengo una consulta si quiere integrar un buscador por ejemplo en la página de home como hago para enviar las variables

    Gracias

  3. Tocayo says:

    Buenas Miguel

    He estado echando un vistazo a algunos tutoriales,y son fantásticos,nada parecido a la bazofia que nos sirvieron en clase cuando dimos diseño web.

    Sin embargo,no consigo que pages.php muestre el contenido de las páginas,y no veo ningun fallo,y me parece que tampoco no difiere nada con respecto a tu ejemplo.¿Sabrías decirme alguna posible causa que se me haya pasado por alto? En la vista previa de la página pincho en las secciones del menu,pero éste desaparece y tampoco sem e muestra la sección (la página,en su zona central,consta de dos columnas,una para el menu,en vertical,y la otra para mostrar el contenido,no se si quizá al hacer esto pasé algo por alto y está afectando al resultado)

    Gracias de antemano,¡un blog muy útil!

  4. Yesenia says:

    Muy interesante, me ha despejado muchas dudas Gracias

  5. admin says:

    Yo suelo usar una base de datos donde se guardan los contenidos y los títulos, en realidad las webs modulares sin base de datos no tienen mucho sentido

  6. Anahita says:

    Muy buen aporte :) me sirvio de mucho gracias :)

  7. tonkoni says:

    Hola me baje el archivo pero en WAMPSERVER no me muestra como debe ser, ( no no muestra los menus, los contenidos ni nada sólo los colores de fondo) cuando subo a un servidor si muestra como el ejemplo

    alguien me ayuda con eso? gracias

  8. Jairo says:

    Hola! Muchas gracias por el tutorial, estoy practicando y aprendiendo mucho. He hecho una web con varias páginas y he implementado friendly url.
    Me surge una duda, cuando escribo un enlace que no existe, me muestra el Warning. ¿Qué debo hacer para redirigir al usuario cuando no existe una determinada página?

    Muchas gracias de nuevo.

  9. alex says:

    Tengo una duda, copie las carpetas y he ejecutado el proyecto, pero no me muestra el menu.
    Alguna idea del porque no se muestra el menu. Estoy trabajando sobre Eclipse PDT.

    Saludos.

  10. Julián says:

    Buenisima nota!
    Siempre quise hacerlo y nunca supe como era.

    La duda que me quedó es como hacer las Friendly URL con la Web Modular, ya que probe de las 2 formas que explicas en otra nota pero no me funcionó.

  11. Gastón says:

    Nada mas para preguntar si solo debe cargar paginas php, si deseo que cargue otro tipo de extension como html como puedo agregarlo al código page.php

« Older Comments

Leave a Reply

Your email address will not be published. Required fields are marked *

*


× one = 9

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>