Voy a escribir un CMS, pero ahora estoy escribiendo todas mis ideas y tratando de aclarar todos mis conceptos antes de comenzar. Una de las cosas de las que me estoy peleando es usar un lenguaje de plantillas y analizar las páginas del sitio web, y reemplazar etiquetas de plantilla con elementos de contenido, o simplemente desarrollar el sitio con PHP directo y hacer que el CMS genere estructuras de datos que ayuden. Por ejemplo:Lenguaje de plantillas frente a PHP directo
{navigation: products}
vs
foreach($cms_label['products'] as $product) {
echo '<li class="product_nav">'.
'<a href="products/{$product.id}">{$product.name}</a>'.
"</li>\n";
}
El primero es limpio, sino que implicaría la invención de una lengua, además de analizar cada página antes de la visualización. Este último es menos limpio, pero creo que podría funcionar muy bien si el CMS acaba de proporcionar datos para todo el código. Pero, ¿se consideraría esto mezclar la lógica con la presentación? Otra alternativa He considerado es el uso de las funciones de PHP que son similares a las etiquetas de plantilla:
<?php navigation('products'); ?>
¿Cuáles son sus pensamientos?
Tenga en cuenta que no tengo que hacer nada más complicado que incluir una página en un lugar determinado o escribir una lista desordenada; el resto será manejado por CSS.
Bastante seguro de que esto se ha preguntado muchas veces antes. – MitMaro
Dup: http://stackoverflow.com/questions/731743/php-vs-template-engine http://stackoverflow.com/questions/436014/why-should-i-use-templating-system-in-php http://stackoverflow.com/questions/62605/php-as-a-template-language-or-some-other-php-templating-script – MitMaro