Creacion de un CMS – La Base de datos

Bueno aqui de nuevo poniendo algo más sobre el CMS, pues vamos por el principio de todo proyecto, hayq ue ver que vengo de la ersculea donde el trabajo con BD es lo primordial pues eso lo primero que voy a mostrar es como he decidido hacer mi BD.

Tabla Paginas

 La logica que he tenido para realizar esto es la siguiente: la tabla paginas es en donde en realidad se va a crear el menu principal de la pagina me explico: la propiedad Pageparent va a indicar cual es la pagina debajo de la cual debe de aparecer en el menu si no tiene parent pues a mostrarse como Item principal del menu. Ahora he pensado hacer una estructura tipo arbol que se cargue en la primera carga de la pagina en el browser y poner esta estructura en el Global o en el Session de PHP asi ahorrarme la consulta a la base de datos cada que se cambia de pagina ya que solo se renderizaria desde la estructura, claro esta que tendria que tener en alguna tabla algun flag que me indique si el menu ha cambiado, si es asi tendria que rehacer el arbol y todo seguiria funcionando. La idea de hacer esto es la latencia, es que como todo va en uan sola tabla se va atener que aplicar un algortimo de ordenamiento y eso va a tomar algun tiempo que no quiero estar desperdiciando cada que el usuario salte de pagina a pagina.

 

tipopagLa tabla TipoPagina: es aqui donde voy a poder determinar que CSS y Que plantilla afectan a cada tipo de paginas, asi como podemos ver en la tabla Paginas existe una referencia al ID de esta tabla, asi es como he pensado que se tiene que manejar lo de los diseños para distintas paginas.

 

 

 

contenidosLa tabla contenidos: pues es en esta tabla en la que irian todos los contenidos de la pagina, como ven es simple tiene dos titulos, es que como ya me paso una vez uno para mostrar cuando se visualiza el articulo y otra como una pequeña referencia a este.

 

 

 

 

 

contenidosdestinosCotenidosdestinos: Es aqui donde se van a indicar a que pagina va el el registro de la tabla Contenidos, existe un campo que indica la posision del mismo en la pagina eso quiere decir si sale primero o despues.

 

 

 

 

 

idiomasIDIOMAS: Bueno en esta tabla se grabaran los posibles idiomas de nuestra pagina final con la imagen que represente al idioma en este caso le puse bandera.

 

 

 

 

 

nombresitio

Esta es la tabla donde van los datos generales del site en si, el trabajo de esta tiene que ser de la siguiente forma si existe en el idioma seleccionado pues mostrarlo si no mostrar el primero que se haya ingresado o en caso que exista el valor en la tabla de seteos pues mostrar el que indica como idioma preterminado.

 

 

 

 

 

 

 

 

tablasEsta tabla a la que he denominado “Tablas” esto es algo que tengo en mente y que sumado a “TablasCampos” me va a permitir tener los campos de las tablas de la BD del cliente etiquetados correctamente cosa que no pienso hacer yo sino que es el usuario quien tiene que nombrarlas. tablascampos

Su funcionamiento es sencillo, se tendria que extraer de la variable global en donde se en cuentran los seteos de la aplicacion el nombre de BD y asi extraer los campos, en un inicio ambos deben de ser iguales pero el usuario estaria en la capacidad de cambiarlos para que se vean de una manera aceptable.

 

 

 

 

seteos

Es en esta tabla donde estaran las configuraciones basicas del sistema, asi como el idioma predetermiando, el nombre de la BD del cliente, por que hablo de una BD del clientes pues por que tiene que existir recuerden este CMS solo ahce lo generico osea mostrar campos basico como articulos de texto pero en caso que querramos hacer algo cmo sacar un master-details pues no lo va ha hacer claro que si termino esto rapido (antes que arranque el otro proyeto) hare una especie de Wizard para implementar esta caracteristica.

 

Bueno por ahora lo dejo aqui que voy a implementar funcionalidades a las clases.

Esto lo edite: Cuando hablo de usuario me refiero a otros programadores este CMS solo seria funcional al usuario (al que no sabe programar)  para hacer algo como un blog a lo sumo pero no mas ya que no hace mas y solo lo he hecho para que programar los CMS’s de empresas tenga como partida ya este andamiaje y asi centrarme en cosas como el desarrollo del carrito de compras, el desarrollo de la logica del negocio y cosas similares. Diran entonces que me diferencia de los otros CMS’s, pues casi nada pero es mio y lo conosco de memoria y hasta se cuantas lineas de codigo tengo y hasta las que andan de mas.

 

Acerca de

Antes que nada voy a dejar en claro algo, en este blog escribo como se me place, asi que no busquen errores de ortografia o de redaccion que los van a encontrar a montones y tampoco me critiquen o me digan nada sobre ellos pues no tengo intencion alguna de cambiarlos, lo que escribo lo dejo asi y no lo corrijo,claro esta a menos que sean lineas de codigo. Jorge Prado Anci, profesional en desarrollo de aplicaciones, en especial las dirigidas a bases de datos. He trabajado con VFP en casi todas sus versiones, se algo de Java (que no me gusta, es eso solo no me gusta, es bueno pero no me gusta), lo suficiente de PHP como para tener mi propio CMS(es que sigue sin gustarme por la capacidad de desorden que te permite este “lenguaje”), VB lo conoci y lo deteste tanto que lo olvide al punto de no querer adoptar ni por obligacion a su reemplazante VB .NET (por lo mismo de Java) y si C# este si me encanta y aun que conozco bastante bien el lenguaje, la verdad es que me falta mucho del Framework (del 100% estare en un 65%). Soy un apasionado por el orden (en los proyectos de desarrollo), de la programacion en capas (de MVC conozco pero no he aplicado mucho), los estandares y las condenadas pruebas unitaria. Venga creo que ya con esto fue suficiente.

Tagged with: , , , ,
Publicado en php

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s

Escribe tu dirección de correo electrónico para suscribirte a este blog, y recibir notificaciones de nuevos mensajes por correo.

Únete a otros 441 seguidores

Blog Stats
  • 304,137 hits
A %d blogueros les gusta esto: