Foros del Web » Creando para Internet » Sistemas de gestión de contenidos » WordPress »

[SOLUCIONADO] Problemas con el buscador

Estas en el tema de Problemas con el buscador en el foro de WordPress en Foros del Web. Buenas noches. Tengo una página hecha en Wordpress que, hasta hoy, tenía un buscador que funcionaba. Hoy ha dejado de funcionar. He instalado 3 plugins ...
  #1 (permalink)  
Antiguo 06/05/2013, 13:31
 
Fecha de Ingreso: diciembre-2004
Ubicación: Madrid
Mensajes: 550
Antigüedad: 19 años, 11 meses
Puntos: 28
Problemas con el buscador

Buenas noches.

Tengo una página hecha en Wordpress que, hasta hoy, tenía un buscador que funcionaba. Hoy ha dejado de funcionar. He instalado 3 plugins (para poder poner texto y html en las categorías) que ya he desactivado y borrado pero sigue sin funcionar. No tenía hecha una copia de seguridad así que por ahí no puedo tirar... en teoría es lo único que ha dejado de funcionar pero no sé qué hacer.

¿Alguna idea/sugerencia?

Muchas gracias.
  #2 (permalink)  
Antiguo 06/05/2013, 15:33
Avatar de antigoo  
Fecha de Ingreso: octubre-2012
Ubicación: mx
Mensajes: 1.024
Antigüedad: 12 años, 1 mes
Puntos: 83
Respuesta: Problemas con el buscador

Pues tendrias que revisar el codigo del buscador, yo sugiero busques un plugin para un nuevo buscador.
__________________
Circulo webweb || uniendo webmasters, seos, comunidad para comercio

  #3 (permalink)  
Antiguo 06/05/2013, 15:43
 
Fecha de Ingreso: diciembre-2004
Ubicación: Madrid
Mensajes: 550
Antigüedad: 19 años, 11 meses
Puntos: 28
Respuesta: Problemas con el buscador

Vale, casi 3 horas probando y ya sé qué pasa... a ver, el otro día planteé un problema con las categorías y subcategorías en este hilo http://www.forosdelweb.com/f118/prob...orias-1049862/

La solución aplicada es muy sencilla, simplemente cambiar unas pocas líneas y al mostrar las entradas de una categoría no se mostraban las entradas de la subcategoría. El problema es el que me ha hecho abrir este hilo, y es que al realizar una búsqueda no salen resultados. Devuelvo el loop.php a su estado original y los resultados vuelven a aparecer, pero entonces se me pintan las entradas de las categorías y subcategorías en una misma página, cosa que no quiero.

Bien, entonces la pregunta es cómo puedo solucionar ambos problemas, conseguir que funcionen ambas cosas a la vez.

Voy a pegar todo el código del loop.php

Código PHP:
<?php /* Display navigation to next/previous pages when applicable */ ?>
<?php 
if ( $wp_query->max_num_pages ) : ?>
    <div id="nav-above" class="navigation">
        <div class="nav-previous"><?php next_posts_link__'<span class="meta-nav">&larr;</span> Older posts''twentyten' ) ); ?></div>
        <div class="nav-next"><?php previous_posts_link__'Newer posts <span class="meta-nav">&rarr;</span>''twentyten' ) ); ?></div>
    </div><!-- #nav-above -->
<?php endif; ?>

<?php /* If there are no posts to display, such as an empty archive page */ ?>
<?php 
if ( ! have_posts() ) : ?>
    <div id="post-0" class="post error404 not-found">
        <h1 class="entry-title"><?php _e'Not Found''twentyten' ); ?></h1>
        <div class="entry-content">
            <p><?php _e'Apologies, but no results were found for the requested archive. Perhaps searching will help find a related post.''twentyten' ); ?></p>
            <?php get_search_form(); ?>
        </div><!-- .entry-content -->
    </div><!-- #post-0 -->
<?php endif; ?>

<?php 
global $query_string;
query_posts$query_string '&order=ASC&orderby=title' );

if(
is_category()){
    foreach((
get_the_category()) as $category) { 
        echo 
'<p><h2>';
        echo 
wp_title('') . ' '
        echo 
'</h2></p>';
    }
}

while (
have_posts()) : the_post(); ?>

<?php /* How to display posts of the Gallery format. The gallery category is the old way. */ ?>

    <?php if ( ( function_exists'get_post_format' ) && 'gallery' == get_post_format$post->ID ) ) || in_category_x'gallery''gallery category slug''twentyten' ) ) ) : ?>
        <div id="post-<?php the_ID(); ?><?php post_class(); ?>>
            <h2 class="entry-title"><a href="<?php the_permalink(); ?>" title="<?php printfesc_attr__'Permalink to %s''twentyten' ), the_title_attribute'echo=0' ) ); ?>" rel="bookmark"><?php the_title(); ?></a></h2>

            <div class="entry-meta">
                <?php twentyten_posted_on(); ?>
            </div><!-- .entry-meta -->

            <div class="entry-content">
<?php if ( post_password_required() ) : ?>
                <?php the_content(); ?>
<?php 
else : ?>
                <?php
                    $images 
get_children( array( 'post_parent' => $post->ID'post_type' => 'attachment''post_mime_type' => 'image''orderby' => 'menu_order''order' => 'ASC''numberposts' => 999 ) );
                    if ( 
$images ) :
                        
$total_images count$images );
                        
$image array_shift$images );
                        
$image_img_tag wp_get_attachment_image$image->ID'thumbnail' );
                
?>
                        <div class="gallery-thumb">
                            <a class="size-thumbnail" href="<?php the_permalink(); ?>"><?php echo $image_img_tag?></a>
                        </div><!-- .gallery-thumb -->
                        <p><em><?php printf_n'This gallery contains <a %1$s>%2$s photo</a>.''This gallery contains <a %1$s>%2$s photos</a>.'$total_images'twentyten' ),
                                
'href="' get_permalink() . '" title="' sprintfesc_attr__'Permalink to %s''twentyten' ), the_title_attribute'echo=0' ) ) . '" rel="bookmark"',
                                
number_format_i18n$total_images )
                            ); 
?></em></p>
                <?php endif; ?>
                        <?php the_excerpt(); ?>
<?php 
endif; ?>
            </div><!-- .entry-content -->

            <div class="entry-utility">
            <?php if ( function_exists'get_post_format' ) && 'gallery' == get_post_format$post->ID ) ) : ?>
                <a href="<?php echo get_post_format_link'gallery' ); ?>" title="<?php esc_attr_e'View Galleries''twentyten' ); ?>"><?php _e'More Galleries''twentyten' ); ?></a>
                <span class="meta-sep">|</span>
            <?php elseif ( in_category_x'gallery''gallery category slug''twentyten' ) ) ) : ?>
                <a href="<?php echo get_term_link_x'gallery''gallery category slug''twentyten' ), 'category' ); ?>" title="<?php esc_attr_e'View posts in the Gallery category''twentyten' ); ?>"><?php _e'More Galleries''twentyten' ); ?></a>
                <span class="meta-sep">|</span>
            <?php endif; ?>
                <span class="comments-link"><?php comments_popup_link__'Leave a comment''twentyten' ), __'1 Comment''twentyten' ), __'% Comments''twentyten' ) ); ?></span>
                <?php edit_post_link__'Edit''twentyten' ), '<span class="meta-sep">|</span> <span class="edit-link">''</span>' ); ?>
            </div><!-- .entry-utility -->
        </div><!-- #post-## -->

<?php /* How to display posts of the Aside format. The asides category is the old way. */ ?>

    <?php elseif ( ( function_exists'get_post_format' ) && 'aside' == get_post_format$post->ID ) ) || in_category_x'asides''asides category slug''twentyten' ) )  ) : ?>
        <div id="post-<?php the_ID(); ?><?php post_class(); ?>>

        <?php if ( is_archive() || is_search() ) : // Display excerpts for archives and search. ?>
            <div class="entry-summary">
                <?php the_excerpt(); ?>
            </div><!-- .entry-summary -->
        <?php else : ?>
            <div class="entry-content">
                <?php the_content__'Continue reading <span class="meta-nav">&rarr;</span>''twentyten' ) ); ?>
            </div><!-- .entry-content -->
        <?php endif; ?>

            <div class="entry-utility">
                <?php twentyten_posted_on(); ?>
                <span class="meta-sep">|</span>
                <span class="comments-link"><?php comments_popup_link__'Leave a comment''twentyten' ), __'1 Comment''twentyten' ), __'% Comments''twentyten' ) ); ?></span>
                <?php edit_post_link__'Edit''twentyten' ), '<span class="meta-sep">|</span> <span class="edit-link">''</span>' ); ?>
            </div><!-- .entry-utility -->
        </div><!-- #post-## -->

<?php /* How to display all other posts. */ ?>

    <?php else : ?>
        <div id="post-<?php the_ID(); ?><?php post_class(); ?>>
            <!--h2 class="entry-title"><a target="_blank" href="<?php the_permalink(); ?>" title="<?php printfesc_attr__'Permalink to %s''twentyten' ), the_title_attribute'echo=0' ) ); ?>" rel="bookmark"><?php the_title(); ?></a></h2-->
            
            <div onclick="desplegarContraer('ocultar-<?php the_ID(); ?>',this);" class="linkContraido"><h2 class="entry-title"><?php the_title(); ?></h2></div>
            <div id="ocultar-<?php the_ID(); ?>" class='elementoOculto'>
                <?php the_content__'Continue reading <span class="meta-nav">&rarr;</span>''twentyten' ) ); ?>
            </div>
            
            <?php
            
if(is_search())
            {
                foreach((
get_the_category()) as $childcat) {
                  
$parentcat $childcat->category_parent;
                  
$cadena get_cat_name($parentcat);
                  if(
strpos($cadena"Cat") === 0)
                  {
                   
_e('<p style="font-weight: bold; font-style:italic; color: blue; font-size: 12px;">[:en]This book belongs to 
                    [:es]Este libro pertenece al '
);
                  echo 
strtolower($cadena).'</p>';
                  }
                }
            }
            else
            {
                global 
$wp_the_query;
                if ( !
$id $wp_the_query->get_queried_object_id() )
                    return;
                
//obtengo el link en el que estoy
                
$link get_permalink$id );
                
//cuento el número de /
                
$n_barras substr_count($link'/');
                
//recupero las categorias
                
$categorias get_category_parents($catFALSE'/');
                
$datos explode('/',$categorias);
                
$pintar $datos[0];
                
_e('<p style="font-weight: bold; font-style:italic; color: blue; font-size: 12px;">[:en]This book belongs to 
                    [:es]Este libro pertenece al '
);
                  echo 
strtolower($pintar).'</p>';
            }
                 
?>
                
            <div class="entry-meta">
                <?php twentyten_posted_on(); ?>
            </div><!-- .entry-meta -->

    <?php if ( is_archive() || is_search() ) : // Only display excerpts for archives and search. ?>
            <div class="entry-summary">
                <?php //the_excerpt(); ?>
            </div><!-- .entry-summary -->
    <?php else : ?>
            <div class="entry-content">
                <?php the_content__'Continue reading <span class="meta-nav">&rarr;</span>''twentyten' ) ); ?>
                <?php wp_link_pages( array( 'before' => '<div class="page-link">' __'Pages:''twentyten' ), 'after' => '</div>' ) ); ?>
            </div><!-- .entry-content -->
    <?php endif; ?>

            
        </div><!-- #post-## -->

        <?php comments_template''true ); ?>

    <?php endif; // This was the if statement that broke the loop into three parts based on categories. ?>

<?php endwhile; wp_reset_query();// End the loop. Whew. ?>

<?php /* Display navigation to next/previous pages when applicable */ ?>
<?php 
if (  $wp_query->max_num_pages ) : ?>
                <div id="nav-below">
                    <center><?php wp_pagenavi(); ?></center>
                </div><!-- #nav-below -->
<?php endif; ?>
Cambio esto
Código PHP:
while (have_posts()) : the_post(); ?> 
por esto
Código PHP:
$cat intvalget_query_var('cat') );
while (
have_posts()) : the_post();
if (
in_category($cat) ) : ?> 
y añado un endif; antes del endwhile;

Entiendo que al añadir if (in_category($cat) ) : impido que el buscador haga el loop, ¿no?
  #4 (permalink)  
Antiguo 07/05/2013, 02:01
 
Fecha de Ingreso: diciembre-2004
Ubicación: Madrid
Mensajes: 550
Antigüedad: 19 años, 11 meses
Puntos: 28
Respuesta: Problemas con el buscador

Efectivamente, acabo de hacer una prueba y al añadir ese if (in_category($cat)) : no entraba en el loop al hacer una búsqueda... ¿Solución?

if (in_category($cat) || is_search()) :

Etiquetas: buscador, página, plugin
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 17:14.