Paginação e Order BY
-
alguem sabe me dizer se tem como colocar uma paginação e ordernar os posts por ASC??
pois estou usando o plugin WP-PAGNAVI e quando coloco para os posts da categoria ser ordenado por ASC, ao mudar de página não consigo, pois fica sempre na primeira página onde está o primeiro post
-
Já existem vários tópicos como este, dá uma olhada http://br.forums.wordpress.org/tags/paginacao
ja tentei usar todas as alternativas e nada :S
Então a única forma é vc postar o código aqui para que possamos dar uma olhada e achar o problema.
<?php get_header(); ?>
<article id=”content-all”>
<section id=”side-bar”>
<?php include (TEMPLATEPATH . ‘/sidebar1.php’); ?>
</section><section id=”middle”>
<div class=”content”><header><?php single_cat_title(); ?> </header>
<?php query_posts(‘orderby=title&order=ASC’);
if (have_posts()) : while (have_posts()) : the_post(); ?>
<div class=”desc”>-
<div class=”display-none”><?php the_title(); ?></div>
<?php the_content(); ?></div>
<?php endwhile;?><?php endif?>
<?php if(function_exists(‘wp_pagenavi’)) { wp_pagenavi();} ?>
</div>
</section><section id=”aside-bar”>
<?php include (TEMPLATEPATH . ‘/sidebar2.php’); ?>
</section>
</article></section>
<?php get_footer(); ?>o link do site é esse
http://www.guiaturpe.com.br/novo/recife/Basta vc trocar
<?php query_posts('orderby=title&order=ASC'); if (have_posts()) : while (have_posts()) : the_post(); ?>
Por isso
<?php global $query_string; query_posts( $query_string .'orderby=title&order=ASC'); if (have_posts()) : while (have_posts()) : the_post(); ?>
Myst1010 obrigado pela ajuda, mas n funcionou :S.
mudei a parte que voce sugerio e não aparece nenhum post das categorias.
http://www.guiaturpe.com.br/novo/recife/Classificados_Servicos/agencias-de-turismo/O que eu estou observando é que, eu estou dizendo no código que
TODOS os posts de TODAS as páginas irão ter o (orderby=title&…).E eu estava pensando se existe uma forma de fazer mais ou menos assim a lógica:
<?php query_page_posts. this.category(‘orderby=title&order=ASC’);
if (have_posts()) : while (have_posts()) : the_post(); ?>ou seja ele adicionar a função para A categoria selecionada.
Bom vamos lá, primeiramente vc não pode usar letras maiúsculas em url e na sua url tem Classificados_Servicos.
Não é este o motivo do problema provavelmente, mas recomendo vc verificar isso para não te gerar problemas futuros.
=============================================
Eu te passei o código com base no que eu testei aqui, eu não só peguei a forma de fazer e te passei, então garanto que funciona desta forma porque eu realmente testei.Mas se não está funcionando vc pode ter um outro loop ou query_posts que está afetando este, como posso ver vc tem uma sidebar vindo antes do conteúdo dos posts e nela pode estar o problema.
Caso tenha uma outra busca de posts use
wp_reset_query();
no final do loop anterior a este para que este loop não seja afetado.===================================================
Em sua url tem Classificados_Servicos/agencias-de-turismo
O que são essas classificações?
E que página é essa que vc mostra na url, pois não parece ser uma página simples?=============================================
Seu código não está dizendo que todas as páginas terão essa ordenação que vc criou, esta ordenação só se aplica a esta página ou paginas secundárias a esta. Seu loop não faz nenhuma busca por uma categorias específica nem nada especial então não deveria gerar problemas com paginação.
certamente vc tem uma loop em algum lugar, até mesmo vindo de algum plugin ou do seu function causando o problema.
vc já deve ter encontrado o problema né, porque aqui a paginação do link que vc me passou já está funcionando.
é que eu removi, pois estou atualizando, vou voltar do jeito que é para ser, só um minuto
Myst1010, o que eu quero fazer nessas categorias é o seguinte:
http://www.guiaturpe.com.br/recife/v2/casas-noturnas.phpcomo tem no site anterior.
existe uma página com um tema, e nesta pagina tem uma lista de itens relacionado ao tema, só isso.=====================================
ai eu pensei em fazer deste jeito.
colocar o orderby=title, e dei um display:none no title.
e em cada post da categoria eu escrevo o titulo da seguinte maneira.01 casa noturna A;
02 casa noturna B;para ordernar pelo titulo e ter o controle de posição dos posts.
==============================================
Logicamente pensando não tem muito misterio, mas vou agora tentar usar o wp_reset_query(); nas sides bar.
============================
as sides bar, a side bar 1, ela so tem isso.
- ” href=”<?php bloginfo(‘url’)?>/” >Principal
- ” href=”<?php bloginfo(‘url’)?>/recife” >Recife
- ” href=”<?php bloginfo(‘url’)?>/rios-e-pontes” >Rios e Pontes
- <h3>Classificados / Serviços</h3>
só mostra as paginas.
===============================
na side bar 2. é isso:
<div class=”busca”>
<h3>Busca</h3>
<form method=”get” id=”searchform” action=”<?php echo $_SERVER[‘PHP_SELF’]; ?>”>
<input type=”text” value=”<?php echo wp_specialchars($s, 1); ?>” name=”s” id=”s” size=”15″ />
</form>
</div>
<ol class=”nav-aside”><?php wp_list_categories( ‘title_li’ ); ?>
<?php if ( function_exists(‘dynamic_sidebar’) && dynamic_sidebar(2) ) : else : ?>
<?php endif; ?>
<!– sidebar –>listar as categorias e pronto.
Movido para um subfórum adequado.
Bom eu ainda não entendi como pode estar dando erro sem nenhum outro loop, pois vc não está fazendo nenhuma busca específica.
Mas novamente, isso casas-noturnas.php é uma página modelo?
===================================
Em relação aos títulos se entendi direito vc pode fazer issono lugar de mostrar o
<?php the_title() ?>
vc coloca
<?php echo substr(get_the_title(), 4, 100); ?>
isso faz uma retirada das 4 primeiras letras no título e limita até 100 caracteres.
Desta forma vc pode adicionar normalmente o 001 + espaço no título dos seus posts e não precisa esconder eles com display:none; e fazendo a ordeby=title vão ficar em ordem da numeração que vc for colocando.
Se a intenção é não mostrar os títulos mesmo não precisa mostrar para que eles fiquem em ordem de título não, mesmo sem o título sendo mostrado na página os posts serão listados com esta ordenação.
é que n existe Myst1010 a pagina modelo-casas.php, existe a página category.php.
e em relação ao titulo do post eu fiz mas fica como está no link
http://www.guiaturpe.com.br/novo/recife/classificados_servicos/agencias-de-turismo/sabendo esta assim:
<header><?php single_cat_title(); ?> </header>
<?php
query_posts(‘order=ASC’);
if (have_posts()) : while (have_posts()) : the_post(); ?>
<div class=”desc”>-
<div class=””><?php echo substr(get_the_title(), 4, 100); ?></div>
<?php the_content(); ?></div>
<?php endwhile;?><?php endif; wp_reset_query(); ?>
<?php if(function_exists(‘wp_pagenavi’)) { wp_pagenavi();} ?>retirei por enquanto a global $query_string; pois nao esta aparecendo nenhum post quando uso ela. =/
tentei,tentei e nada, alguem pode me ajudar? :S
- O tópico ‘Paginação e Order BY’ está fechado para novas respostas.