Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP]Wybieranie wpisów z kilku kategorii, a z jednej nie. Jak to zrobić?
Forum PHP.pl > Forum > Przedszkole
kamil9012
Witam.
Posiadam kilka kategorii na stronie o id=1, id=2, id=3, id=4, id=5. Każda kategoria posiada swoje wpisy. Dla ułatwienia podaję aktualny kod PHP, który wyświetla 5 wpisów z jednej kategorii o id=1:
  1. <?php $recent = new WP_Query("cat=1&showposts=5"); while($recent->have_posts()) : $recent->the_post();?>
  2. <?php if( get_post_meta($post->ID, "thumbnail", true) ): ?>
  3. <a href="<?php the_permalink() ?>" rel="bookmark"><img style="float:left;margin:0px 10px 0px 0px;" src="<?php echo get_post_meta($post->ID, "thumbnail", true); ?>" alt="<?php the_title(); ?>" /></a>
  4. <?php else: ?>
  5. <a href="<?php the_permalink() ?>" rel="bookmark"><img style="float:left;margin:0px 10px 0px 0px;" src="<?php bloginfo('template_url'); ?>/images/thumbnail.png" alt="<?php the_title(); ?>" /></a>
  6. <?php endif; ?>
  7. <b><a href="<?php the_permalink() ?>" rel="bookmark"><?php the_title(); ?></a></b>
  8. <?php the_content_limit(80, ""); ?>
  9.  
  10. <div style="border-bottom:1px dotted #94B1DF; margin-bottom:10px; padding:0px 0px 10px 0px; clear:both;"></div>
  11.  
  12. <?php endwhile; ?>

gdzie główną rolę odgrywa kod:
  1. <?php $recent = new WP_Query("cat=1&showposts=5"); while($recent->have_posts()) : $recent->the_post();?>
  2. <?php if( get_post_meta($post->ID, "thumbnail", true) ): ?>

Decyduje on o tym, że wyświetlane jest 5 wpisów z kategorii o id=1. Chciałbym zrobić tak, żeby było wyświetlane 5 wpisów z kategorii o id=2, id=3, id=4, id=5. Wpisy z kategorii id=1 miałyby być nie wyświetlane. Niestety nie mam pojęcia jak mogę to zrobić, dlatego bardzo Was proszę o pomoc w tej kwestii.

Z góry dziękuję
thek
Pytanie zasadnicze... Co rozumiesz pod pojęciem "5 wpisów z kategorii o id=2, id=3, id=4, id=5"? Czy po 5 z każdej kategorii, czy może ogólnie 5 z wszystkich tych kategorii. Inna sprawa to taka, że zanim bym zaczął pisać na forum, to zerknąłbym w kod WordPressa i zobaczył jak działa funkcja WP_Query i czy pozwala na przesłanie tablicy danych lub w jakiś inny sposób dająca zapytanie z wielokrotnie wykorzystanym tym samym parametrem. Jeśli nie to będziesz miał mały problem...
kamil9012
rozumiem 5 najnowszych wpisów łącznie z kategorii o id=2,3,4,5 oprócz 1 smile.gif

niestety nie mam pojęcia na co pozwala funkcja WP_Query i nawet nie przyszło mi do głowy żeby poszukać.

Zaraz poszukam w google i może się dowiem. Jak już będę wiedział to napiszę tutaj.

edit:
znalazłem. Wszystko o tej funkcji znajduje się tutaj: http://codex.wordpress.org/Function_Reference/WP_Query
sebekzosw
Pewnie chodzi mi o takie coś - http://blog.desmart.com/2009/07/03/mysql-g...owanie-wynikow/

tylko czy znacie jakiś skuteczny sposób ?
kamil9012
Czy wie może ktoś jak ułożyć tą linijkę kodu?

  1. <?php $recent = new WP_Query("cat=1&showposts=5"); while($recent->have_posts()) : $recent->the_post();?>


próbowałem coś takiego:
  1. <?php $recent = new WP_Query("cat=1&showposts=0" && "cat=2&showposts=5" && "cat=3&showposts=5" && "cat=4&showposts=5" && "cat=5&showposts=5"); while($recent->have_posts()) : $recent->the_post();?>



Ale też nie działa sad.gif
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.