Optimización de PHP sin tocar código

Sí, título amarillista 😀 pero es real, se puede conseguir una gran mejora del rendimiento en aplicaciones PHP de las que para efectos prácticos no nos va a interesar si están bien o mal diseñadas, sino que supondremos que se requiere mejorar su rendimiento sin incrementar los recursos de hardware.
Voy a poner el ejemplo de este blog, en la noche de ayer decidí que andaba algo lento y quería mejorar su rendimiento y velocidad de respuesta, así que el plan era conseguir la optimización de PHP sin hacer mayores cambios, por lo que verifiqué que en el servidor donde estaba hosteado estuviera instalado y activado eaccelerator (porque a decir verdad, hoy en día no puedes hostearte en ningún sitio donde no te provean al menos opcode cache y en unwebparatodos lo hacemos). Continuar leyendo “Optimización de PHP sin tocar código”

Error en KA Social Sharing

Recientemente al migrar una Web a los servidores de godaddy tuvimos el siguiente error con el plugin KA Social Sharing para Joomla!:
Warning: Call-time pass-by-reference has been deprecated in kasocialsharing.php on line 27
en esa línea aparecia lo siguiente:
$finalHtml = $this->prepareFinalHTML( $curPageURL, $plgConfig, &$article );
Para resulverlo solo fue necesario reemplazarla por:
$finalHtml = $this->prepareFinalHTML( $curPageURL, $plgConfig, $article );?

BetterPreview una pésima extensión para Joomla

Tengo unas 12 horas probando extensiones para mejorar las funcionalidades de los sitios y he estado comparando funcionamiento, tiempos de respuesta y utilidad, de todo esto no había encontrado una herramienta tan poco útil, y con con tan buenos comentarios.
Me refiero a BetterPreview un plugin para Joomla que promete apoyar a mejorar la previsualización de los artículos en Joomla, la verdad es que hace menos que eso. Solo consigue reemplazar un url añadiendo una “funcionalidad” que no apoya para nada ya en la práctica que es necesario aplicar los cambios para ver como queda. Sumado a esto noté una disminución en los tiempos de respuesta de los sitios en los que instalé este plugin, cada vez respondían más lento… eliminé selectivamente diversos pluglins y componentes, hasta llegar a BetterPreview y apenas lo marqué como desactivado inmediatamente todo empezó a funcionar normalmente. En definitiva: NO LA INSTALES! y si la tienes instalada QUITALA!

Problema Artio

Problema con Artio,
Por si les llega a resultar útil.
Sucede que la versión de Artio que se había  adquirió no me funcionaba correctamente, ni siquiera me dejaba entrar al admin sin que se trastocara la pantalla, probé con instalar y desinstalar, con mirar si quedaban archivos de la versión anterior pero nada, no tuve éxito, igual me mostraba el molesto pie de página y las url no rulaban correctamente, entonces seguí diversas  instrucciones en la red, pero no me funcionaron, así que estuve mirando un poco el código y me topé con varias cosas, en principio según la licencia del componente se puede modificar, pero no liberar las modificaciones. ( http://www.artio.net/en/joomsef/artio-joomsef-license-and-pricing )
“You are also allowed to modify it for your needs, but you are not allowed to distribute such modified version further”
Entonces ya que el componente comprado no me funcionaba y el componente gratuito si, pero generaba un molesto link  ala página de artio, decidí cambiar un tris el componente gratuito ya que se puede cambiar y con esto no estamos haciendo nada malo…
Empecé a buscar cadenas de texto que coincidieran con el mensaje de salida, pero no salía nada, luego vi en un foro como se podían “ocultar” mensajes en el código, así que busqué los caracteres bajo tales parámetros:
busqué: ‘.’A’.’r’.’t’.’i’.’o’.’ dentro del texto y resultó que el archivo:
/components/com_sef/joomsef.php
contiene la variable:
$buf.='<‘.’d’.’i’.’v’.’>’.'<‘.’a’.’ ‘.’h’.’r’.’e’.’f’.’=’.'”‘.’h’.’t’.’t’.’p’.’:’.’/’.’/’.’w’.’w’.’w’.’.’.’a’.’r’.’t’.’i’.’o’.’.’.’n’.’e’.’t’.'”‘.’ ‘.’s’.’t’.’y’.’l’.’e’.’=’.'”‘.’f’.’o’.’n’.’t’.’-‘.’s’.’i’.’z’.’e’.’:’.’ ‘.’8′.’p’.’x’.’;’.’ ‘.’v’.’i’.’s’.’i’.’b’.’i’.’l’.’i’.’t’.’y’.’:’.’ ‘.’v’.’i’.’s’.’i’.’b’.’l’.’e’.’;’.’ ‘.’d’.’i’.’s’.’p’.’l’.’a’.’y’.’:’.’ ‘.’i’.’n’.’l’.’i’.’n’.’e’.'”‘.’ ‘.’t’.’i’.’t’.’l’.’e’.’=’.'”‘.’I’.’n’.’f’.’o’.’r’.’m’.’a’.’t’.’i’.’o’.’n’.’ ‘.’s’.’y’.’s’.’t’.’e’.’m’.’s’.’,’.’ ‘.’d’.’a’.’t’.’a’.’b’.’a’.’s’.’e’.’s’.’,’.’ ‘.’i’.’n’.’t’.’e’.’r’.’n’.’e’.’t’.’ ‘.’a’.’n’.’d’.’ ‘.’w’.’e’.’b’.’ ‘.’a’.’p’.’p’.’l’.’i’.’c’.’a’.’t’.’i’.’o’.’n’.’s’.'”‘.’>’.’S’.’E’.’O’.’ ‘.’b’.’y’.’ ‘.’A’.’r’.’t’.’i’.’o’.'<‘.’/’.’a’.’>’.'<‘.’/’.’d’.’i’.’v’.’>’;
ahora solo fue cosa de borrar el mensaje y dejar:
$buf.=”; y listo, a dios mensaje de pié de página.
************************
Actualización: “Hemos” migrado a sh404SEF como componente para url’s amigables, se trata de una excelente herramienta de uso libre.

ja_transmenu Solución para menús desplegables en Joomla

ACTUALIZACIÓN:  menú sucherfish para Joomla 1.5.x
Llevo tiempo haciendo plantillas a la medida y cada que el cliente me solicita un menú desplegable, lo que hago es recomendarle se descargue el módulo ja_transmenu y lo instale en su sitio, yo como servicio extra lo configuro y agrego estilos personalizados al template para que todo quede funcionando ok y no violar ninguna licencia.
Aunque el ja_transmenu no es más que el transmenu de Aaron Boodman llevado a Joomla, quien licenció su trabajo como creative commons 2.0, dandonos absoluta libertad para usar su trabajo, pero adaptado a joomla por la gente de joomlart quienes relicenciaron el trabajo como creative common nc 2.5 quitando la posibilidad de uso comercial del trabajo y sus derivados, en fin, a mi parecer debieron dejarlo como cc2.0 pero creo que ellos podían decidir como redistribuir su trabajo (aunque los cambios sean pocos).
Continuar leyendo “ja_transmenu Solución para menús desplegables en Joomla”