Archivo de la etiqueta: wordpress

Antispam para Comentarios de WordPress – Antispambee

Recientemente en éste sitio estaba siendo bombardeado por miles de Comentarios de Spam.

No quise contratar Akismet, ya que si bien viene por default en WordPress hay que pagar un canon por su utilización.

Hasta llegue a pensar en desarrollar mi propio plugin, utilizando el metódo estadísitico de Bayes para contar la ocurrencia de palabras, y al marcar como Spam manualmente el sistema aprendiera a futuro determinar cuales mensajes eran Spam y cuales no. Pero…no es mi negocio hacer plugins, aunque todavía no descubrí realmente cual és mi negocio.

Finalmente me encontré con un hermoso plugin gratuito: AntispamBee for WordPress

http://antispambee.com/

En el tiempo que tengo instalado el Plugin, detectó 1.542 Comentarios de Spam, ningún falso verdadero y ninguna intervención de mi parte.

Realmente un éxito.

Ocultar Shortcodes en excerpts (extractos)

Muchas veces necesitamos mostrar el Excerpt de un post, o una parte del content, sobre todo en sitios de noticias, en la home o dentro de los widgets o sidebar de nuestros sitios.

Imaginen que el content llama a un plugin que utiliza un shortcode (nextgen gallery por ejemplo).  Si traemos el contenido $post->post_content nos va a traer el texto del shortcode.

No voy a mostrar como traer un excerpt o parte del post en su defecto, el código que pongo sirve para ocultar los Shortcodes para que no se vean. Usa expresiones regulares para sacar lo que esté dentro de [ shortcodes ]

$text = preg_replace( ‘|[(.+?)](.+?[/\1])?|s’, ”, $text);

Buscando la solución me encontraba siempre con ésta pregunta, por lo cual decidi respondarla, para ayudar a la comunidad.

http://wordpress.org/support/topic/how-to-remove-short-code-from-post-excerpt

Submenú de páginas de WordPress

Muchas veces necesitamos utilizar WordPress como un CMS, para eso es necesario tener jerarquia de páginas y menús acordes.

El siguiente código, dada una página cualquiera, si la misma tiene subpáginas, muestra las mismas. En caso de no tener subpáginas, muestra las subpáginas de la página superior (es decir que se incluye a si misma).

CORRECCIÓN: En una implementación de WP que teniamos, nos encontramos con un error, el get_pages siempre devolvía algo. Entonces si una page no tenia hijos, no se ejecutaba el ELSE.

Modificamos el get_pages, comentada queda la línea anterior.

<ul>

<?php // CORRECCION $pagekids = get_pages(“child_of=”.$post->ID.”&sort_column=menu_order”);

$pagekids = get_pages(“child_of=”.$post->ID.”&hierarchical=0&parent=”.$post->ID);
if ($pagekids) { ?>
<?php wp_list_pages(‘title_li=&child_of=’.$post->ID.”&sort_column=menu_order&depth=1″); ?>
<?php } else {?>
<?php wp_list_pages(‘title_li=&child_of=’.$post->post_parent.”&sort_column=menu_order&depth=1″); ?>
<?php } ?>
</ul>
</li>
<?php } ?>

</ul>

wpTouch – WordPress para equipos móviles

wpTouch es un plugin/theme para WordPress, se configura como un plugin con varias opciones y es totalmente inobstrusivo con nuestro theme para navegadores web.

Se puede modificar la página de inicio, que categorias mostrar, colores e iconos.

Pueden probar nuestro sitio desde su iPhone, Android, Blackberry  y Symbian para ver como se ve.

Les dejo el link del desarrollador: http://www.bravenewcode.com/products/wptouch/

Plugins de WordPress para tener a mano

Cada vez que hacemos una nueva instalación de WordPress tenemos que ponernos a pensar que plugins nos va a hacer falta además del theme que diseñemos o utilicemos.

Les dejo una lista de los plugins más importantes a mi criterio:

Advertising Manager: Publicidades de Google y otras fuentes
All in One SEO Pack: Plugin necesario para optimizar nuestros sitios para buscadores
Contact Form 7: Formularios de contacto customizables
Facebook Fan Box: Muestra un recuadro con los fans de nuestra página de la red social Facebook
Google Analyticator: Permite colocar el código de Google Analytics para hacer estadisticas de nuestro sitio
Google XML Sitemaps: Crea un sitemap de nustro sitio automáticamente para indexarlo en Google y otros buscadores
Invisible Defender: Protege nuestro login, registracion y comentarios de bots
Login LockDown: Registra la cantidad de veces que se intenta ingresar en nuestro login desde una IP, y permite bloquear los ingresos
Webmaster Tools Verification: Permite ingresar el código de validación para las Herramientas para Webmasters de Google
WordPress Database Backup: Realiza backups periódicos en un directorio, y permite enviar una copia del mismo vía email
WordPress File Monitor: Vigila el sistema de archivos para notificarnos ante cambios
WP Super Cache: Permite aliviar el CPU de nuestro servidor haciendo caché de las páginas en HTML y servirlas a los visitantes.
Yet Another Related Posts Plugin: Plugin muy útil para colocar Posts relacionados al post actual.

Pueden descargarlos directamente desde la página de WordPress donde encontrarán la versión más actualizada.

Más adelante haré una review de cada uno.

BitNami – Aplicaciones web

Hacé poco estuve investigando para instalar un CRM para empezar a jugar un poco. Cómo no dispongo de un equipo específico para hacer pruebas se me ocurrió hacerlo en una máquina virtual de VMware, que si tengo instalada en mi notebook.

La búsqueda termino cuando encontré BitNami, un sitio que ofrece maquinas virtuales con conocidas aplicaciones web ya instaladas y configuradas. BitNami hace que el deployment de aplicaciones servidor sea un proceso sencillo y agradable.

Las Vm contienen un sistema operativo Linux y un totalmente configurado Stack BitNami. Los Stack son las instalaciones de las aplicaciones web ya configuradas listas para usar. La ejecución de las imágenes de máquinas virtuales requiere un hipervisor como VMWare o VirtualBox, por lo que se recomienda para los administradores de sistemas y usuarios avanzados, o como en muchos casos, para gente con ganas de explorar.

Contamos con todo tipo de aplicaciones: Infraestructuras de desarrollo, WordPress, Mantis, Trac, Redmine, Jasperserver, Alfresco, Drupal, Joomla, SugarCRM, phpBB, Opina, Subversion, etc.

Les dejo el Link: http://bitnami.org/