On 10/13/06, Núria Ramoneda <[EMAIL PROTECTED]> wrote:
> Disculpad por el off-topic, pero por mucho que busco en google no encuentro
> una explicación buena al respecto y estoy segura que aquellos que llevais
> tiempo en ésto y trabajando con grandes sites, tendreis algun link que pueda
> serme de utilidad o cualquier otra orientación para darme, y os lo
> agradeceré eternamente.
>
> Os cuento. Tengo la web de una escuela. Es una web con bastantes contenidos
> y una estructura jerárquica de hasta cuatro niveles de profundidad. Voy a
> cambiarle un poco el diseño y quiero aprovechar para hacerla más accesible y
> más manejable para su mantenimiento.. Esta vez quiero poner el menu mediante
> listas y no en js como está ahora, aunque espero encontrar un modo de que se
> vea bien en los Mac con Safari, Explorer o Firefox. En la escuela los niños
> y maestros trabajan con pc pero sobretodo con Mac, y hace un año no encontré
> la manera de que el menú en css se viera bien en los Mac 9. Pero bueno, eso
> vendrá más adelante. No va por ahí mi pregunta..
>
> El tema es  que quiero montar la estructura básica de las páginas mediante
> includes con php, para olvidarme de las actualizaciones masivas mediante
> plantilla. Quiero facilitar al máximo que quien el año que viene se haga
> cargo de la web, tenga el menor trabajo posible de mantenimiento y el que
> tenga le sea fácil de realizar. Y no me refiero sólo al mantenimiento de los
> contenidos que van cambiando cada curso (trabajos escolares, fotos, etc),
> porqué para eso pagamos a una persona que se ocupa de ello y a quien, por
> supuesto, también me interesa que le sea fácil la actualización. Pero alguna
> madre, padre o maestro de la escuela va a tener que encargarse de toda la
> web cuando mi hija acabe sexto. (cómo podeis imaginaros, por estre trabajo
> no me pagan, es totalmente voluntario ;-)
>
> Bueno, a lo que iba. Monto las páginas html con los includes php, tal que
> así:
>
> <?php  include ("1doctype.php"); ?>
>
> <title>Titol pagina</title>
>
> <?php include ("2metalinks.php"); ?>
>
> </head>
>
> <body id="principal">
> <?php include ("3caplogo.php"); ?>
> <?php include ("31caminet.php"); ?>
> <?php include ("4menu.php"); ?>
>
>        <div id="bloccontingut">
>
>            <div id="contingut">
>                      <p>Aqui va el contenido</p>
>                      <p>&nbsp;</p>
>
> <?php include ("5dataupdate.php"); ?>
>
>         </div>
> <?php include ("6peu.php"); ?>
>
> Bien. El problema está en que dentro de algunos de los fichero php se hace
> referencia a otros archivos: hojas de estilo, javascripts, classes php, etc.
> Estos archivos están situados en sus directorios correspondientes, tal que
> así:
>          <link href="eines/estils/estilbase.css" rel="Stylesheet"
> type="text/css">
>           include_once('eines/scripts/class.breadcrumb.inc.php')
>
> Bueno, como os podeis imaginar, el problema empieza cuando la página html
> está en cualquier otro directorio que no sea el raiz, y entonces hay que
> indicarle a la referencia los directorios atrás que tiene que subir para
> encontrar cada archivo:
>          <link href="../../eines/estils/estilbase.css" rel="Stylesheet"
> type="text/css">
>           include_once('../../eines/scripts/class.breadcrumb.inc.php')
>
> Estas referencias, mientras utilizas plantillas con dreamweaver y las pones
> en cada página html, el DW se encarga de actualizarlas. Pero montándolo con
> los includes de php, ya no se puede.
>
> La única forma de solucionarlo que se me ocurre es poner las referencias
> absolutas directamente al web
>     <link href=www.magoria.org/eines/estils/estilbase.css
>
> Pero no me parece la mejor solución y mi pregunta es si realmente es la
> única o hay mejores manera de hacerlo, o quizás incluso un planteamiento
> distinto que ni se me ha ocurrido. Así pués, cualquier link que explique
> detalles o metodologia sobre el tema y/o cualquier otra aportación al
> respecto, será bienvenida. Muchas grácias!
>
> Y disculpad por la extensión!
>
> Núria

En principio puedes facilitarte el trabajo usando constantes PHP,
asumiendo que tu pagina se encuentra en /var/www/sitio/index.php por
ejemplo:

define('site_root', '/var/www/sitio'); y luego los includes los haces como

include_once(site_root.'/eines/scripts/class.breadcrumb.inc.php')

y eso incluiria
/var/www/sitio/eines/scripts/class.breadcrumb.inc.php

En cuanto a la estructura del sitio, eso ya depende de tu habilidad
como programadora en PHP (y de quien sea tu sucesor/a), se pueden
hacer sitios que funcionen de una manera 'automatica' sin tener que
tocar mucho codigo, pero esto es bastante complicado. Yo recomiendo
leer este articulo (en ingles) sobre una estructura MCV bastante
simple:

http://www.phpit.net/article/simple-mvc-php5/

Al final del articulo tienen todo el sistema en un zip para poder usar
directamente.

-- 
Hermann Kaser
http://www.theragingche.com/
_______________________________________________
Lista de distribución Ovillo
Para escribir a la lista, envia un correo a Ovillo@lists.ovillo.org
Puedes modificar tus datos o desuscribirte en la siguiente dirección: 
http://lists.ovillo.org/mailman/listinfo/ovillo

Responder a