Programación

programacion

La programación es el proceso de diseñar, codificar, depurar y mantener el código fuente de programas computacionales. El código fuente es escrito en un lenguaje de programación. El propósito de la programación es crear programas que exhiban un comportamiento deseado.

Subcategorías

Inicio desactivadoInicio desactivadoInicio desactivadoInicio desactivadoInicio desactivado

Hoy me solicitarón añadir el plugin Google Tag Manager a un Joomla 4, como podemos ver es un plugin que solo es compatible para Joomla 3 y su ultima version es de 24 Junio 2020.

Pues nos ponemos manos a la obra , instalamos y va perfectamente la instalación.

Ahora activamos el plugin , tachan !!!

back end error plugin tag manager google

Peto en la parte administrativa. :-(

Compruebo la parte front-end

error front end plugin tag manager google

Tambien peto :-(

Creo proyecto Github asi comitear lo cambios.

El proyecto lo puedes encontrar en este repositorio GitHub.

En principio como esta es funciona, pero me surge la duda de que hacían estas lineas que comente:

if(strpos($_SERVER["PHP_SELF"], "index.php") === false || JRequest::getVar('format','html') != 'html'){
return;
}

Segun el comentario anterior del autor:

"// don't run if we are in the index.php or we are not in an HTML view"
Mi traduccion ( bueno de google traductor) :

// no se ejecuta si estamos en index.php o no estamos en una vista HTML

Pero no tiene sentido que no se ejecuta si esta index.php , aunque el hecho de que no este en la vista html, si tiene sentido...

No , lo preguntaré a ver si me lo explica alguien, de momento la comento.

 

Ratio: 5 / 5

Inicio activadoInicio activadoInicio activadoInicio activadoInicio activado

La intención con este post es ir anotando las errores que vamos encontrando para ello vamos diferencias cuando lo tenemos instalado en joomla 3.10.11 o en joomla 4.2.3, ya que hay errores diferentes en ambos.

Virtuemart 4.0.6.10690

- No encuentra en productos con la Ñ, en las versiones anteriores si lo hacía.

 

Inicio desactivadoInicio desactivadoInicio desactivadoInicio desactivadoInicio desactivado

Joomla por defecto trae dos plugins de recaptcha que funciona perfectamente.

Hoy me surgio el problema que un cliente los desinstalo, que si permite deinstalar, pese que no pero si se puede.

Lo que hicimos para recuperarlo , fue subir de nuevo los fichero de esos plugins directamente a la instalacion del cliente, pero no los reconoce automaticamente, para ello tenemos que instalarlos como nos indica Sergio Iglesias en 5 forma de instalar una extension, lo explica muy bien este post.

Extensiones/Gestionar/Descubrir.

Una vez pulsamos descubrir nos aparece los dos plugin recaptcha que había eliminado el cliente, ahi ya nos deja instalarlo y ya nos lo reconoce el plugin.

Ratio: 5 / 5

Inicio activadoInicio activadoInicio activadoInicio activadoInicio activado

La etiquetas html con fragmentos de código que son las que entienden los navegadores para mostrar las paginas webs y junto CSS podemos maquetar a nuestro gusto. Aunque van de la mano html y css , son

La  idea de este artículo es clasificar estás etiquetas y los elementos que forman estas etiquetas. Inicialmente clasificamos la etiquetas en bloque y en linea, aunque nosotros inicialmente clasificaría las etiquetas principales.

Etiquetas principales

<!DOCTYPE html>

<HTML>

<head>

<body>

Ratio: 5 / 5

Inicio activadoInicio activadoInicio activadoInicio activadoInicio activado

Virtuemart genera json para metadatos en fichero sublayout/snippets.php

Nosotros nos encontramos con el dilema que nosotros redondeamos el precio a dos decimales, aunque en el metadatos ponemos todos los digitos, esto hace que google mechants nos rechace la ficha, ya que la web pone un precio y el metadato otro.

Para solicionarlo modificamos ese fichero en nuestra plantilla, redondeando el campo de precio : product->prices['salesPrice']

El codigo lo dejamos asi:

$description = str_replace('"','\"',htmlspecialchars(strip_tags($description)));
$PrecioFinal = number_format($product->prices['salesPrice'], 2, '.', ' '); // Precio ya con descuento..
?>.....

Ratio: 5 / 5

Inicio activadoInicio activadoInicio activadoInicio activadoInicio activado

Cambiar el favicon de la plantilla cassiopeia debería ser un parametro, esto lo comento para el proyecto de Pablo Arias que quiere montar una plantilla básica con cassiopeia pero con mas opciones. :-)

Al tajo, busco informacion y como siempre voy a las webs conocidad:

 "Como cambiar el favicon en la plantilla de cassiopeia de Joomla 4" de Sergio Iglesias

En esta entrada lo explica super bien , donde poner el favicon , para las versiones anteriores 4.1.1 y para las superiores.

Lo unico que yo añadiría a esa entrada es explicar como carga el favicon , me explico:

$this->addHeadLink(HTMLHelper::_('image', 'joomla-favicon.svg', '', [], true, 1), 'icon', 'rel', ['type' => 'image/svg+xml']);
$this->addHeadLink(HTMLHelper::_('image', 'favicon.ico', '', [], true, 1), 'alternate icon', 'rel', ['type' => 'image/vnd.microsoft.icon']);
$this->addHeadLink(HTMLHelper::_('image', 'joomla-favicon-pinned.svg', '', [], true, 1), 'mask-icon', 'rel', ['color' => '#000']);

Como bien dice en la entrada Sergio, esas son la lineas que cargan el favicon y se pone las tres por los distintos navegadores.

La cuestion es que si tu en la ruta que indica que pongas tu favicon.

media/templates/site/cassiopeia/images/tufavicon.ico

Si haces como yo que solo pongo un favicon ( ico), como mi navegador admite los favicon svg, la primera linea carga el svg, pues entonces muestra ese favicon y no el que acabo de poner.

Mi solucion rápida es comentar la primera linea, aunque lo mejor sería conseguir el favico en ese formato. :-)

Me imagino que lo navegadores que solo admitan los mask-icon, cargaran la segunda linea no la primera.

 

Ratio: 5 / 5

Inicio activadoInicio activadoInicio activadoInicio activadoInicio activado

Solemos utilizar un modulo personalizado para poner encima del menu una alerta, así momento determinado podemos advertir o indicar alguna cosa queramos

alerta modulo

 Estos avisos utilizamos ya el color y código que nos proporcione la propia plantilla, en este caso los tiene por defecto bootstrap 3.8, la intención con este post es indicar donde esta ese modulo y como activarlo y desactivarlo.

¿Donde puedo encontrar el modulo de aviso ?

En menu extensiones , selecionamos Modulo

Modulo personalizado aviso

Luego buscamos el modulo personalizado que tiene titulo aviso.

modulos aviso

Ahi podemos pinchar en Titulo y editarlo, o seleccionarlo y pulsar en menu editar.

Tambien podemos despublicarlo y publicar directamente , pinchando check de publicar.

despublicar publicar aviso

Ojo al editar

Si lo editamos

Editar cambiar texto plano

Tenemos que tener en cuenta que el contenido normalmente tiene html incrustado, que con el editor en estado normal no se ve de forma clara, por lo que si borramos el texto, tambien podemos borrar las etiquetas html, lo que luego cambiara el aspecto de esos avisos.

editor texto plano

Bueno, se si me explique lo suficiente... :-)

Ratio: 5 / 5

Inicio activadoInicio activadoInicio activadoInicio activadoInicio activado

En la version 4.1.0  sacan la opcion de duplicar plantilla  y la sustituyen por crear subplantilla de Joomla (plantillas hijas).

Duplicar plantilla, lo hacia es copiar los ficheros tal cual en el directorio de template, de esa plantilla.

La nueva opcion ( subplantilla) lo que hace copiar la estructura directorios en template y añaden el archivo templateDetails.xml.

En esa versión hay otro cambio bastante relevante, que es cambio la ubicacion de los ficheros css,sass y js de las plantillas pasandolos para el directorio media/templates/nombrePlantilla/, esto en principio para mi es un cambio bastante importante.

Creando una subplantilla de cassiopeia

Entró la plantilla cassiopeia y pulso crear subplantilla, no abre un popup que nos puede un nombre, yo pongo cassiopeia_minombre. A continuación reviso en el codigo que me creo y veo:

Cambios en directorio templates

 cambios templatePodemos ver crea un directorio en plantillas  con el nombre que le pusimos, dentro del directorio añade el fichero templateDetails.xml

Las diferencias en eso fichero con basicas.

pantalla 1 cambio template detalles xml

En ese primer recorte de diferencia podemos ver, crea la carpeta html en media , cuando en la original no lo crea.

Realmente pienso que es es un error.

Los demas cambios ovios, no realmente que son <inheritable> 0 </inheritable> ;

Lo otros lo se o me lo imagino.

 pantalla 2 cambio template detalles xml

 En el segundo recorte , vemos que no añade la carga del lenguaje, por lo que entiendo que carga el lenguaje de la plantilla padre.

Cambios directorio media

 

cambio en mediaCrea en la carpeta media/template/site la misma estructura que tiene cassiopeia.

Aunque en subplantilla crea el directorio html, algo que me parece estraño, pienso que es un error.

En este caso ( media/templates/site/cassiopeia_miplantilla) solo crea los directorios.

Ratio: 5 / 5

Inicio activadoInicio activadoInicio activadoInicio activadoInicio activado

Hoy me solicitan la instalación de un prestashop, recuerdo que hace años lo hice con un compañero, hoy me toca intentarlo yo solo, si puedo :-)

Busco información y encuentro este post en la pagina oficial de prestashop.

En principio voy instalarlo en local, en una maquina con SO debian  10  y apache, teniendo en cuenta que luego tendremos migrarlo al hosting del cliente, asi vamos anotando lo que vamos haciendo y los problemas que nos vamos encontrando.

- Descargo fichero del repositorio de Github de prestashop.