PHP Diseño Web Modular Parte 2
Categories: Diseño, PHP - Tags: maquetación, modular, PHPEn 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



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.
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
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!
Muy interesante, me ha despejado muchas dudas Gracias
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
Muy buen aporte
me sirvio de mucho gracias
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
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.
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.
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ó.
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