Manual de usuario de Movable Type: BUSQUEDA PÚBLICA - (Public Search)

« Tabla de Contenidos


BÚSQUEDA PÚBLICA

La interfaz de búsqueda pública de Movable Type es una integración del add-on mt-search de Jay Allen para Movable Type. El motor búsqueda soporta dos tipos diferentes de búsqueda: búsqueda directa por palabras y búsqueda de nuevo comentario. La búsqueda directa soporta peticiones boleanas, búsqueda de frases, y coincidencia de expresión regular (si se desee). La búsqueda de nuevo comentario (actualmente más un "listado" que una búsqueda) lista todos los nuevos comentarios postedos en su sitio en un intervalo de tiempo especificado.

Las peticiones de búsqueda son registradas en log de actividades de su sitio.

PLANTILLAS DE BUSQUEDA

Las plantillas de búsqueda nos manejadas como otras plantillas del sistema, porque no son manejadas en base a una bitácora, por lo que no tienen sentido en la sección de "Plantillas" del menú de edición. las plantillas de búsqueda son archivos en su directorio search_templates/ ; este directorio debe estar localizado el mismo directorio que mt.cgi.

En sus plantillas de búsqueda, usted puede usar un grupo especial de etiquetas para plantilla para mostrar los resultados de la búsqueda. También pulsar la mayoría de otros tags Movable Type, pero por supuesto, usted debe respetar el contexto en el cual usted usa los tags. Además, como la página de resultados de búsqueda es dinámica y puede ser reconstruida cada vez que alguien realiza una búsqueda en su sitio, detener mucho cuidado usando tags que puedan requerir muchos recursos del servidor y tiempo para construir (por ejemplo, <MTArchiveList> o <MTCalendar>).

También puede usar el tag  <MTInclude> en sus plantillas de búsqueda para incluir módulos plantillas o archivos externos. Puede incluso usar tags como éste, que requiere la bitácora para estar dentro de  contexto (porque módulos plantilla son almacenados en base a una bitácora), fuera del contenedor <MTSearchResults>. Sin embargo ahí agujeros en este método, y debe ser cuidadoso cuando puse esto sí tiene múltiples bitácoras. Por ejemplo, si es usted usa

<$MTInclude module="Header"$>

en una plantilla, el sistema necesita saber en qué bitácora de buscar el módulo llamado  Header. Si se encuentran resultados para búsqueda, el sistema búsqueda en la bitácora que estaá más próxima alfabéticamente; si no hay resultados para la búsqueda, Movable Type simplemente intentara cargar una bitácora de su base de datos (la determinación de la bitácora elegida no está definida).

Este comportamiento será pulido en el futuro.

FORMULARIOS DE BÚSQUEDA

Las plantillas por defecto deMovable Type incluyen un formulario de búsqueda simple para buscar las bitácoras de su sitio. Este formulario se vee como esto:

<form method="get" action="<$MTCGIPath$><$MTSearchScript$>">
<label for="search" accesskey="4">Search this site:</label><br />
<input id="search" name="search" size="20" /><br />
<input type="submit" value="Search" />
</form>

Un formulario de búsqueda completo, sería cómodo parecido a esto:

<form method="post" action="<$MTCGIPath$><$MTSearchScript$>">
<input size="30" name="search" value="<$MTSearchString$>" />
<input type="submit" value="Search" /><br />
<input type="checkbox" name="CaseSearch" /> Match case 
<input type="checkbox" name="RegexSearch" /> Regex search<br />
<b>Search:</b>
<input type="radio" name="SearchElement" value="entries" /> Entries 
<input type="radio" name="SearchElement" value="comments" /> Comments 
<input type="radio" name="SearchElement" value="both" /> Both <br />
<b>Sort By:</b>
<select name="SearchSortBy">
<option value="created_on">Authored On Date</option>
<option value="title">Title</option>
</select><br />
<b>Sort Order:</b>
<select name="ResultDisplay">
<option value="ascend">Ascending</option>
<option value="descend">Descending</option>
</select><br />
<b>Exclude Weblogs:</b>
<MTBlogs>
<input type="checkbox" name="ExcludeBlogs" value="<$MTBlogID$>" /> <$MTBlogName$>
</MTBlogs><br />
<b>Search entries from:</b>
<select name="SearchCutoff">
<option value="9999999">the beginning</option>
<option value="7">one week back</option>
<option value="14">two weeks back</option>
<option value="30">one month back</option>
<option value="60">two months back</option>
<option value="90">three months back</option>
<option value="365">one year back</option>
</select><br />
<b>Results per weblog:</b>
<select name="MaxResults">
<option value="5">5</option>
<option value="10">10</option>
<option value="25">25</option>
<option value="50">50</option>
<option value="100">100</option>
<option value="9999999">All</option>
</select>
</form>

Este formulario de búsqueda del usuario más control sobre los parámetros de la búsqueda, permitiendo de especificar restricciones como coincidencia de mayúsculas, o uso de coincidencia de expresión regular en lugar de una petición boleana. La búsqueda puede ser limitada tanto a entradas como a comentarios (o ambos).  Note que la búsqueda en comentarios lleva más tiempo y recursos que buscar en una entrada.

El sumario de arriba también incluye labilidad descubrir ciertas bitácoras de la búsqueda. Esto es útil su visitante desea buscar sólo en una de sus bitácoras. Como una alternativa al uso de Exclude Weblogs, podría su lugar usar los siguiente:

<b>Include Weblogs:</b>
<MTBlogs>
<input type="checkbox" name="IncludeBlogs" value="<$MTBlogID$>" /> <$MTBlogName$>
</MTBlogs><br />

Esto, esencialmente es lo inverso de la configuración Exclude Weblogs, pero usted podría preferirlo poco qué razón. Por ejemplo, hace más fácil crear páginas de resultado búsqueda específico para la bitácora. En lugar de mantener una lista de bitácoras a excluir, sólo una citada añadir esto al formulario:

<input type="hidden" name="IncludeBlogs" value="<$MTBlogID$>" />

<$MTBlogID$> siempre hace referencia a la bitácora actual, por lo que esta búsqueda siempre se restringirá tan sólo a la bitácora está siendo visita.

El formulario de búsqueda de arriba desusado  búsqueda directa. Un nuevo y completo formulario para búsqueda de nuevo comentario debería verse como esto:

<form method="post" action="<$MTCGIPath$><$MTSearchScript$>">
<input type="hidden" name="Type" value="newcomments" />
<b>Exclude Weblogs:</b>
<MTBlogs>
<input type="checkbox" name="ExcludeBlogs" value="<$MTBlogID$>" /> <$MTBlogName$>
</MTBlogs><br />
<b>Search entries from:</b>
<select name="CommentSearchCutoff">
<option value="9999999">the beginning</option>
<option value="7">one week back</option>
<option value="14">two weeks back</option>
<option value="30">one month back</option>
<option value="60">two months back</option>
<option value="90">three months back</option>
<option value="365">one year back</option>
</select><br />
<b>Number of entries to return:</b>
<select name="MaxResults">
<option value="5">5</option>
<option value="10">10</option>
<option value="25">25</option>
<option value="50">50</option>
<option value="100">100</option>
<option value="9999999">All</option>
</select><br />
<input type="submit" value="Find new comments" />
</form>

Plantillas Alternativas

Típicamente, cuando se lleva acabo una búsqueda, las plantilla de búsqueda por defecto (default.tmpl) es renderizada para mostrar el resultado (o, en caso de búsqueda de comentario, la plantilla comments.tmpl es usada). Si usted tiene múltiples bitácoras y además está usando la herramienta de búsqueda para cada una de ésas bitácoras, podría querer que los resultados de búsqueda de una bitácora serían diferentes que resultados de otra bitácora. O, podría tener diferentes versiones de su sitio público: una versión gráfica para visitantes normales, y una versión de texto sin gráficos que consuma pocos recursos. Usted desearía que los asuntos de la búsqueda sería igual el resto de su sitio, cualquiera que sea la versión de su sitio el visitante esté usando.

Para hacer esto, usted puede usar plantillas alternativas. Por ejemplo, cada bitácora puede tener su propia plantilla de resultado de búsqueda que coincida con su propio diseño; o cada versión de su sitio puede tener su propia plantilla de resultado de búsqueda.

  1. Creandote las plantillas.
    Para cada diferente vista/aspecto usted quiera, cree una plantilla de resultado de búsqueda, ponga las de su directorio search_templates/.

  2. Añadir las plantillas a su configuración.
    Abra su archivo mt.cfg en un editor de texto, y use la directiva AltTemplate para configurar las plantillas alternativas. Por ejemplo, chiste tiene dos bitácorasdirective to configure the alternate templates. For example, if you have two weblogs (Work y Play), quiste quiere que cada bitácora tenga su propia plantilla, debería añadir algo como esto:
    AltTemplate work work.tmpl
    AltTemplate play play.tmpl
    

  3. Configurar el formulario de búsqueda.
    Para decir a Movable Type que plantilla usas cuando seconstruyan las páginas del resultado de la búsqueda, usted usa un formulario de entrada oculto. Añada esto al formulario de búsqueda de su bitácora Work, por ejemplo:
    <input type="hidden" name="Template" value="work" />
    

    (Nota: si usted quiere restringir la búsqueda a sólo una bitácora debería incluir también

    <input type="hidden" name="IncludeBlogs" value="<$MTBlogID$>" />
    

    al formulario.)

Convirtiendo versiones previas de mt-search

Si estaba usando el motor de búsqueda de  Jay, necesitara convertirlo usando la versión íntegra. Siga estos pasos:search engine, you'll need to convert to using the integrated version. Follow these steps:

  1. Actualice su copia de Movable Type.
    Usted puede haber hecho esto ya, pero necesitara actualizar a la versión 2.5 de de Movable Type, la cual contiene el motor de búsqueda integrado.

  2. Copie los parámentros de  configuración.
    Ahora el motor de búsqueda así enterado dentro de Movable Type, ya no necesitará más usar dos archivos de configuración separados (mt-search.cfg y mt.cfg). La nueva versión del motor de búsqueda espera que su configuración de búsqueda este en su archivo estándar mt.cfg.

    Por esto, necesita abrir ambos archivos, mt.cfg y mt-search.cfgen editor de texto, y copiar todo contenido de mt-search.cfg dentro de mt.cfg.

  3. Actualice su configuración de  AltTemplate.
    La nueva versión de búsqueda usa un formato simplificado de AltTemplate y le permite especificar un número infinito de plantillas alternativas. Si usted está usando actualmente plantillas alternativas con mt-search, necesitara cambiar sus directivas de AltTemplateN directives a AltTemplate. En otras palabras, cambiar el número al final de la directiva. Por ejemplo, si usted tenía esto:
    AltTemplate1 work work.tmpl
    

    debería cambiarlo por

    AltTemplate work work.tmpl
    

  4. Renombre su configuración de TemplateDir.
    Para eliminar la confusión con la configuración de TemplatePath, la nueva versión de búsqueda renombrado la configuraciónt TemplateDir setting a SearchTemplatePath. Por lo que, si usted tenía esto:
    TemplateDir /path/to/search_templates
    

    debería cambiarlo por

    SearchTemplatePath /path/to/search_templates
    


Copyright © 2001-2003 Six Apart. All Rights Reserved. (Traducido por Daexma www.nautopia.net)>