CMS

Nos enfocaremos en los CMS más populares programados en PHP, como Joomla, Wordpress, Drupal y Prestashop, que utilizan HTML, CSS, JavaScript y PHP con alguna otras bibliotecas.
Si buscas un programador de cms te puedo ayudar esta entrada.
Cuando queremos convertir nuestra web en una tienda on-line y utilizamos Joomla - Virtuemart, no surgen varias preguntas con la gestión usuarios.
Los que utilizamos Joomla , ya sabes que Joomla como CMS , tiene integrado un gestor usuarios, a su vez virtuemart trae su propio usuario, el gestor de compradores ( clientes )
Por este motivo nos surgen varias preguntas.
¿ Cuando nos registramos en el componente usuarios de Joomla ?
Si nos registramos joomla, aunque tengamos asignado en el plugin de virtuemart que el registro lo haga Joomla, que por defecto vienes que lo haga virtuemart, relalmente nos sigue añadiendo a ese comprador sin datos envío y facturación pero si esta creado como compradores.
[Pendiente] Comprobar si tuviéramos usuarios antes de tener instalado virtuemart , no se si añade los usuarios que hubiera instalados.
¿ Hay que tener activado el registro en el componente Joomla ?
En principio mi respuesta es si, si quiere tener usuarios registrados en la tienda que pueda loguearse y no tenga que volver a poner su datos.
Aunque recuerdo que virtuemart te deja comprar sin registrase, pienso que esta opción te obligaría a poner todos los datos de nuevo.
Los artículos archivados en Joomla son aquellos que tenemos en componente contenido queremos mantener , pero queremos no aparezca en la vistas (lista o blog) de la categoria.
Hay que tener en cuenta que estos no eliminan, se mantienen pero se cambian de estado y no apareceran si NO selecciona en filtro de administrador y front-end solo se mostrarían como listado si creamos un item de menu.
También hay que tener en cuenta que las URL de esos articulos archivados sigue operativa, es decir se sigue mostrando el contenido del articulo.
Crear una vista distinta de un articulo en Joomla.
Simplemente creado la vista en nuestra plantilla en html/com_content/article/nuevavista.php
Y seleccionando en la opciones del articulo :
Presentacion alternativa -> Seleccionamos la nueva vista creada.
- Olalla
- Componentes
1. crear archivo filter_xxx.xml (models/forms/filter_versions.xml)
- campo buscar
- name="search"
- class="js-stools-search-string"
- campo personalizado
- name="filtroMarcas"
- type="filtroMarcas"
- 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.
- class JformFieldFiltroMarcas extends JFormFieldList
- protected $type='filtroMarcas'
- funcion getOptions() --> hacer query, listar, y dejar seleccionada la opc.
- Con ... foreach {
- $tmp = Jhtml::_('select.option', $item->id, $item->nombre);
- $options[] = $tmp
- }
- 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
- en funcion display()
- $this->filterForm = $this->get('FilterForm');
- $this->activeFilters = $this->get('ActiveFilters');
4. Añadir herramientas de busqueda default.php views/nodelos/tmpl/default.php
- <?php
- echo JLayoutHelper::render('joomla.searchtools.default', array('view' => $this));
- ?>
5. Añadir 3 funciones en marcas.php (models/marcas.php)
query de lo que queremos que haga el filtro de busqueda...
- __construct ($config=array()) establece campos de filtro
- populateState ($ord=null, $dir=null) obtener y establecer los valores actuales de los filtro.
- getListQuery() usar los valores de filtro actuales para modificar la consulta.
Vista Version
crear
- models/forms/filter_versions.xml
- models/fields/filtroVersions.php (campo personalizdo)
modificar:
- views/versions/view.html.php
- views/versions/tmpl/default.php
- models/versions.php
Crear campo personalizado NUEVO
- crear models/fields/filtroVersions.php (campo personalizdo)
- crear campos en vista del filtro de la vista donde quiero mostrarlo . ej. Vista versiones, xml -> filter_versions.xml. models/forms/filter_versions.xml
- modificar o añadir query para filtrar bien la busqueda models/versions.php
Para que aparezca buscador
- crear models/forms/filter_marcas.xml en principio sin campos personalizados
- añadir lineas views/marcas/view.html.php
- añadir lineas views/marcas/tmpl/default.php
- añadir query models/marcas.php
**Me base en com_content/articles
Añadimos un item de menu , seleccionamos tipo de menu en usuario:

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.

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
Protostar es una de las plantillas que trae por defecto Joomla 3.x , esta plantilla permite configurar en parte administrador varias cosas:
- Ancho fijo o fluido (Fluid Layout): El ancho predeterminado (contenedor) de la plantilla protostar está configurado para 960 px, esta se puede cambiar, en hay post de foro de joomla donde explican como hacerlo paso a paso.(link foro joomla)
- Permite añadir Logo , texto o ambos en cabecera.
Aunque se nos hace corto esta modificacion por ello empezamos a poder copiar y modificar nuestra plantilla protostar.
Empezamos a modificar nuestra plantilla protostar
Lo ideal inicialmente antes de empezar a cambiar nuestra plantilla protostar es realizar copia, creando asi vuestra plantilla para poder realizar todos los cambios sin miedo y evitando problemas, como que actualices y te cambie esos cambios que hiciste, dale un vistazo este otro post donde explico como copiar plantillas de Joomla.
Una vez copiada nuestra plantilla podemos entra a modificar sin miendo.
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

Lee más…