Componentes

componentes

Un Componente también conocida como extensiones, es un programa que insertamos dentro de nuestro Joomla. Sólo puede haber un componente activo por página. Son los elementos más complejos que podemos instalar en Joomla.

Por lo general los componentes tienen dos partes bien diferenciadas la parte BackEnd y otra FrontEnd. En la Administrativa (BackEND) podemos ver sus configuración y más acciones administrativas

Los componentes son las partes software de nuestro portal, que le dan la funcionalidad básica al mismo.

Inicio desactivadoInicio desactivadoInicio desactivadoInicio desactivadoInicio desactivado

En un proyecto que acabamos realizar ( superoliva.es ) , el cliente tiene productos que su precios que son por KILO y se venden por gramos o kilos el producto.

La solucion ideal sería hacer un plugin para virtuemart que cambiara el importe del producto una vez selecciones una cantidad de gramos.

NOTA: Nos dimos cuenta que virtuemart no permite decimales en la entrada de un pedido, tiene que ser entero.

Nuestra solución para poder vender gramos de un producto.

La solucion mas sencilla , no la ideal, pero siempre nos aptamos al presupuesto, es utilizar el plugin de trae virtuemart de campos personalizados, creamos uno de tipo cadena , y una vez guardado lo configuramos para el precio del producto se recalcule -% .

Para configurar el plugin tipo cadena para utilice un porcentaje, se hace una vez guardado el campo personalizado.

Al editarlo en el campo multiply podemos utilizar : base_productprice o base_variantprice

Este ultimo es el que utilizamos.

Inicio desactivadoInicio desactivadoInicio desactivadoInicio desactivadoInicio desactivado

Antiguo:
Ya no utilizo este componente, ahora utilizo el componente que trae integrado directamente Joomla , muy bueno y practico. Sin tener que pagar y además se actualiza con el core de joomla directamente.
Ayuda de como usar el componente privacidad de Joomla en la pagina oficial de Joomla

Con el cambio de ley de LOPD en españa el 25 mayo 2018, no pusimos a buscar soluciones para nuestros cliente que cubran todos los aspectos legales que pide esta ley.

Encontramos la extensión creada por Joomla! Extensions Store -> GDPR. Link a descarga extension .La instalamos para probar su potencial, de inicio me encuentro que solo tiene los idiomas de ingles y italiano, por lo que hago una traduccion language al español, un poco chafa... :-)

Link a github donde tengo los paquetes laguage en español de extension GDPR

 Mirar que pinta.

Inicio desactivadoInicio desactivadoInicio desactivadoInicio desactivadoInicio desactivado

Muchas veces nos preguntamos si hay usuarios comprando y si estos se fueron sin confirmar la compra, donde podemos ver esos carritos, para poder ofrecer a eso compradores  que termine la compra.

Me imagino que hay algun componente de mail que haga esta funcionalidad, pero si no lo hay, sería interesante.

En virtuemart estos carritos sin confirmar se guardan en la tabla con nombre: virtuemart_carts

Esta tabla tiene los siguientes campos:

virtuemart_cart_id-> Primaria int(1) AUTO_INCREMENT : Id del carro
virtuemart_user_id-> int(1)  : Id del usuario.
virtuemart_vendor_id-> int(1) : Id del vendedor, me imagino que este campo lo cubre solo si es el vendedor el que hace el carro por el cliente.. Se puede hacer en virtuemart, pero no utilice nunca esta funcionalidad.
cartData -> varbinary(50000) : Realmente es un Json donde tiene todos los datos del pedido, los productos, datos del cliente ...
created_on-> datetime
created_by-> int(1)
modified_on -> datetime
modified_by -> int(1)

 

Inicio desactivadoInicio desactivadoInicio desactivadoInicio desactivadoInicio desactivado

Crear un select en productos virtuemar para opciones del producto.

Muchas veces nos hace falta que poder seleccionar en un producto su color, su talla o lo que se nos ocurra.

En virtuemart , en menu de productos podemos crear un campo personalizado tipo cadena , que luego podermos añadir a cada producto esos campos.

Inicio desactivadoInicio desactivadoInicio desactivadoInicio desactivadoInicio desactivado

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.

Inicio desactivadoInicio desactivadoInicio desactivadoInicio desactivadoInicio desactivado

Es un componente de gestion vales de descuento, con muchas más opciones que el de virtuemart:
Se puede encontrar en : http://awodev.com/products/joomla/awocoupon

Tiene una versión gratuita y una version de pago  por : 43,99€ (PRO)

La version gratuita , no se donde descargarla ahora. Para aquellos que tiene la versión ( como es mi caso) sigue teniendo actualizaciones.
Ademas este componente fue retirado de gestor extensiones joomla por una advertencia en
la licencia.
UR9: Violation - Licensing Restrictions
https://extensions.joomla.org/extension/awocoupon-starter/

¿ Problemas encontrados?

  1. Los cupones existentes los importa automaticamente al instalar, pero quedan desactivados, me imagino que es por motivo de la importación, esto simplemente entrado en ellos ya se activa.
    por lo que de inicio queda desactivados, tiene que activarse..

Hay que tener en cuenta tambien que los cupones de virtuemart  siguen , pero aunque añadas no funciona y no se añaden automaticamente al componente AwoCoupon.

Tiene GIT por lo aportare el error.

https://github.com/awodev-virtuemart/com_awocoupon/releases

 

 

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

Los componentes de Phoca.cz son siempre una excelente opción, no suelen necesitar muchas actualizaciones y fucionan de forma muy sencilla.

Estuve un par horas probando otros , pero al fina me decidi por phocaemail , ya que hace lo buscamos y no necesitamos mucho mas, se que no es el mas conocido dentro la comunidad de Joomla, pero yo siempre llego la contra. :-)

Aunque el creado de phoca.cz pienso que alguno patrones que utiliza Joomla se lo pasa a la bartola, para mi siguen siendo un creado muy fiable y seguro.

CODIGOS A PONER EN EL NEWSLETTER.

 

  • {name} - será reemplazado por nombre de usuario
  • {email} - será reemplazado por correo electrónico del usuario
  • {sitename} - será reemplazado por el nombre del sitio web - se puede configurar en las opciones
  • {subscriptionname} - será reemplazado por el nombre de la suscripción - se puede configurar en las opciones,, no se realmente para que se pone.
  • {activationlink} - Es el enlace para la activación - Si queremos indicar texto debemos ponerlo dentro href="/{activationlink}
  • {unsubscribelink} - Es el enlace cancelacion subcripción, al igual que anterior
  • {articlelink} - será reemplazado por el enlace a un artículo específico fijado en opciones del boletín
  • {readonlinelink} - Enlace a ver lo on-line, ejemplo:
    <a href="{readonlinelink}">haga clicl para verlo onlinea</a>

Explicacion de los campos de la tabla prefijo_phocaemail_subscribers.

Campos:

  • `name`: El nombre que puso en el campo name.
  • `email`: El email con el se hizo subscriptor del boletin.
  • `token`: Token que genera cuando uno se subscribe, se utiliza para montar los links activacion y desactivacion.
  • `published`: Estado de publicado (1) o despublicado (0), esta opción no comprobe exactamente para que lo utiliza:
        -Si manda o no email
        -Si permite link a ver noticia directamente o no ..{readonlinelink}
        ...
  • `active`: Indica si está activo y puede estar en:
      1. valor 0 : Se subscribio pero aun no activo
      2. valor 1 : Activo
      3. valor 2 : Cancelo la subscripción.

Nuestros procedimiento a la hora enviar newsletter

Utilizamos una plantilla ya mas o menos montada con los campos que vamos utilizar.

A la hora añadir una imagen nos podemos encontrar con problemas ya que podemos realizarlo de varios modos y la verdad aun no tengo claro cual es el mejor, aunque pensamos que la mejor forma es meterlo como nos indica el propio editor de Joomla.

Despues tenemos una lista newsletter para hacer las pruebas, la enviamos y comprobamos si el email se ve bien, fijarse sobretodo en la imagenes.

Una vez comprobado que se ve bien, volvemos enviar a la lista pruebas pero activando el subcriptor (tester) que es un correo que nos faciliata la herramiento tester (maś info) , la cual nos indica otros posible errores o problemas.

Lo normal es que cuando montemos un newsletter lo hagamos con el editor de joomla, el problema es los gestores de correos que a veces utiliza un proxy, que nos puede dar problemas, pongo varias formas de poner la ruta de la imagen:

  • como la meter el editor: images/rutaimagen 
  • ruta absoluta con https
  • sin el https, solo el dominio.es/images/rutaimagen

Lo recomendable es que en lista subscriptores de pruebas este correos de gmail, hotmail y yahoo, para ver si en cada uno de ellos ve correctamente nuestro newsletter. Todo este proceso el tiempo estimado es de una hora, aunque depende del newsletter queremos enviar.

El tiempo envió depende de la cantidad de emails que tengamos subcriptos y la cantidad emails que permita vuestro servidor enviar en un periodo de tiempo, normalmente ronda entre 200 email hora, nosotros marcamos 20s por email.

¡¡ Si deseas realizar una campaña de mailing tenemos montada una plataforma para ello , contacta con nosotros !!

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