CMS

csm

CSM es sistema de gestión de contenidos no es un lenguaje de programación, es un programa (una aplicación) que permite crear una estructura de soporte (framework) para la creación y administración de contenidos, principalmente en páginas web, por parte de los administradores, editores, participantes y demás usuarios.

Consiste en una interfaz que controla una o varias bases de datos donde se aloja el contenido del sitio web. El sistema permite manejar de manera independiente el contenido y el diseño. Así, es posible manejar el contenido y darle en cualquier momento un diseño distinto al sitio web sin tener que darle formato al contenido de nuevo, además de permitir la fácil y controlada publicación en el sitio a varios editores. Un ejemplo clásico es el de editores que cargan el contenido al sistema y otro de nivel superior (moderador o administrador) que permite que estos contenidos sean visibles a todo el público (los aprueba).

Subcategorías

Inicio desactivadoInicio desactivadoInicio desactivadoInicio desactivadoInicio desactivado

1. crear archivo filter_xxx.xml (models/forms/filter_versions.xml)

  1.  campo buscar
    1. name="search"
    2. class="js-stools-search-string"
  2.  campo personalizado
    1. name="filtroMarcas"
    2. type="filtroMarcas"
    3. onchange="this.form.submit();"

De esta forma añado un buscador simple y bton herramientas busqueda donde puedo encontrar los campos personalizados, como campo de entrada vacia. (por el momento)

Si creamos otro archivo: ej. filtroMarcas.php (models/fields/filtroMarcas.php) es donde relacionamos el campo personalizado creado anteriormente.

2. Se crea archivo filtroMarcas.php (models/fields/filtroMarca.php)

Opcional: solo es necesario cuando hay Campos personalizados -----------------------------

Campo personalizado, si es buscador solo no es necesario hacer esto.

  1.  class JformFieldFiltroMarcas extends JFormFieldList
  2.  protected $type='filtroMarcas'
  3. funcion getOptions() --> hacer query, listar, y dejar seleccionada la opc.
    1. Con ... foreach {
    2. $tmp = Jhtml::_('select.option', $item->id, $item->nombre);
    3. $options[] = $tmp
    4. }
  4. funcion getOptionsExternally() : Metodo para obtener una lista de opc para una entrada de la lista de forma externa y no de XML.

--------------------------------------------------------------------------------------------------------------!

3. Añadir lineas en view.html.php views/nodelos/view.html.php

  1. en funcion display()
    1.  $this->filterForm = $this->get('FilterForm');
    2.  $this->activeFilters = $this->get('ActiveFilters');

4. Añadir herramientas de busqueda default.php views/nodelos/tmpl/default.php

  1. <?php
    1. echo JLayoutHelper::render('joomla.searchtools.default', array('view' => $this));
  2. ?>

5. Añadir 3 funciones en marcas.php (models/marcas.php)

query de lo que queremos que haga el filtro de busqueda...

  1.  __construct ($config=array()) establece campos de filtro
  2.  populateState ($ord=null, $dir=null) obtener y establecer los valores actuales de los filtro.
  3.  getListQuery() usar los valores de filtro actuales para modificar la consulta.

 

 

Vista Version

crear

  1.  models/forms/filter_versions.xml
  2.  models/fields/filtroVersions.php (campo personalizdo)

modificar:

  1.  views/versions/view.html.php
  2.  views/versions/tmpl/default.php
  3.  models/versions.php

 

Crear campo personalizado NUEVO

  1.  crear models/fields/filtroVersions.php (campo personalizdo)
  2.  crear campos en vista del filtro de la vista donde quiero mostrarlo . ej. Vista versiones, xml -> filter_versions.xml. models/forms/filter_versions.xml
  3.  modificar o añadir query para filtrar bien la busqueda models/versions.php

Para que aparezca buscador

  1.  crear                models/forms/filter_marcas.xml                en principio sin campos personalizados
  2.  añadir lineas     views/marcas/view.html.php
  3.  añadir lineas     views/marcas/tmpl/default.php
  4.  añadir query     models/marcas.php

**Me base en com_content/articles

Inicio desactivadoInicio desactivadoInicio desactivadoInicio desactivadoInicio desactivado

Añadimos un item de menu , seleccionamos tipo de menu en usuario:

Opcion Menu Registro Usuario

Inicio desactivadoInicio desactivadoInicio desactivadoInicio desactivadoInicio desactivado

Las posiciones de las plantillas Joomla son donde van los módulos y contenido que utilizamos en nuestra web, JOOMLA hasta el momento no tiene un estándar para nombra esas posiciones, por lo que cada plantilla puede nombrar está posiciones como quiere el creador de la plantilla.

Lo que pretendemos con esté articulo es crear un estándar de posiciones, por supuesto para nuestras plantillas, para las plantillas que creemos para Joomla 3.*, basándonos en las posiciones que utiliza las plantillas que trae por defecto Joomla.

Con esto pretendemos conseguimos que la web se pueda ver tanto en nuestras plantillas como las que trae por defecto joomla, algo que no es posible 100% sin cambiar la posición de algunos de eso módulos que utilizados.

Antes de empezar te puede interesar  ver de una forma interactiva cuales son las posiciones de las plantillas que trae por defecto Joomla, debes saber que la previsualización de posiciones de la plantillas viene deactivado por defecto en el Gestor Plantillas, en las opciones puedes activarlo. Es una medida de seguridad por lo que activala para verlo y luego desactivala. :-)

previsualizar posiciones plantilla

Antes de empezar hay que entender que:

  • Un modulo que es muy fácil cambiar de posición desde el gestor de módulos.
  • Que para ver las posiciones de la plantilla que utilizamos podemos verlas si activamos la opción de "Vista previa posiciones de modulos", que viene por defecto desactivado en opciones del Gestor de plantillas.
  • [Más a fondo] La posiciones tiene un estilo el cual puede puede cambiar la presentación y el comportamiento del modulo, este estilo viene predefinido en index.php de la plantilla , aunque en Joomla 3 en el gestor de módulos se pude cambiar.

[Más fondo] Estilos de posiciones de modulos

Los estilos de posiciones de modulos , joomla ya tiene en el sistema unos estandar predeterminado, los cuales es interesante conocer y saber su utilidad.

No encuentro información detallada de estos estilos por lo que poco a poco iré ampliando.

Las plantillas que trae joomla por defecto son beez5 y protostar del sitio. Estás plantillas tiene varios tipos de posiciones, unas son ya estandar de Joomla y otras no.

TIPOS DE POSICIONES ESTANDAR DE JOOMLA

  • none ( Que no pone titulo modulo)
  • xhtml (En la opción de modulos tenemos marcado mostrar titulo, pues lo muestra)
  • table ( Crea una tabla html con el contenido del modulo)

En las plantillas que trae joomla hay varios tipos más, que ya son particulares de ellas. TIPOS DE POSICIONES DE LAS PLANTILLAS POR DEFECTO DE JOOMLA

BEEZ5

  • style beezDivision
  • sytle beezTabs

PROTOSTAR

  • well

Estos estilos y algunos más de sistema podremos seleccionarlos en el Gestor de Modulos, pero no es necesario, ya que la plantilla tendrá uno por defecto para esa posicion que se define en el fichero index.php de la plantilla.

A los creadores de plantillas, normalmente definen los suyos en la plantilla en el fichero /template/nombretemplate/html/modules.php , donde crean una función para cada estilo llamada modCrome_NOMBRESTYLE

En este link de la web documentación oficial de joomla puedes ver más información sobre esto.

 

 

 

Inicio desactivadoInicio desactivadoInicio desactivadoInicio desactivadoInicio desactivado

Recordar que si queréis que la  maquetación html de vuestra plantilla del mod_virtuemart_product (modulo de productos de virtuemart) funciones debéis seleccionar en el modulo en "Diseño" la vista default o single, porque la anular toma la vista del componente.

Mod virtuemart productos

Inicio desactivadoInicio desactivadoInicio desactivadoInicio desactivadoInicio desactivado

El permitir realizar comentarios de los productos que vendemos en una tienda on-line , es algo fundamentarl y no iba ser menos virtuemart, el componente más famosos de joomla para convertir tu web (joomla) en una tienda on-line.

Virtuamart ya trae por defecto el permitir a nuestro usuarios que opinen sobre los productos que tenemos en nuestra tienda on-line.

Ahora nos surge la gestión de estos comentarios, ya que en la configuración de virtuemart nos deja activar y desactivar el permitir comentarios o no.

La cuestión es donde, como y que podemos hacer con esos comentarios, en esto virtuemart se queda corto y realmente no facilita mucho la gestion de esos comentarios, por ello nos encontramos con el problema que no podemos ver que productos son los que tiene comentarios.

Inicio desactivadoInicio desactivadoInicio desactivadoInicio desactivadoInicio desactivado

ERROR:Cannot open file for writing log

Si estás intentando actualizar Joomla y te sale este error, lo primero que debe hacer es revisar la configuración de tu Joomla.

Ya que lo que te indica ese error es que no puede escribir en fichero log , que le indica la ruta de Configuración del Sistema:

Fijate que sea correcta la ruta carpetas logs

Inicio desactivadoInicio desactivadoInicio desactivadoInicio desactivadoInicio desactivado

<CAPA SISTEMA>

Os recomiendo que veaís este otro articulo por si os ahora tiempo. http://ayuda.svigo.es/index.php/programacion-2/cms/joomla/componentes/virtuemart/139-anadir-distritos-o-estados-de-paises-a-virtuemart

</CAPA SISTEMA>

Añadir provincias o estados de forma manual en virtuemart

Antes de ponernos manos a la obra, os recomiento que tengáis claro las provincias o estados que váis añadir, teniendo por lo menos enumerado de alguna forma esos estados.

Una forma sencilla, sería consultando en la wikipedia los estados del país en cuestión y poniendo por orden de "Código INSEE".

Ejemplo :

Estados de Francia

Ordenar por código INSEE pinchando en fecha que hay a lado de "Código INSEE"

EstadoFrancia

Una vez tenemos claro las provincias que vamos añadir, ya que hay algunas que no nos interesa meter, ya que puede que no tengamos definido la forma de envío para esa provincia o estado, vamos a la parte administrativa de nuestra web.

Inicio desactivadoInicio desactivadoInicio desactivadoInicio desactivadoInicio desactivado

 Protostar es una de las plantillas que trae por defecto Joomla 3.x , por ello vamos tratar en este post todo lo necesario para poder cambiarla y modificarla.

Empezamos a modificar nuestra plantilla protostar

Lo ideal inicialmente antes de empezar a cambiar nuestra plantilla , os recomiendo copiar vuestra plantilla para poder realizar todos los cambios sin miedo y evitando problemas, como que actualices y te cambie esos cambios que hiciste, puedes hecharle un vistazo este otro post donde explico como copiar la plantilla.

Una vez copiada nuestra plantilla podemos entra a modificar el CSS.

Modificaciones CSS

Lo primero es saber que creando un fichero podemos sobreescribir el css de template.css

Este fichero es user.css en templates/protostar, con el podermos modificar el css de la plantilla protostar o el nuestra copia, ideal aunque no hubieramos hecho una copia de la plantilla, al actualizar joomla ( por consecuencia puede que la plantilal) este fichero no cambiaría nunca ya que no se existe en la plantilla por defecto.

Ejemplo de Sergio Iglesias en este post nos demuestra como creando ese fichero y con unos pequeños cambios , la planitlla cambiar muchísimo.

Esta web tambien utilizamos una copia de protostar, la tengo publicada en github (protostar_ayuda), aunque tengo cambiado el fichero templace.css ya que tiene errores, los puedes ver con el  validar el css en W3C.

 

Menu horizontal

Para poner un menu horizontal en la plantilla protostar tenemos que poner el modulo del menu en la posicion 1 y ademas :

En el Módulo Menú debemos ir a la pestaña avanzado y modificar los valores de las cajas

Sufijo de clase CSS : nav-pills

Sufijo de clase CSS del Modulo: _menu

 menu horizontal

CSS un poco a fondo de la plantilla protostar

Siempre es bueno conocer un poco a fondo el CSS, la clase que utiliza y podemos reutilizar dentro de los articulos o modulos, para mejorar estectica o presentación de nuestra web. Os dejo alguna anotaciones que tenemos.

.center

Esta clase dentro de un div centra el texto o el contenido.

 

 

 Otras fuentes que encuentro interesantes:

Protostar como framevork. Presentacion de Valetín García muy currada, incluso tiene la modificaciones de la plantilla compartida en Github, plantilla protostar_garcia

Inicio desactivadoInicio desactivadoInicio desactivadoInicio desactivadoInicio desactivado

Está pregunta se la hace tanto amaters como gente profesional que lleva ya muchos proyectos creandos a la hora crear un Web, aunque estos ultimos estoy seguro que ya lo tiene bastante definido.

Aquí no voy decir cual es mejor o peor, porque es algo bastante subjetivo y ademas pienso que realmente cada uno de los CMS que conozco tienen sus virtudes y sus deficiencias.

Lo que pretendo con está entrada es mostrar las virtudes y deficiencias de cada CMS que utilizo, con la premisa de que tiene que open source.

¿ Como saber si una web utiliza un CMS ?

Cuando queremos crear una WEB , los que hacemos habitualmente es buscar internet posibles paginas web que nos guste, y nos preguntamos como la hizo, que utilizo.

Por ellos ya hay varias aplicación en Online que simplemente con URL nos informa de una forma organizada que utiliza, indicando lenguaje de programación, CMS, libreria y mucha más información.

Aplicaciones que nos da información de una WEB:

- http://w3techs.com/sites

- http://builtwith.com/

¿ Que CMS open source hay ?

La verdad que hay muchísimos, en la web Opensourcecms.com , puede encontra muchísimos y cada días se añaden más.

Aquí simplemente vamos a nombrar los que conocemos y hemos trabajado con ellos alguna vez.

  • Joomla
  • Wordpress
  • Drupal
  • Pretashop