lunes, 1 de septiembre de 2014

Enlaces de busqueda personaliza para Joomla

El plugin de Joomla 2.5 para realizar búsqueda de artículos no tiene en cuenta aquellos que desarrollamos con módulos. Para ello es posible modificar el núcleo de Joomla para que se creen correctamente los enlaces en los listados de búsqueda.

En el archivo /plugins/search/content/content.php en la parte donde lista los artículos que se han encontrado para ser mostrados en la pagina podemos introducir un nuevo if (o switch si empiezan a ser muchos) para decirle a joomla como mostrar cada categoria de articulos:

if (isset($list))
{
  foreach($list as $key => $item) {
    $catid=explode(":",$item->catslug);
    $id=explode(":",$item->slug);
    if ($catid[0]==15) { // Para una categoría concreta
      $list[$key]->href = "index.php?option=com_content&view=article&id=".$id[0]."&Itemid=180";
    }else {
      $list[$key]->href = ContentHelperRoute::getArticleRoute($item->slug, $item->catslug, $item->language);
    }
  }
}

martes, 20 de mayo de 2014

Cambiar forma en la que genera Joomla 2.5 el alias de los articulos

En Joomla 1.5 no importa que nombremos los artículos con el mismo titulo porque el alias se puede repetir pero al actualizar a Joomla 2.5 descubrí que esta nueva versión no permite que haya dos alias iguales por lo que me encontré con la necesidad de cambiar todos los alias de los artículos en la base de datos directamente antes de hacer la migración.

El caso es que después de hacer la migración seguimos teniendo el mismo problema porque el núcleo de Joomla 2.5 genera los alias de una forma muy similar a la versión 1.5. Para evitar que teniendo artículos con el mismo nombre nos de error al generar el alias tenemos que modificar el núcleo de Joomla. El archivo a modificar es el siguiente: libraries/joomla/database/table/content.php

Dentro de la función check() he cambiado la sentencia

if (trim($this->alias) == '')
{
$this->alias = $this->title;
}

por lo siguiente: $this->alias = $this->title."-".$this->id;

Yo he utilizado el id de cada articulo porque este es único pero podríamos utilizar cualquier cosa que lo diferenciase.

Cambiar el orden por defecto en el que muestra Joomla 2.5 los articulos en el Backend

Joomla por defecto muestra los artículos de la pagina web en la zona de backend por orden de titulo sin posibilidad de cambiar ese orden por defecto.

Para hacerlo hay que modificar una linea del núcleo de joomla. El archivo se encuentra en administrator/components/com_content/models/articles.php

En la linea 98 podemos cambiar tanto el orden como el concepto por el que queremos ordenar:

Ejemplo de ordenar de mas reciente a man antiguo: parent::populateState('a.created', 'desc');

lunes, 19 de mayo de 2014

Modificar plugin joomla CCK para que no cambie los nombres de los archivos al subirlos a una pagina web

Con este tutorial pretendo informar que archivo hay que modificar del plugin de joomla cck para que al subir los archivos a nuestra pagina Joomla no cambie el nombre de los archivos (el plugin por defecto elimina los espacios, guiones bajos y pasa las mayúsculas a minúsculas).

Hay que modificar el archivo en la siguiente ruta y comentar las lineas 446-447-448:
plugins/cck_field/upload_file/upload_file.php


domingo, 14 de abril de 2013

Todos los políticos NO son iguales pero se parecen mucho

Desde que empezó esta gran estafa mundial llamada "Crisis Económica  no hago mas que escuchar que todos los políticos son iguales, igual de malos, igual de sinvergüenzas, igual de ...

Podemos negar la mayor, no todos los políticos son iguales, desde luego que no y podríamos poner cientos de ejemplos para demostrarlo pero de lo que no cabe ninguna duda es que en demasiadas ocasiones, lo parecen.

Mirando unos cuantos años atrás da la sensación que el gobierno de Zapatero hizo bien poco por evitar la actual crisis, nos dedicamos a vivir el momento y poco mas en estos temas que nos atañen tanto hoy en día  Desde luego que se hicieron muchísimas cosas bien pero desde aquel desastroso mayo de 2010 el socialismo español quedo tocado de muerte.

En muchas ocasiones he oído el dicho que dice "para que me den por culo, mejor profesionales". En una lastima, por no decir una vergüenza que las políticas económicas llevadas acabo desde mayo de 2010 hasta noviembre de 2011 por el PSOE no fuesen mas que un parecido mas ligero que las medidas que actualmente aplica el PP en nombre de la herencia recibida. ¿de verdad era posible que el socialismo no pudiese presentar otras medidas que no fuesen las que preconizaba la derecha? ¿no tenemos como partido de izquierdas, ideas diferentes que las de la derecha?

Hay amigos que incluso me llegan a decir que los términos derecha e izquierda ya no existen. Yo siempre digo lo mismo: no es que no existan, es que al PSOE le sobran las dos letras de sus siglas.

El día que el PSOE sea capaz de actuar verdaderamente como un partido de izquierdas, volverá a ser alternativa real de gobierno y muchas cosas cambiarán en España. Mientras tanto solo nos quedará esperar.


sábado, 2 de febrero de 2013

La marca España

El Partido Popular han hablado mucho durante los últimos meses de la "marca España" y del supuesto daño que ocasionaban algunos grupos de ciudadanos a la misma con sus manifestaciones, huelgas generales y demás quejas.

Esta "marca", tan resentida por aquellos que podríamos catalogar como la "antiEspaña", es muy importante que cotice lo mas alto posible a nivel internacional para que los "mercados" crean que somos capaces de gobernarnos a nosotros mismos.

Algunos se han dedicado durante demasiado tiempo a descalificar a aquellos que alzaban la voz contra las decisiones del gobierno, impopulares si, pero no lo mas grave es que todas estas medidas no iban anunciadas en ningún programa político o electoral.

Mariano Rajoy gano las elecciones generales del 2011 mintiendo a todos los españoles sobre las medidas necesarias para levantar esa marca España. Todas esas medidas, tan importantes para levantar nuestro país de la grave crisis que nos afecta, han sido diseñadas por un grupo de personas a los que bien podríamos acusar de hundir la marca España. ¿a caso no hunde la marca España que el Presidente del Gobierno este siendo acusado por diferentes medios de comunicación de haber recibido comisiones ilegales durante años?¿A caso no hunde la marca España que una ministra del Gobierno no este acusada de haber recibido regalos de la red de corrupción Gürtel?

Eso si, no olvidéis que la marca España la hunden los rojos comunistas y esos antiEspaña que se manifiestan en las calles porque no pueden hacer valer sus decisiones en otros lugares. No lo olvidéis.

martes, 18 de septiembre de 2012

Java: el comienzo

Llevo un tiempo pensando en colocar en el blog mis pequeños conocimientos sobre programación. Esta idea, mas que pretender enseñar nada a nadie pretende afianzar mis propios conocimientos. Además, motiva mucho que lo que escriba aquí le pueda servir a otras personas para solucionar sus problemas o aprender cosas nuevas.

He elegido Java porque es el lenguaje de programación que mejor controlo ya que en la UC3M se encargan de darnos caña a los estudiantes de informática con él.

El objetivo de los lenguajes de programación es hacernos entender con el ordenador. Cuando se inció esto de la informática con procesadores modernos solo unos pocos eran capaces de hacerse entender con ellos ya que era imprescindible "hablar" en su idioma (lenguaje maquina). Este es sumamente dificil porque solo consta de 1 y 0. Tiempo despues se invento el lenguaje ensamblador que aunque dificil de comprender, facilitaba el uso de los ordenadores a la vez que aumentaba las posibilidades de los mismos. Aun así, la verdadera extensión de la informática llego de la mano de los lenguajes de alto nivel, tales como C, FORTRAN y otros. Estos lenguajes eran mas próximos al lenguaje natural y por tanto al alcance del comun de los mortales. Estos lenguajes son "compilados" (pasados a 0 y 1) para que el ordenador pueda entenderlos.

El lenguaje Java se diferencia de los anteriores en algo sustancial. Esta hecho para que no haga falta compilarlo para cada tipo de maquina (procesador) y / o sistema operativo. Su lema lo explica muy bien: "Escribelo una vez, ejecutalo en cualquier lugar". Con este lenguaje, el archivo con el codigo se "precompila" a un archivo intermedio con extensión ".class". Este archivo es ejecutado por el Java Runtime Environment (JRE). Ya no hace falta compilar e incluso cambiar el codigo para cada maquina porque lo unico que hace falta es tener instalado en la maquina el JRE correspondiente.

Como mi objetivo es no aburrir, voy a dejar la parte de historia y me voy a poner a contar un poco de Java. Aquí tenéis mucha mas información: http://es.wikipedia.org/wiki/Java_(lenguaje_de_programaci%C3%B3n)

A mi personalmente, cuando me pongo a hacer algo nuevo, me gusta ver resultados en poco tiempo.
El lenguaje Java esta practicamente liberado en su totalidad, por ello podemos bajar de la pagina oficial de Oracle el compilador y la mayor parte de las clases para trabajar con él (ya contaremos que son).


En el enlace anterior podeis descargaros el JDK (Java Development Kit). En este archivo vienen los archivos necesarios para compilar y ejecutar nuestros programas en Java. En la imagen veis los archivos que podeis descargar dependiendo de vuestro sistema operativo.

Despues de instalar el programa necesitamos que cuando creemos nuestros programas podamos ver resultados. Para ello, necesitamos usar el simbolo de sistema (CMD en windows). A este programa se accede desde ejecutar y poner "cmd" sin comillas.


















Nuestro código, que mas adelante os explicare ira en un simple archivo de texto. Lo mas importante es que el nombre del archivo termine con ".java" en lugar de ".txt". Para asegurarnos que esto esta bien debéis poder ver las extensiones. Para verlas en Windows XP os vais a cualquier carpeta, y desde "Herramientas, Opciones de Carpeta, Ver" dejáis sin seleccionar la pestaña que dice "ocultar las extensiones de archivo para tipos conocidos".

Para compilar un archivo *.java nos vamos a cmd y buscamos la carpeta donde tengamos los archivos de java. En mi caso teclearia "cd Escritorio" e intro. A continuación, tecleamos "javac HolaMundo.java" y para ejecutar el archivo HolaMundo.class creado ejecutariamos "java HolaMundo".


En la mayoria de los casos no funciona el comando javac ni el de java y el cmd nos dice que no lo reconoce. Para solucionar este caso debemos indicar al ordenador donde estan los programas de java. En mi caso estan en: "C:\Archivos de programa\Java\jdk1.7.0_07\bin". Para poner esta nueva direccion nos vamos a "MiPC, boton derecho, Propiedades, Opciones avanzdas, variables de entorno". En la nueva ventana, buscamos en el listado de variables de sistema la variable PATH, la seleccionamos y le damos a modificar. Copiamos la direccion de antes y la añadimos al final del texto que sale despues de incluir un ";" al final de la ultima instrucción escrita. Después guardamos todo el proceso y ya podriamos ejecutar nuestro programita.



Os dejo los enlaces con dos archivos para hacer funcionar el programa. Uno es "HolaMundo.java" que podéis abrir para ver como funciona lo mas simple y otro es para que no tengáis que compilar desde cmd. Este archivo llamado "Ejecutar.bat". Este ultimo archivo hace la compilación y la ejecucion del programa por si solo para que no tengáis que abrir el cmd y cambiar la ruta hacia vuestra carpeta. Muy cómodo si programais sin IDE (entorno de desarrollo integrado).

Enlace HolaMundo.java
Enlace archivo .bat
Este último enlace es también un archivo de texto por motivos de seguridad. Os lo podéis copiar en un archivo en vuestro ordenador y desde ahí quitarle la extensión ".txt" para que sea ejecutable.