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.

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.

Los componente de Phoca.cz son siempre una excelente opción.

Hoy toca integrar phoca-email aun web, después de hora probando otros me decidí por este componente ya que hace lo que buscabamos y de momento no necesitamos más.

El phoca.cz es que creo que algunos patrones que utiliza Joomla se lo pasa a la bartola, pero no puedo hablar mucho ya que hasta ahora no hemos tocado mucho este componente, para ponernos a críticarlo.

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.

Para que el cliente suba las imagenes a una categoría creada desde administrador

cuando se crea una categoria en phocagallery para que el cliente suba las fotos... debo en dicha categoria DAR PERMISOS (una vez logueado pueda subir fotos) en opc. Derechos de acceso y subir derechos → todos los usuarios.

 

Config. general

 config-vista-categorias-phoca-galleryconfig-vista-categorias-phoca-gallery2

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

Añadir campos al formulario de contacto que tiene por defecto Joomla

 Hay muchas opciones para añadir uno o mas campos al formulario de contacto.

Seguramente muhcas veces os surje esta necesidad,la poner campos a mayores, como poner un campo para añadir el telefono o cualquier cosa que se os ocurra.

Hay varios sitios interesantes donde nos indican como hacerlos si tenemos conocimiento de php y html, donde podremos hacer overwrite del componente contactos y ahi empezar desarrollar nuestra imaginacion:

Los ficheros que debemos utilizar ( recuerda hacer overwrite en tu plantilla )

    • components\com_contact\views\contact\tmpl\default_form.php ( overwrite plantilla )
    • components\com_contact\models\forms\contact.xml ( overwrite plantilla )
    • language\es-Es\es-ES.com_contact ( No lo tocaría nunca)
    • components\com_contact\controllers\contact.php ( No lo tocaría nunca)

Ahora Joomla tiene el componente campos que podemos añadir al componente contactos, aunque las pruebas que realice , no fue lo que esperaba, ya que no añade el campo al formulario de forma interactiva.

Recuerda que  el campo de email en un contacto debe tener datos sino el formulario de contacto no se mostrara. No tiene porque mostrarlo, pero es fundamental que lo tenga introducido ya que es donde se va enviar el email.

Otras maneras añadir mas campos:

 Utilizando extensiones , modulos o plugins de terceros. Os recomiendo que provéis nuestro modulo formulario, desarrollado por nosotros y gratuito, el cual consiste un modulo sencillo con algunos campos mas.

- Modulo de formulario

Este modulo lo tenemos operativo en varias web en produccion, donde lo tenemos testeado y con filtros de spam. Cualquier duda o necesidad en este modulo (formulario) comentalo y veremos lo que puede hacer.

El objetivo de esta entrada, es anotar un poco los cambios de css que ponemos para centrar la images de la galeria phocagallery en nuestras plantillas.

Conseguir que si mostramos varias fotos por columnas, que estas cuando no llenen la plantilla que se centren en ella.

centrarImagenPhocagallery

A veces , cuando las imagenes metemos , son demasiado grandes, nos deja un espacio a la derecha o incluso centrar las imagenes de la ultima fila, como se enseña en la imagen.

Lo podemos hacer es sobreescribir el css que genera el componente.

1.- Localiza la capa contendora de las imagenes, en la version actual es:

pg-msnr-container

y añadimos al css de nuestra plantilla:

  #pg-msnr-container {
margin: 0 auto;
text-align: center;
}

Luego buscamos el contenedor ( capa ) de cada imagen

.pg-cv-box{
float: none; /* Para eliminar el que traer left */
display: inline-block;
}

Bueno, lo siento por no explicar más , espero que valga de ayuda, a nosotros no sirve recordatorio...

Cualquier duda , podéis informanos en contactar.

phoca-logoPhoca Gallery es una de las extensiones más populares de Joomla. Es un componente que nos crea Galerias de imagenes y nos permite gestionar facilmente desde el administrador.

Es una extensión GRATUITA, por ello se debería mantener en el pie del  componente el Powered by Phoca Gallery, este es motivo por el que los creadores NO nos facilitan de una forma sencilla ( parametros del componente) que podamos quitarlo.

En Soluciones Vigo nos parece muy correcta esa actuación, lo que pasa que no todos los clientes que tenemos tiene la misma forma de pensar, por ello creamos es post para facilitar un método para quitar del pie del componente "Powered by Phoca Gallery ".

Debemos saber que está explicación es para phocagellery  4.xx , para otras versiones puede variar, aunque no mucho, ya que llevamos años trabajando con phocagallery y es muy similar.

QUITANDO "Powered by Phoca Gallery"

Lo primero recomendar hacerlo en overwrite de tu plantilla, no en el componente, ya que cada vez que actualices el componente puede que tengas volver hacerlo.

Hay que quitar una línea en 3 ficheros.

FICHERO 1:
/components/com_phocagallery/views/category/tmpl/default.php

Lo único que debemos hacer es comentar la siguiente línea de código:

echo $ this-> tmpl ['emm'];

Este se eliminará el " Powered by Phoca Gallery "de la categoría imagen página de vista.

En la versión anterior 3.2.1 este código era
"echo $ this-> tmpl ['dsf"];

FICHERO 2:
/components/com_phocagallery/views/categories/tmpl/defaul.php

Volvemos a comentar o eliminar la siguiente línea.

echo PhocaGalleryUtils::footer();

Esto eliminará el " Powered by Phoca Gallery " de la página de lista de categorías.

FICHERO 3:
/components/com_phocagallery/views/cooliris3dwall/tmpl/default.php

El código siguiente lo eliminamos o comentamos:

PhocaGalleryUtils::footer();

Esto eliminará la phoca galería pie vínculo de retroceso de página Cooliris 3D Wall.

Sugiero que si les gusta el componente Phoca Gallery y van quitar sus CREDITOS pues vaya a la pagina del componente y haga una donación.

Requisitos:  (en Front-end, site --> views o models)

1. En el .xml de la vista en el tmpl, podemos cambiar el titulo de la vista del item menu , donde 

<layout title="COM_MYRSSREADER_VIEW_TITLE"> sería:

<layout title="nuevaVistaDeItemMenu">

2. Nombre de la carpeta de la vista se usa en las clases creadas en :

vista creada: nuevorss

la vista  : view.html.php --> class LectorViewNuevorss extends JView

el models :  --> class LectorModelNuevorss extends JModel

 3. Palabra PROHIBIDA: Usar MODELO! Si lo usas como nombre de la carpeta de la vista te dara un error y no te funcionará el componente.

Los componentes Nativos de Joomla:

Nosotros llamamos componentes nativos aquellos componentes que trae por defecto las versiones Joomla, ya que en algunos sitios también llaman nativos a los componentes de terceros que son compatibles en modo legacy, nosotros los llamamos componentes de terceros.
Lista de componentes Nativos para Joomla 1.56

Subcategorías