Suporte » Ajustando o WordPress » Selecionar post de categoria e dividir em partes

  • Resolvido Erich

    (@erich-casagrande-perusso)


    Bom dia pessoal,

    Eu sou novo com wordpress ( tipo 2 semanas ! hahaha ),
    Me passaram um job onde eu tenho que selecionar uma categoria especifica exexplo “carros” nessa categoria eu selecionaria TODOS os posts mas preciso criar blocos com 11 resultados numa div.

    A existe a maneira de fazer uma consulta direta do banco e pegar esses valores eu vi algo muito similar ao active records mas ainda nao estou familiarizado com as sintaxes do wordpress …

    Se alguém poder me ajudar eu fico muito grato!
    Estou achando wordpress sensacional 😀

Visualizando 3 respostas - 1 até 3 (de um total de 3)
  • Seriam várias DIVs com 11 posts cada uma, até completar todos os posts?

    Vc deve usar um loop do WordPress. Veja aqui:
    http://codex.wordpress.org/pt-br:O_Loop

    Vc pode usar o get_posts ou new WP_Query. Eu particularmente acho mais fácil usar o get_posts. Veja aqui:
    http://codex.wordpress.org/Template_Tags/get_posts

    Para manter 11 em cada DIV, dá para usar vários Loops diferentes, um dentro de cada DIV, mas acredito que a forma mais correta seria usar um loop só, já que vc quer listar todos os posts. Nesse caso, vc deve incluir um contadorzinho que finalize uma DIV e inicie outra de 11 em 11 registros.

    Qualquer coisa poste aqui o código que vc está pensando e a gente tenta ajudar.

    Erich

    (@erich-casagrande-perusso)

    Muito Obrigado pela ajuda Renato_s, pensei em algo assim:
    Creio até que fiz da maneira mais “frankstein” possível mas funcionou se houver algo melhor eu agradeço demais.

    Encontrei uma função que verifica o numero total de post post de uma categoria, vou dividir e arredondar o valor pra cima, usando ciel():

    $numero = ceil( $wpdb->get_var("SELECT count FROM wp_term_taxonomy WHERE term_taxonomy_id = '4' ")/11);

    Após isso crio 1 contador zerado:

    $y = 0;
    Ele vai ser responsável por contar o numero de posts até 11.
    Mas, ainda eu não uso ele, vou inserir um for para contar o numero de blocos que vou usar ou seja:

    for($x=0;$x<$numero;$x++){

    Insiro agora o comandos de WP para selecionar o post da categoria especifica e ai sim faço uso da variável zerada $x:

    global $post;
                                $args = array( 'numberposts' => 5,'offset'=> $y,'category' => 4 );
                                $myposts = get_posts( $args );
                                foreach( $myposts as $post ) :	setup_postdata($post);
               // pego post e tudo mais que preciso //
                 $y++; endforeach;
    }?>

    Ao final coloco y++ ou seja ele contabiliza mais um para aquele laço e assim por diante até o final do laço do 1º bloco…

    Se não ficou bem explicado colo na integra os códigos pra quem estiver passando por problemas similares.

    Obrigado demais pela ajuda renato_s o forum do wordpress é 10!
    um abraço.

    Erich

    (@erich-casagrande-perusso)

    Cometi um erro de digitação é 11 e não 5
    $args = array( ‘numberposts’ => 11,’offset’=> $y,’category’ => 4 );

Visualizando 3 respostas - 1 até 3 (de um total de 3)
  • O tópico ‘Selecionar post de categoria e dividir em partes’ está fechado para novas respostas.