Usando shortcodes en todas partes

Posted on 12 marzo 2010 by Amuzigi

hack wordpress

Ya hemos visto muchas maneras de personalizar WordPress con shortcodes pero estas pequeñas maravillas pueden usarse en muchos más sitios que en el editor de entradas, aquí tienes unos cuantos buenos ejemplos … 

Shorcodes en widgets de texto

Lo primero es añadir este código al fichero functions.php de tu tema activo:

PHP:

  1. add_filter( ‘widget_text’, ‘shortcode_unautop’);
  2. add_filter( ‘widget_text’, ‘do_shortcode’);

La segunda línea es la que hace que funcionen los shortcodes en el widget de texto. Además, hay que tener en cuenta que los widgets de texto tienen una casilla para “añadir saltos de párrafo automáticamente”, pues bien, la segunda linea inhabilita el código autop que podría, en caso de estar marcada la casilla, meter el shortcode introducido en un párrafo o incluso romper las tags.

Shortcodes en el tema

También se pueden usar shortcodes en el tema que uses. Para ello utilizamos la función do_shortcode() en la que el argumento será una cadena que contendrá el shortcode.

Por ejemplo, para mostrar el shortcode [publicidad] en tu tema pondrías algo así donde quieras que aparezca el resultado esperado:

PHP:

  1. <?php do_shortcode(‘[publicidad]‘); ?>

La función do_shortcode() acepta cualquier tipo de texto. Si la cadena contiene un shortcode procesará ese código. De este modo, por ejemplo, podrías mostrar manualmente contenido de tus entradas de este modo:

PHP:

  1. <?php
  2. $content = get_the_content();
  3. echo do_shortcode($content);
  4. ?>

Shortcodes en comentarios

De nuevo recurrimos al fichero functions.php para añadirle este código que permite shortcodes en los campos de comentarios:

PHP:

  1. add_filter( ‘comment_text’, ‘shortcode_unautop’);
  2. add_filter( ‘comment_text’, ‘do_shortcode’ );

Shortcodes en extractos

Ahora, en functions.php añadiremos esto para poder insertar shortcodes en los extractos de entrada:

PHP:

  1. add_filter( ‘the_excerpt’, ‘shortcode_unautop’);
  2. add_filter( ‘the_excerpt’, ‘do_shortcode’);

Shortcodes en la descripción de usuario

Para poder meter shortcodes en la descripción del usuario hay que pasar la cadena de descripción por la función do_shortcode(). Para ello tendrás que añadir esto a tu tema activo:

PHP:

  1. <?php
  2. // $user_id = 3;
  3. $userdata = get_userdata($user_id);
  4. echo do_shortcode($userdata->description);
  5. ?>

Solo tendrás que cambiar el ID de usuario, en este caso el 3.

Shortcodes en descripciones de etiquetas, categorías y taxonomías

También puedes filtrar estas descripciones. Para ello recurrimos de nuevo al fichero functions.php:

PHP:

  1. add_filter( ‘term_description’, ‘shortcode_unautop’);
  2. add_filter( ‘term_description’, ‘do_shortcode’ );

Un mundo de posibilidades más ¿no?

¿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!

Fuente: Ayuda WordPress

Related posts:

  1. Insertar Google Maps con shortcode
  2. Títulos SEO en todas las páginas
  3. Visualizador de PDFs mediante shortcode
  4. Exportar por partes
  5. Agregar el titulo del post al “more”

Leave a Reply

You must be logged in to post a comment.

Advertise Here
Advertise Here

RELATED SITES