Suporte » Temas » Layouts diferentes no resultado de busca

  • Resolvido marciobr

    (@marciobr)


    Ola.tenho uma caixa de pesquisa onde a pessoa seleciona a categoria que quer buscar na combobox e faz a busca dentro da categoria.por padrao o wordpress exibe os resultados usando layout da pagina search.php.mas existe alguma maneira de fazer com que o resultado da pesquisa seja exibido com o layout original da categoria pesquisada?
    Digo isso porque no meu tema Tenho 3 categorias, e cada uma tem um layout diferente.

    codigo do formulario:

    <form>
    <input type=”text” class=”text” name=”s” size=”24″ value=”<?php _e(“digite para procurar”); ?>” onfocus=”if (this.value == ‘<?php _e(“digite para procurar”); ?>’) {this.value = ”;}” onblur=”if (this.value == ”) {this.value = ‘<?php _e(“digite para procurar”); ?>’;}” />

    <select name=”cat” id=”cat”>

    <option value=”0″ selected>Em Todo Site</option>

    <option value=”10″>categoria 10</option>

    <option value=”11″>categoria 11</option>

    <option value=”8″>categoria 8</option>

    <option value=”13″>categoria 13</option>

    </select>

    <label>

    <input type=”submit” id=”buscar” value=”OK”>

    </label>

    </form>

    codigo da search.php:

    <?php get_header(); ?>

    <div class=”contentLayout”>

    <div class=”sidebar1″>

    <?php include (TEMPLATEPATH . ‘/sidebar1.php’); ?>

    </div>

    <div class=”content”>

    <?php foreach(get_the_category() as $cat){ if(strtolower($cat->cat_name)==strtolower($_GET[‘s’])){ $match = true; } } if($match){ echo ‘Posted in ‘; } foreach(get_the_category() as $cat){ if(strtolower($cat->cat_name)==strtolower($_GET[‘s’])){ echo $cat->cat_name; echo ‘, ‘; } } edit_post_link(‘Edit’, ”, ‘ | ‘); comments_popup_link(‘No Comments »’, ‘1 Comment »’, ‘% Comments »’); ?>

    <?php if (have_posts()) : ?>

    <div class=”Post”>

    <div class=”Post-tl”></div>

    <div class=”Post-tr”><div></div></div>

    <div class=”Post-bl”><div></div></div>

    <div class=”Post-br”><div></div></div>

    <div class=”Post-tc”><div></div></div>

    <div class=”Post-bc”><div></div></div>

    <div class=”Post-cl”><div></div></div>

    <div class=”Post-cr”><div></div></div>

    <div class=”Post-cc”></div>

    <div class=”Post-body”>

    <div class=”Post-inner article”>

    <div class=”PostContent”>

    <h2><?php _e(‘Search Results’, ‘kubrick’); ?></h2>

    <?php

    $prev_link = get_previous_posts_link(__(‘Newer Entries »’, ‘kubrick’));

    $next_link = get_next_posts_link(__(‘« Older Entries’, ‘kubrick’));

    ?>

    <?php if ($prev_link || $next_link): ?>

    <div class=”navigation”>

    <div class=”alignleft”><?php echo $next_link; ?></div>

    <div class=”alignright”><?php echo $prev_link; ?></div>

    </div>

    <?php endif; ?>

    </div>

    <div class=”cleared”></div>

    </div>

    </div>

    </div>

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

    <div class=”Post”>

    <div class=”Post-tl”></div>

    <div class=”Post-tr”><div></div></div>

    <div class=”Post-bl”><div></div></div>

    <div class=”Post-br”><div></div></div>

    <div class=”Post-tc”><div></div></div>

    <div class=”Post-bc”><div></div></div>

    <div class=”Post-cl”><div></div></div>

    <div class=”Post-cr”><div></div></div>

    <div class=”Post-cc”></div>

    <div class=”Post-body”>

    <div class=”Post-inner article”>

    <h2 class=”PostHeaderIcon-wrapper”>

    <span class=”PostHeader”>” rel=”bookmark” title=”<?php printf(__(‘Permanent Link to %s’, ‘kubrick’), the_title_attribute(‘echo=0’)); ?>”>

    <?php the_title(); ?>

    </span>

    </h2>

    <div class=”PostContent”>

    <?php if (is_search()) the_excerpt(); else the_content(__(‘Read the rest of this entry »’, ‘kubrick’)); ?>

    </div>

    <div class=”cleared”></div>

    </div>

    </div>

    </div>

    <?php endwhile; ?>

    <?php if ($prev_link || $next_link): ?>

    <div class=”Post”>

    <div class=”Post-tl”></div>

    <div class=”Post-tr”><div></div></div>

    <div class=”Post-bl”><div></div></div>

    <div class=”Post-br”><div></div></div>

    <div class=”Post-tc”><div></div></div>

    <div class=”Post-bc”><div></div></div>

    <div class=”Post-cl”><div></div></div>

    <div class=”Post-cr”><div></div></div>

    <div class=”Post-cc”></div>

    <div class=”Post-body”>

    <div class=”Post-inner article”>

    <div class=”PostContent”>

    <div class=”navigation”>

    <div class=”alignleft”><?php echo $next_link; ?></div>

    <div class=”alignright”><?php echo $prev_link; ?></div>

    </div>

    </div>

    <div class=”cleared”></div>

    </div>

    </div>

    </div>

    <?php endif; ?>

    <?php else : ?>

    <div class=”Post”>

    <div class=”Post-tl”></div>

    <div class=”Post-tr”><div></div></div>

    <div class=”Post-bl”><div></div></div>

    <div class=”Post-br”><div></div></div>

    <div class=”Post-tc”><div></div></div>

    <div class=”Post-bc”><div></div></div>

    <div class=”Post-cl”><div></div></div>

    <div class=”Post-cr”><div></div></div>

    <div class=”Post-cc”></div>

    <div class=”Post-body”>

    <div class=”Post-inner article”>

    <div class=”PostContent”>

    <h2><?php _e(‘Search Results’, ‘kubrick’); ?></h2>

    <h2 class=”center”><?php _e(‘No posts found. Try a different search?’, ‘kubrick’); ?></h2>

    if(function_exists(‘get_search_form’)) get_search_form();

    </div>

    <div class=”cleared”></div>

    </div>

    </div>

    </div>

    <?php endif; ?>

    </div>

    </div>

    <div class=”cleared”></div>

    <?php get_footer(); ?>

Visualizando 6 respostas - 1 até 6 (de um total de 6)
  • Criador do tópico marciobr

    (@marciobr)

    Por favor me ajudem,nao aguento mais pesquisar no google.com e no google.com.br em vão.Lá se vao 3 dias nesta caminhada.

    renato_s

    (@renato_s)

    Vc tem que usar uma conditional tag no seu search.php e então escolher como mostrar os posts. Dependendo da categoria, vc faz um include para um arquivo PHP específico.

    http://codex.wordpress.org/Conditional_Tags

    Nesses arquivos php específicos, copie o código dos templates das categorias correspondentes.

    luizcrf

    (@luizcrf)

    Criador do tópico marciobr

    (@marciobr)

    renato ,nao entendi direito.Eu coloco o include na search.php ,certo?
    lí sobre as conditional tags,mas nao entendi como chamo
    as categorias.
    teria que modificar um codigo atual e inserir in_category( array( 1,2,3 ) ) ??
    seria mas ou menos isso?

    Criador do tópico marciobr

    (@marciobr)

    por favor,me ajuda renato.voce diz que eu deveria usar a conditional tag,certo?
    entao,no caso eu coloquei dessa forma:

    <?php

    global $post; // if outside the loop

    if ( in_category(‘5’) && $post->post_parent ) {
    <?php include (TEMPLATEPATH . ‘/search-10.php’); ?>

    } else {
    // This is not a subpage
    }
    ?>
    troquei a taf page por category pra chamar a categoria,e coloquei o include dentro do loop,
    mas nao deu certo,ele retorna a busca pra search.php.Lí a pagina e nao achei a maneira de fazer o codigo.

    Criador do tópico marciobr

    (@marciobr)

    galera,consegui.O Leo Baiano da comunidade “WordPress” do orkut me ajudou.
    <?php
    // Recupera o valor da categoria
    $categoria = $_GET[‘cat’];

    // Testa a categoria para incluir o arquivo correspondente
    switch ($categoria) {
    case ‘x’:
    include_once TEMPLATEPATH . ‘/search-x.php’;
    break;
    case ‘y’:
    include_once TEMPLATEPATH . ‘/search-y.php’;
    break;
    case ‘z’:
    include_once TEMPLATEPATH . ‘/search-z.php’;
    break;
    default:
    include_once TEMPLATEPATH . ‘/search.php’;
    ;
    }
    ?>

    obrigado pela paciencia renato

    flw

Visualizando 6 respostas - 1 até 6 (de um total de 6)
  • O tópico ‘Layouts diferentes no resultado de busca’ está fechado para novas respostas.