Personalizar el formulario de búsqueda en un tema de Drupal 6

Introducción.

En algunas ocasiones no es suficiente con el bloque de búsquedas de Drupal y es necesario incluír un formulario de búsquedas en la plantilla del tema con un estilo muy específico.

Las búsquedas en Drupal utilizan un sistema de llaves o claves para impedir que sean consumidas desde fuera del sitio, así que escribir un formulario propio con el action direccionado no es una buena alternativa.

Implementación.

  1. Activar el formulario de búsquedas en el tema.
    1. Acceda el menú de administración de temas (?q=admin/build/themes).
    2. Haga clic sobre el enlace Configurar frente al tema elegido.
    3. Seleccione la casilla Bloque de búsqueda.
    4. Presione el botón Guardar configuración.
  2. Copie el archivo modules/search/search-block-form.tpl.php a la carpeta del tema con el nombre search-theme-form.tpl.php.
  3. Edite page.tpl.php del tema e incluya la etiqueta <?php print $search_box; ?> donde desee que aparezca el campo de búsqueda en el tema.
  4. Edite el archivo search-theme-form.tpl.php con el formulario de búsqueda personalizado.
    1. No es necesario incluír las etiquetas <form> ya que estas se incluyen automáticamente.
    2. El ID del formulario generado es search-theme-form.
    3. El ID del campo de las palabras clave deberá ser edit-search-theme-form-1.
    4. El nombre del campo de las palabras clave deberá ser search_theme_form.
    5. Incluya esta etiqueta en cualquier lugar del archivo <?= $search[‘hidden’]; ?>.

Enlaces.

4 thoughts on “Personalizar el formulario de búsqueda en un tema de Drupal 6”

  1. Hola Jorge Ivan

    tengo un sitio drupal y quiero incluir la herramienta google custom search, pero sin usar el plugin porque el proceso de cambios directos en el servidor es muy lento ya que tenemos un servicio de hosting como regular, tienes algunas ideas ?, yo se que tengo que modificar posiblemente el template y poner el codigo de mi herramienta en lugar del de drupal.
    Gracias por los comentarios que puedas hacerme

    1. Saludos @Lina. Es muy fácil lo que sugieres, sólo debes ir a la siguiente dirección de Google, llenar un formulario e incluír en tu página el código que te indiquen. Funciona para cualquier sitio web independientemente de en que esté hecho.

      http://www.google.es/cse/

      Saludos.

  2. Hola, se que lo que voy a preguntarle no tiene mucho que ver con este post en especifico, pero ya he hayado en su blog varios posts que me han sido de gran utilidad.
    Como veo que posee ud gran conocimiento acerca de drupal, quisiera plantearle una duda que tengo a ver si seria tan amable de ayudarme. Lo que ocurre es que estoy tratando de hacer mi sitio en drupal con una altura fija, es decir que el contenido no se extienda infinitamente hacia abajo, sino poner un footer que se vea siempre y delimite hasta donde puede llegar el contenido como tal, y que dentro del content area solamante se muestre el scroll.
    He intentado simular esto con frames, pero no me funciona.
    Tiene algun conocimiento al respecto, es posible hacer esto que planteo con drupal???
    Gracias por adelantado, pues su blog me ha sido muy util.

    1. Saludos @Yuleidy. Muchas gracias por tu comentario.

      No soy nada experto en CSS pero todos los días hago lo que puedo para entenderlo. Según lo que mencionas yo intentaría lo siguiente: organizar el diseño que mencionas de forma que el área de contenido quede recubierta por un (por ejemplo). Y desde CSS le indicas como debe responder cuando el texto sobrepasa sus dimensiones. Algo como lo siguiente.

      #contenido
      {
      overflow: scroll;
      }

      Me cuentas si te funciona.

Leave a Reply

Your email address will not be published. Required fields are marked *