Joomla

Joomla es mi CMS preferido, que permite desarrollar todo sitios web dinámicos e interactivos, una simple web , un blog, una tienda online, lo que se te ocurra se puede hacer con Joomla.
Su nombre es una pronunciación fonética para anglófonos de la palabra swahili jumla, que significa "todos juntos" o "como un todo". Se escogió como una reflexión del compromiso del grupo de desarrolladores Joomla y la comunidad del proyecto.
Es desarrollado principalmente en PHP ,puede ver en este link Requisitos software para cada versión Joomla de la pagina Oficial
Mas información y descarga de la Pagina Oficial.
Un modulo nativo de los más utilizados por nosotros, por la facilidad que nos permite añadir contenido.
Incluso podemos añadir instrucciones ejecucción de plugin, que nos hacer que este modulo sea mucho más vestatil.
Nosotros no somo partidarios de instalar muchos modulos de terceros, somos más partidarios de reutilizar modulos nativos, incluso copiarlos para añadirles más caracteristicas.
Normalmente es muy fácil poder duplicar un modulo, pero en este caso el mod_custom nos trajo alguna complicación.
Por ello analizamos a fondo el funcionamiento interno de este modulo, el uso a nivel de usuario hay ya mucha información en la red.
[PENDIENTE]CARGAR LINK DE AYUDA MODULOS PERSONALIZADOS.
CÓDIGO DEL MODULO COSTUM
Realmente este modulo no tiene mucho que explicar.
Tiene los siguiente fichero y carpetas:
- mod_custom.php
- mod_custom.xml
- DIRECTORIO: tmpl
El directorio tmpl, es donde podemos encontrar la vista por default, que podemos realizar overwrite para nuestra plantilla.
Lo más curioso y lo que nos hace que no podemos copiar el modulo y cambiarle el nombre y poder modificar el funcionamiento de este, es que este modulo en la parte administrativa carga una seccion llamada "Salida Personalizada" y no esta indicada en los fichero del código del modulo.
Esto es debido que la extension "Gestor de modulo" tal como conocemos en la parte administrativa , es un componente de la parte administrativa ( com_module), y es esté componente el que añade la sección del modulo custom ( "Salida Personalizada" ) por lo que si queremos que la añada en otro modulo tendriamos que cambiar el código del "Gestor de modulos" ,algo por lo que nosotros no estamos de acuerdo ,ya pertenece para nosotros al nucleo del Joomla.
Ficheros de com_module donde realiza la carga sección "Salida Personalizada"
com_module/views/module/edit.php
$hasContent = empty($this->item->module) || $this->item->module == 'custom' || $this->item->module == 'mod_custom';
/* Lineas adelante pone el siguiente código donde inserta la secciónd de "Salida Personaliza "*/
<?php if ($hasContent) : ?>
<div class="col main-section">
<fieldset class="adminform">
<legend><?php echo JText::_('COM_MODULES_CUSTOM_OUTPUT'); ?></legend>
<ul class="adminformlist">
<li><?php echo $this->form->getLabel('content'); ?>
<div class="clr"></div>
<?php echo $this->form->getInput('content'); ?></li>
</ul>
</fieldset>
</div>
<?php endif; ?>
Con esto nos obliga buscar otra solución para cuando queramos cambiar el funcionamiento o el uso del mod_custom
BUSQUEDA DE MODULOS EXTERNOS SIMILARES.
Antes ponernos a idear soluciones para lo que pretendemos hacer, nos ponemos a buscar otro modulos que sean similares.
Modulo Custom Advanzado: Este modulo simplemente utiliza la creación de campos texto, lo descarto ...
Ad Single Article: Este modulo es muy simple, lo que hace es añadir el contenido de un articulo dentro del modulo, por lo que podemos ponerlo en las posición que le indiquemos.( Muy util)...
En Joomla 2.5 y 3+ tiene una funcionalidad para ocultar los email.
Esto es recomendable, por eso debe ser que ahora las ultimas instalaciones que realice de Joomla 3.4.1 me está surgiendo algunos problemas cuando el contenido tiene un email, ya que este genera un javascript para poder ocultar los email, pero me está dando problemas con otro componentes o modulos que tiene javascript.
Por ello , yo desactivo el plugin : Contenido - Enmascarar correo ( emailcloak ) que trae joomla activa por defecto mientras no encuentre otra solución.
De todos modos si quieres utilizar la funcion de joomla en tus modulos o componentes en este link puedes encontrar más información.
SOBI PRO si queremos actualiza versiones inferiores 1.0.8 a 1.1 no podemos, necesitamos tener instalada primero la versión 1.0.8 y luego realizar la instalación 1.1. x.
Hasta ahora las pruebas realizadas fuero todas un desastre, lo que está claro que si quieres conseguir la versión 1.0.8 tiene que pagar a sus creadores, ya que en su web no permite la descarga.
Aunque no es mucho, ya que puede subcríbirte por 40 euros, como esto es para una web de un cliente de momento lo descartamos, hasta que este nos lo confirme.
BUSQUEDA DE SOBI VERSION 1.0.8
Encontramos el siguiente link:
http://code.openhub.net/project?pid=LtlFqA9eV-4&cid=w8j_HxGRgxI&fp=281592&mp=&projSelected=true
Pero vemos que no hay forma descargar el paquete completo. Se lo comentamos a nuestro técnico de sistemas, pero este tampo fue capaz de buscar ninguna manera de poder descargarlo.
No remite otro link:
https://svn.suski.eu/SobiPro/Component/trunk
El cual por la pinta pertenece a los creadores de SOBI PRO, por lo que tampo se puede descargar.
Así que no queda otra que pagar o perder todas las entradas que tengas en ese componente y instalar desde cero.
" Se me ocurre utilizar un componente que hay por ahí para añadir entradas a sobipro automaticamente"
YA OS DIRE COMO ME FUE.
Estuve buscando si la encontraba y lo único que encontre es este repositorio svn pero pide contraseña.. ;-) -Guillermo.
Utilizando el componente que trae por defecto ( COMPONENTE NATIVO ) Joomla de leer RSS , podemos crear un link donde podamos mostrar los videos de un canal de youtube:
https://www.youtube.com/feeds/videos.xml?channel_id=XXXXXXXXXXXXXXXXXXXXXXX
Donde solo tenemos que sustituir XXXXXXXXXXXXXXXXXXXXXXX por el id del usuario del canal de you tube.
- Olalla
- Joomla
if(!defined('DS')){
define('DS',DIRECTORY_SEPARATOR);
}
Controller class change from JController to JControllerLegacy
//$controller = JController::getInstance('HelloWorld');
$controller = JControllerLegacy::getInstance('HelloWorld');
Model class change from JModel to JModelLegacy
class HelloWorldModelHelloWorld extends JModelItemLegacy
View Class Change from JView to JViewLegacy
//class HelloWorldViewHelloWorlds extends JView class
HelloWorldViewHelloWorlds extends JViewLegacy
class HelloWorldController extends JControllerLegacy
class HelloWorldModelUpdHelloWorld extends JModelFormLegacy
JRegistry::getValue() now is JRegistry::get()
//Convert sample to JRegistry with LoadJSON - Sample from Joomla 3.0 sourcecode
// $params = new JRegistry;
// $params->loadJSON($this->item->params);
// $this->item->params = $params;
$params = new JRegistry;
$params->loadString($item->params);
$item->params = $params;
Database function changes -
nameQuote(joomla 2.5) - quoteName(joomla 3.0)
link: https://ramnihor.wordpress.com/2012/10/03/migrate-joomla-extension-from-2-5-to-3-0/
El objetivo de está entrada es iniciarnos para crear nuestros plugins para Joomla, ver el potencial que tienen e incluso poder modificar el funcionamiento de alguno.
Para ello os pongo el ultimo de una serie vídeos que organizo Desarrollo Web en sus Hangouts, con titulo: "Programación con Joomla"
En estos participarón muy buenos programadores aportando su experiencias, tengo que nombrar a dos de ellos, los conocemos y tenemos muy buenas referencias de ellos:
- Roberto Segura
- Isidro Baquero
Video de ultimo de serie de programación en joomla.
Algunas anotaciones iniciales y genereales
- Potencia que tiene los plugins
- No es más pesado, ni influye negativamente en el rendimiento el utilizar plugins.
- Utilizar plugin hace que podamos re-utilizar con más faclidad nuestro código.
- "Los plugins se insertan despues de eventos "
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.

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.
- Olalla
- Componentes
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.
- Olalla
- Componentes
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
