Blog archives for Junio, 2009

Junio 30th, 2009

WP-Polls: Crear encuestas autores y editores, no solo admin

wp-polls

El otro día expliqué como usar el plugin de encuestas WP-Polls, pero este plugin tiene un “defectillo”, y es que solo permite crear y gestionar encuestas al usuario administrador de WordPress, un fallo tonto. Los usuarios “normales” (autores y editores) de un WordPress solo pueden insertar encuestas pero ¿que sentido tiene si las encuestas tiene que crearlas el administrador y facilitar el ID de las mismas a los autores?, me parece algo totalmente improductivo.

Afortunadamente todo tiene solución en WordPress y he encontrado tres maneras de saltarse esta restricción:

1. Modificar el código del plugin

Esta es una solución sencilla “a priori”, solo tienes que abrir el archivo wp-polls.php de la carpeta del plugin y sustituir esta línea …

$role = get_role('administrator');

por esta otra …

$role = get_role('author');

Solo que no siempre funciona, prueba y si te funciona perfecto.

2. Modificar en profundidad el código del plugin

Esta otra solución, que proponen en los foros de soporte de WP-Polls, pasa por una modificación profunda de algunos aspectos de los ficheros del plugin, permitiendo definir más finamente que puede hacer cada tipo de usuario.

Pero malas noticias, tampoco funciona siempre.

3. Role Manager

No me cansaré de recomendar este plugin. Y es que, además de su utilidad innegable para una gestión completa de los perfiles de usuario de WordPress, también se integra con otros plugins que dependen de estos roles. Por supuesto, también con WP-Polls.

Activar la creación y administración de encuestas a autores y editores es tan fácil como dirigirse a “Usuarios -> Roles” y en los susudichos perfiles hacer clic en la casilla de “Manage polls”. A partir de ese momento los usuarios con perfil de Author y Editor podrán crear, gestionar y, por supuesto, insertar encuestas en WordPress.
author-manage-polls

¿Cual eliges?

Contenido exclusivo para suscriptores al Feed

¡Gracias por seguirnos a diario!. Premiamos tu fidelidad ofreciéndote habitualmente contenidos exclusivos. Hoy puedes descargar:

Clic aquí para iniciar la descarga Guía para Administrar Wordpress

¿Te gustó este post? ¡Compártelo!

Bitacoras.com
TwitThis
Facebook
Meneame
Google Bookmarks
del.icio.us
Live
Technorati
Ping.fm
Wikio
Turn this article into a PDF!
E-mail this story to a friend!
Print this article!

Electroplastas.es Un nuevo proyecto que te ayuda a disfrutar de la música a través de playlists de Spotify. Las mejores canciones de Lost, una selección musical de Tarantino o una lista de versiones del Light My Fire de The Doors te están esperando.

Promociona tu web con BetaBlocks (www.betablocks.com).

Junio 30th, 2009

Integración de comentarios de Friendfeed en WordPress

Me avisa Kike Alonso de un nuevo plugin que permite que los comentarios que dejen tus amigos de Friendfeed al respecto de un post de tu sitio WordPress aparezcan también en tu post como comentarios normales, algo realmente interesante pues permite, con algunos clientes de escritorio e iPhone, comentar en blogs sin dejar de usar la aplicación de mensajería.

¿Te gustó este post? ¡Compártelo!

Bitacoras.com
TwitThis
Facebook
Meneame
Google Bookmarks
del.icio.us
Live
Technorati
Ping.fm
Wikio
Turn this article into a PDF!
E-mail this story to a friend!
Print this article!

No te pierdas el canal twitter de wwwhatsnew.com. twitter.com/wwwhatsnew te trae la mejor selección de noticias de tecnología, polémicas y curiosidades de nuestro día a día.

Promociona tu web con BetaBlocks (www.betablocks.com).

Junio 30th, 2009

Lanzado Firefox 3.5!

Bueno, ya está aquí. La versión final de Firefox 3.5 irrumpe hoy en el mercado y planea romperlo

firefox35
(Ver Imagen)

Ya lo puedes descargar directamente desde aquí.

Artículos relacionados

aNieto2k

Junio 29th, 2009

Una de cosillas rápidas

Un par de cosillas que he encontrado y que pueden interesantes tener presentes:

  1. SMT (Simple Mouse Tracking): Sistema basado en Javascript para guardar el rastro del ratón del usuario al pasear por tus páginas.
  2. : Librería que usa Prototype + Script.aculo.us para conseguir unas tablas dinámicas muy interesantes.
  3. Wordpress Configuration Tips: Trucos de optimización durante la configuración de Wordpress.
  4. wordwrap en Javascript: James Padolsey crea una pequeña función que emula la función wordwrap() de php.
  5. Trucos de Gmail: Conviertete en un Gmail Ninja!!
  6. Haz Dra&Drop en tablas: Javascript para realizar drag & drop con el contenido de las tablas.
  7. $fx: Librería Javascript especializada en animaciones.
  8. jsAnim: Otra librería Javascript especializada en animaciones.
  9. Gx: Y una más, otra librería Javascript para realizar animaciones (tan solo 10kb sin comprimir).

Artículos relacionados

aNieto2k

Junio 29th, 2009

Exportar por partes

backup

Una de las cuestiones que más trae de cabeza a cualquier usuario de WordPress a la hora de migrar de servidor es el asunto de la exportación de los posts, más en concreto la importación de los mismos. Esto es debido a las limitaciones por defecto de los servidores, incluso WordPress, a la hora de importar ficheros grandes, que pasen de los 2 Mb. No digamos si tu WordPress es veterano y tienes un archivo exportado de decenas de megas.

A lo largo de varios artículos hemos ofrecido varias posibles soluciones a este problema, unas veces modificando el comportamiento del servidor, importando la base de datos, haciendo apaños e incluso cortando en trozos el fichero de exportación. Hasta hicimos la guía de backup de WordPress (ahora incompleta) .

Porque exportar tu WordPress es fácil, solo tienes que acceder a la sección de “Herramientas -> Exportar“, y generará un fichero con todos tus posts, comentarios, categorías, tags. Lo malo es importar, no digamos si trabajamos con un WordPress Mu, donde tanto tablas como ficheros de exportación pueden llegar a unos tamaños considerables.

Quizás la mejor solución sea olvidarse de este tipo de ficheros que genera WordPress y usar la exportación-importación de la base de datos, lo que pasa es que en ocasiones es mejor usar el fichero de WordPress, sobre todo cuando quieres realizar una migración limpia, solucionando errores en tablas de la base de datos. A fin de cuentas solo pierdes la información que guardan los plugins, y salvo que uses muchas encuestas o descargas mediante plugin no suele ser algo vital.

Pues si este es tu caso hay buenas noticias. Apunta este plugin: Advanced Export for WP & WPMu. Esta pequeña maravilla permite crear varios ficheros de exportación, divididos por secciones:

  • Rango de fechas (por inicio y fin de mes o año)
  • Autor – Igual que en la utilidad de exportación de WordPress
  • Categoría – Exportar una categoría específica
  • Tipo de contenido – Y puedes elegir entre posts o páginas
  • Estado del post – Pudiendo elegir entre Borrador, Publicado, Programado o Privado

advanced-export

¿A que la cosa cambia?. Y lo mejor de todo es que puedes combinar varias de las opciones, con lo que es aún más potente.

Eso si, mientras no configures nada el sistema de exportación funciona como el de WordPress. Para ponerlo a tu gusto, para exportar con criterio, tienes que ir entonces (una vez instalado y activado el plugin) a “Herramientas -> Advanced Export” y ahí definir como quieres exportar

Contenido exclusivo para suscriptores al Feed

¡Gracias por seguirnos a diario!. Premiamos tu fidelidad ofreciéndote habitualmente contenidos exclusivos. Hoy puedes descargar:

Clic aquí para iniciar la descarga Guía Windows Live Writer

¿Te gustó este post? ¡Compártelo!

Bitacoras.com
TwitThis
Facebook
Meneame
Google Bookmarks
del.icio.us
Live
Technorati
Ping.fm
Wikio
Turn this article into a PDF!
E-mail this story to a friend!
Print this article!

¿Sabes cuanto te costaría este anuncio que estás leyendo si anunciásemos tu propio sitio web? La disparatada cantidad de 0,001 €. No, no nos hemos equivocado con los ceros, prueba BetaBlocks.

Promociona tu web con BetaBlocks (www.betablocks.com).

Junio 29th, 2009

WordPress.com inaccesible desde algunos ISP en Guatemala

Al igual que pasó con el caso Jazztel-WordPress, parece ser que hay problemas en Guatemala para conectarse a los blogs gratuitos de WordPress.com. ¿Te está pasando?

¿Te gustó este post? ¡Compártelo!

Bitacoras.com
TwitThis
Facebook
Meneame
Google Bookmarks
del.icio.us
Live
Technorati
Ping.fm
Wikio
Turn this article into a PDF!
E-mail this story to a friend!
Print this article!

En BetaBlocks hemos reservado este espacio para mostrar tu web. En solo unos minutos crearás tu campaña y será mostrada en varios blogs que son referencia en su temática.

Promociona tu web con BetaBlocks (www.betablocks.com).

Junio 28th, 2009

Videotutorial: Encuestas con WP-Polls

Ya tenía yo ganas de encontrar tiempo para publicar un ScreenCast, y en esta ocasión nos metemos en las procelosas aguas de los plugins, en concreto de WP Polls, quizás el mejor plugin de encuestas que hay para WordPress.

Pon este video en tu web

Si te ha gustado este Screencast, y quieres recibir los nuevos antes que nadie, puedes apuntarte al feed RSS o suscribirte a través de iTunes haciendo clic en la siguiente imagen …

Y como la encuesta ya está hecha mientras grababa el vídeo aquí la tenéis …

Note: There is a poll embedded within this post, please visit the site to participate in this post’s poll.

¿Te gustó este post? ¡Compártelo!

Bitacoras.com
TwitThis
Facebook
Meneame
Google Bookmarks
del.icio.us
Live
Technorati
Ping.fm
Wikio
Turn this article into a PDF!
E-mail this story to a friend!
Print this article!

En BetaBlocks hemos reservado este espacio para mostrar tu web. En solo unos minutos crearás tu campaña y será mostrada en varios blogs que son referencia en su temática.

Promociona tu web con BetaBlocks (www.betablocks.com).

Junio 28th, 2009

Actualizar blog de WordPress y el problema con los caracteres especiales

Un artículo de Eduardo Larequi sobre el problema de los caracteres especiales después de actualizar un blog de WordPress me llevó a recordar la primera vez que confronté esa situación. Por suerte no fue en mi blog principal pero recuerdo que me llevó un tiempo considerable poder encontrar una alternativa. Primero use este plugin pero por alguna razón no resolvió el problema. Después revisé el archivo wp-config.php siguiendo este consejo pero tampoco tuve suerte. Finalmente, no se como se me ocurrió, substituí el nuevo archivo wp-config.php por el original.  Y fue entonces cuando se resolvió el problema.

Es probable que existan otras alternativas pero la que describo es la más sencilla que he encontrado.

Actualizado: Eduardo Larequi nos comparte que lo mejor es  comentar o  deshabilitar las variables DB_CHARSET y DB_COLLATE del  archivo wp-config.php. De esa manera no se pierden las mejoras que se han hecho en términos de seguridad del blog.

TwitThis


Etiquetas: ,

Entradas relacionadas

Junio 27th, 2009

10 shortcodes para hacerte la vida más fácil con Wordpress

Hemos visto varias veces lo que son los shortcodes y la capacidad que tienen de extender nuestros posts. Mediante una nomenclatura sencilla y cómoda de usar podemo hacer que el trabajo de publicar en nuestro blog sea más sencillo, con estos 10 shortcodes que he encontrado en CatsWhoCode algo más sencillo seguro que lo será:

1) Artículos relacionados

function related_posts_shortcode( $atts ) {
	extract(shortcode_atts(array(
	    'limit' => '5',
	), $atts));

	global $wpdb, $post, $table_prefix;

	if ($post->ID) {
		$retval = '
    '; // Get tags $tags = wp_get_post_tags($post->ID); $tagsarray = array(); foreach ($tags as $tag) { $tagsarray[] = $tag->term_id; } $tagslist = implode(',', $tagsarray); // Do the query $q = "SELECT p.*, count(tr.object_id) as count FROM $wpdb->term_taxonomy AS tt, $wpdb->term_relationships AS tr, $wpdb->posts AS p WHERE tt.taxonomy ='post_tag' AND tt.term_taxonomy_id = tr.term_taxonomy_id AND tr.object_id = p.ID AND tt.term_id IN ($tagslist) AND p.ID != $post->ID AND p.post_status = 'publish' AND p.post_date_gmt get_results($q); if ( $related ) { foreach($related as $r) { $retval .= '
  • post_title).'" href="'.get_permalink($r->ID).'">'.wptexturize($r->post_title).'
  • '; } } else { $retval .= '
  • No related posts found
  • '; } $retval .= '
'; return $retval; } return; } add_shortcode('related_posts', 'related_posts_shortcode');

Con este shortcode, podemos añadir en nuestro post, un listado de artículos relacionados usando los tags del mismo para buscarlo los similares.

Modo de uso

[related_posts]

2) Mostrar una gráfica de Google Chart

function chart_shortcode( $atts ) {
	extract(shortcode_atts(array(
	    'data' => '',
	    'colors' => '',
	    'size' => '400x200',
	    'bg' => 'ffffff',
	    'title' => '',
	    'labels' => '',
	    'advanced' => '',
	    'type' => 'pie'
	), $atts));

	switch ($type) {
		case 'line' :
			$charttype = 'lc'; break;
		case 'xyline' :
			$charttype = 'lxy'; break;
		case 'sparkline' :
			$charttype = 'ls'; break;
		case 'meter' :
			$charttype = 'gom'; break;
		case 'scatter' :
			$charttype = 's'; break;
		case 'venn' :
			$charttype = 'v'; break;
		case 'pie' :
			$charttype = 'p3'; break;
		case 'pie2d' :
			$charttype = 'p'; break;
		default :
			$charttype = $type;
		break;
	}

	if ($title) $string .= '&chtt='.$title.'';
	if ($labels) $string .= '&chl='.$labels.'';
	if ($colors) $string .= '&chco='.$colors.'';
	$string .= '&chs='.$size.'';
	$string .= '&chd=t:'.$data.'';
	$string .= '&chf='.$bg.'';

	return ''.$title.'';
}
add_shortcode('chart', 'chart_shortcode');

El shortcode ideal para incrustar gráficas en nuestros posts. Mediante una nomenclatura con una serie de parámetros la personalización de la gráfica será más sencilla y cómoda.

Modo de uso

[chart data="41.52,37.79,20.67,0.03" bg="F7F9FA" labels="Reffering+sites|Search+Engines|Direct+traffic|Other" colors="058DC7,50B432,ED561B,EDEF00" size="488x200" title="Traffic Sources" type="pie"]

3) Muestra tu publicidad Adsense

function showads() {
    return '

';
}

add_shortcode('adsense', 'showads');

Sencillo shortcode que nos permite insertar adsense allá donde queramos dentro e nuestro post.

Modo de uso

[adsense]

4) Mostrar contenido en relación a las capacidades del usuario

function access_check_shortcode( $attr, $content = null ) {
    extract( shortcode_atts( array( 'capability' => 'read' ), $attr ) );
    if ( current_user_can( $capability ) && !is_null( $content ) && !is_feed() )
        return $content;

    return 'Sorry, only registered members can see this text.';
}

add_shortcode( 'access', 'access_check_shortcode' );

Si quieres mostrar contenido de tu post, pero quieres que todos los usuarios lo puedan ver, este shortcode es el tuyo. Con el puedes ocultar el contenido según las capacidades del usuario que lo lee.

Modo de uso

[access capability="switch_themes"]

5) Incrusta un RSS en tu post

/This file is needed to be able to use the wp_rss() function.
include_once(ABSPATH.WPINC.'/rss.php');

function readRss($atts) {
    extract(shortcode_atts(array(
	"feed" => 'http://',
      "num" => '1',
    ), $atts));

    return wp_rss($feed, $num);
}

add_shortcode('rss', 'readRss');

Sencillo sistema para insertar un RSS en tu post.

Modo de uso

[rss feed="http://feeds2.feedburner.com/Catswhocode" num="5"]

6) Crea automáticamente una mini url para Twitter

function subzane_shorturl($atts) {
	extract(shortcode_atts(array(
		'url' => '',
		'name' => '',
), $atts));
$request = 'http://u.nu/unu-api-simple?url=' . urlencode($url);
$short_url = file_get_contents($request);
	if (substr($short_url, 0, 4) == 'http')    {
		$name = empty($name)?$short_url:$name;
		return ''.$name.'';
	} else {
		$name = empty($name)?$url:$name;
		return ''.$name.'';
	}
}
add_shortcode('shorturl', 'subzane_shorturl');

Shortcode al que le pasamos una url y nos devuelve la url minimzada.

Modo de uso

[shorturl name="shortcode" url="http://codex.wordpress.org/Shortcode_API"]

7)  Mostrar la última imagen asociada al post

function sc_postimage($atts, $content = null) {
	extract(shortcode_atts(array(
		"size" => 'thumbnail',
		"float" => 'none'
	), $atts));
	$images =& get_children( 'post_type=attachment&ost_mime_type=image&ost_parent=' . get_the_id() );
	foreach( $images as $imageID => $imagePost )
	$fullimage = wp_get_attachment_image($imageID, $size, false);
	$imagedata = wp_get_attachment_image_src($imageID, $size, false);
	$width = ($imagedata[1]+2);
	$height = ($imagedata[2]+2);
	return '
'.$fullimage.'
'; } add_shortcode("postimage", "sc_postimage");

Nos mostrará la última imagen asociada al artículo.

Modo de uso

[postimage]

8) Deja notas para administradores en los posts

add_shortcode( 'note', 'sc_note' );

function sc_note( $atts, $content = null ) {
	 if ( current_user_can( 'publish_posts' ) )
		return '
'.$content.'
'; return ''; }

Genial idea que nos permite dejar notas, únicamente visibles para los administradores, en nuestro posts.

Modo de uso

[note]This is a personal note that only admins can see![/note]

9) Quitando el autoformato de Wordpress

function my_formatter($content) {
	$new_content = '';
	$pattern_full = '{(\[raw\].*?\[/raw\])}is';
	$pattern_contents = '{\[raw\](.*?)\[/raw\]}is';
	$pieces = preg_split($pattern_full, $content, -1, PREG_SPLIT_DELIM_CAPTURE);

	foreach ($pieces as $piece) {
		if (preg_match($pattern_contents, $piece, $matches)) {
			$new_content .= $matches[1];
		} else {
			$new_content .= wptexturize(wpautop($piece));
		}
	}

	return $new_content;
}

remove_filter('the_content', 'wpautop');
remove_filter('the_content', 'wptexturize');

add_filter('the_content', 'my_formatter', 99);

Ideal para los que mostramos código en la página, ya que nos elimina las funciones encargadas de autoformatear el código. Aunque técnicamente no es un shortcode, se comporta como tal, y el texto que no esté dentro de los tags será autoformateado como por defecto.

Modo de uso

[raw]This portion of text will not be automatically formatted by WP.[/raw]

10) Muestra tus estadísticas con shortcodes

Se trata de un plugin que permite mostrar una serie de estadísticas mediante shortcodes.

Modo de uso

[pagerank]
[feedburner_subscribers]
[alexa_rank]
[technorati_authority]
[technorati_rank]
[user_count]
[post_count]
[page_count]
[comment_count]
[trackback_count]
[avg_comments_per_post]
[category_count]
[tag_count]
[link_count]
[google_backlinks]
[yahoo_backlinks]
[delicious_bookmarks]

Artículos relacionados

aNieto2k

Junio 27th, 2009

Notas privadas en los posts

postit

Si tienes un sitio WordPress con varios autores puedes incluir un código que te permita insertar pequeñas notas en los posts de modo que, por ejemplo, el autor del mismo sepa que tiene que hacer alguna corrección. Es un modo estupendo de gestionar profesionalmente un sitio comercial con WordPress sin tener que usar otros modos de comunicación con los redactores, por ejemplo.

Para conseguirlo solo tienes que seguir dos pasos:

  1. Añade este código al fichero functions.php del theme activo:
    add_shortcode( 'note', 'sc_note' );
    
    function sc_note( $atts, $content = null ) {
    	 if ( current_user_can( 'publish_posts' ) )
    		return '<div class="note">'.$content.'</div>';
    	return '';
    }
  2. Luego, para añadir una nota en un post, que solo verán los usuarios con capacidad de publicación (publish_posts) solo tienes que añadir un mensaje como este en cualquier parte del post en el que quieres dejar el aviso:
    [note]
    ¡Por favor, revisa la ortografía, se te han pasado varios acentos!
    [/note]

Se me ocurren muchos usos posibles, y de hecho puedes incluir dentro de ese shortcode lo que quieras, imágenes, enlaces, lo que sea. Es más, fíjate en el código pues se añade una clase CSS que puedes personalizar a tu gusto para darles mayor presencia (div class="note").

¿Se te ocurre algún uso imaginativo para este código?

¿Te gustó este post? ¡Compártelo!

Bitacoras.com
TwitThis
Facebook
Meneame
Google Bookmarks
del.icio.us
Live
Technorati
Ping.fm
Wikio
Turn this article into a PDF!
E-mail this story to a friend!
Print this article!

¿Necesitas hosting? en Hostarting podrás comparar los planes de hosting de las principales empresas del país, podrás conocer la opinión y valoraciones de otros usuarios sobre los servicios de hosting que utilizan.

Promociona tu web con BetaBlocks (www.betablocks.com).