Entre Blogs Portal

Publicado por Fernando Tellado | 3 Enero 2008

Añadir soporte de Widgets a una Plantilla

Clic para ampliar

Hay ocasiones en que los themes de Wordpress, bien porque son antiguos, bien porque el diseñador no consideró pertinente incluir esta funcionalidad, no soportan widgets, ese modo sencillo de colocar servicios añadidos en la barra lateral (sidebar).

Pues bien, todo tiene solución, y aquí tienes el proceso …

1. Incluir soporte de código en el sidebar

Abrimos el archivo sidebar.php y donde veamos este código …

<div id=”sidebar”>
<ul>
<li>
<?php include (TEMPLATEPATH . ‘/searchform.php’); ?>
</li>

Justo después del primer (<ul>) añadimos el siguiente código …

<?php if ( !function_exists(’dynamic_sidebar’) || !dynamic_sidebar() ) : ?>

con lo que nos queda de este modo …

<div id=”sidebar”>
<ul>
<?php if ( !function_exists(’dynamic_sidebar’) || !dynamic_sidebar() ) : ?>
<li>
<?php include (TEMPLATEPATH . ‘/searchform.php’); ?>
</li>

Guardas el fichero sidebar.php

2. Añadir código a las funciones

En el fichero functions.php, y si no existe lo creas, añades este código:

<?php
if ( function_exists(’register_sidebars’) )
register_sidebars();
?>

Lo guardas y ya tienes soporte completo de widgets en tu theme.

Ahora bien, si tu theme tiene mas de un sidebar, y quieres que ambos tengan soporte de widgets, tendrás que modificar algo mas de código en functions.php. Para ello debes incluir este código o modificarlo para que tenga widgets en las dos columnas:

<?php
if ( function_exists(’register_sidebars’) )
register_sidebars(2);
?>

Y luego tienes que definir el orden de los sidebars para especificar si quieres que estén a la izquierda o a la derecha. Esto también lo haces en functions.php.

Para que estén a la izquierda …

<div id=”leftsidebar”>
<ul>
<?php if ( !function_exists(’dynamic_sidebar’) || !dynamic_sidebar(1) ) : ?>
<li>
<?php include (TEMPLATEPATH . ‘/searchform.php’); ?>
</li>

y a la derecha …

<div id=”rightsidebar”>
<ul>
<?php if ( !function_exists(’dynamic_sidebar’) || !dynamic_sidebar(2) ) : ?>
<li>
<?php include (TEMPLATEPATH . ‘/searchform.php’); ?>
</li>

Guardas y ya lo tienes.

Como siempre, te recomiendo que estas modificaciones no las hagas en “real” sino que hagas tus pruebas en una instalación local, y cuando veas que todo funciona como quieres ya lo subas a tu servidor.

Vía | UBH

Comparte este post:
  • TwitThis
  • Facebook
  • Digg
  • del.icio.us
  • Google
  • Live
  • Meneame
  • StumbleUpon
  • Technorati
  • Tumblr
  • Wikio
  • Envía este post por E-mail a un amigo
  • Imprime este artículo

También te puede interesar:

4 comentarios | Escribe un comentario

  1. Mauro (10 comentarios) - 27/03/2008 a las 2:19

    Hola un gran saludo, los felicito por su excelente blog.

    Una consulta, cada vez que uso un widget y lo coloco en el sidebar desde el panel de administración lo que esta arriba o abajo en el sidebar se me borra y solo queda el contenido del widget.

    Como lo puedo arreglar, osea que al usar un widget no elimine contenido del sidebar, y solo quede el widget usado.

    Saludos

    Mauro

  2. Fernando Tellado (1415 comentarios) - 27/03/2008 a las 8:45

    Hay que retocar la plantilla para que admita ambas opciones. Tenemos preparado un post al efecto que sale en unos días ;)

  3. Dianasolapas (6 comentarios) - 25/07/2008 a las 21:17

    Una pregunta:
    Modifiqué mi tema para tener 3 diferentes barras laterales, pero cuando uso un widget en una de las barras, no lo puedo utilizar en ninguna otra.
    ejem. statpress, translate.
    ¿me podrian ayudar?
    Gracias
    Diana

  4. Dianasolapas (6 comentarios) - 25/07/2008 a las 21:23

    Upps, perdon perdon, me paso al foro

    diana

Escribe un comentario




XHTML: Puedes usar estas etiquetas: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

Anúnciese aquí
Un blog de ayuda a bloggers y webmasters

Estamos alojados en CDmon, alojamiento premium a precio mínimo




IN YOUR LANGUAGE

Spanish flagItalian flagChinese (Simplified) flagPortuguese flagEnglish flagGerman flagFrench flagJapanese flagRussian flagSwedish flagCatalan flagHebrew flag
By N2H

¡Wordpress ha sido descargado 913,400 veces!