Kjapp og trygg hosting for Wordpress

Vise poster fra en kategori på en side

picxx

Well-Known Member
the_post?... oooops...nei, var ikke det nei!
 

picxx

Well-Known Member
the_excerpt... kanskje?
 

picxx

Well-Known Member
the header da?
 

Tonny Kluften

Administrator
Det ble slik:

Først en loop med en post hvor hele innholdet vises, så en loop hvor 4 utdrag vises, her er nyeste post i kategorien utelatt:

<?php
query_posts('cat=12&posts_per_page=4&offset=1');
if ( have_posts() ) : while ( have_posts() ) : the_post();?>
<div class="overskrifter">
<h2><a href="<?php the_permalink() ?>" rel="bookmark"><?php the_title(); ?></a></h2>
</div>
<?php the_excerpt('continue reading', strip_teaser, 'more_file'); ?>
<div class="overskrifter">
<p><a href="<?php the_permalink() ?>" rel="bookmark">Les mer...</a></p>
</div>
<hr>
<?php endwhile; endif; ?>
 

peterandrej

pensjonert moderator
Du kan også bruke én loop til dette. Gjør det langt, langt enklere i forhold til paginering, osv.

Eksempel:

<?php query_posts('showposts=5&cat=12'); ?>

<?php if (have_posts()) : ?>
<?php while (have_posts()) : the_post(); $loopcounter++; ?>

<?php if ($loopcounter > 0 and $loopcounter < 2 ) { ?>
FØRSTE POST HER
<?php } ?>

<?php if ($loopcounter > 1 and $loopcounter < 6 ) { ?>
ØVRIGE POSTER
<?php } ?>


<?php endwhile; ?>
<?php else : ?>
<?php endif; ?>
 

Pong

Jeg selger sʇɥƃıluʍop :)
Litt småplukk:

if ($loopcounter > 0 and $loopcounter < 2 )
er vel det samme som
if( $loopcounter == 1 )

Ellers hadde jeg satt $loopcounter til 0 før du går inn i while, siden det kan være noen som finner på å bruke $loopcounter til noe en gang i framtiden, og da gjør koden pløtselig noe annet (nå antas det at den ikke finnes eller er 0).
Angående testen om $loopcounter >2 og <6 så er det vel bare else-biten av if'en, så den testen trenges vel ikke (men kan være fornuftig hvis det gjør ting lettere å lese).
 

TorsteinO

Art Director & grunder
Hmmmm... jeg er ute etter noe liknende av dette, vil gjerne vise f.ex.

1 "stor" post
så to mindre ved siden av hverandre
så 1 "stor" post igjen
så to mindre ved siden av hverandre igjen, osv. Altså at det repeteres for hver tredje post.

Litt kvasikode her:
if(($loopcounter-1)/3 = HELTALL) skal vel stemme med den "store"

if(($loopcounter-2)/3 = HELTALL) skal vel stemme med den første av de to mindre

og if($loopcounter/3 = HELTALL) skal vel stemme med den andre av de to mindre

Men php er ikke min sterkeste side (for å si det pent...), så hvordan gjør jeg det? Dette under her funker ikke, men er jeg på sporet?

PHP:
<?php query_posts('posts_per_page=12'); ?>

<?php if (have_posts()) : ?>
<?php while (have_posts()) : the_post(); $loopcounter++; ?>

<?php if ((($loopcounter - 1) / 3) is_int) { ?>
"STOR" post
<?php } ?>

<?php if ((($loopcounter - 2) / 3) is_int) { ?>
første "liten" post
<?php } ?>

<?php if (($loopcounter / 3) is_int) { ?>
andre "liten" post
<?php } ?>

<?php endwhile; ?>
<?php else : ?>
<?php endif; ?>

Eller går det kanskje å resette loopcounteren for hver tredje post, og bare spørre om counteren er 1, 2, eller 3?
 
Sist redigert:

Pong

Jeg selger sʇɥƃıluʍop :)
Du kan jo legge til en extra class med loopcounteren på, og bruke stylesheet'en for å endre størrelsene på artikkel 1 og 4 (de store).

Kode:
<?php
$loopcounter = 1;
query_posts('cat=12&posts_per_page=4&offset=1');
if( have_posts()) : while( have_posts()) : the_post(); ?>
<div class="overskrifter artikkel<?php $loopcounter++ ?>">
<h2><a href="<?php the_permalink() ?>" rel="bookmark"><?php the_title(); ?></a></h2>
</div>
<?php the_excerpt('continue reading', strip_teaser, 'more_file'); ?>
<div class="overskrifter">
<p><a href="<?php the_permalink() ?>" rel="bookmark">Les mer...</a></p>
</div>
<hr>
<?php endwhile; endif; ?>

Eller noe..
 
@atomet: Har gjort noe slikt på Folkebloggen | En blogg til folket - av folket - muligens noe rotete/grisete kode, men hvis du sender meg en mail på robin att comfyrene dot com så kan jeg sende deg en fil så kan du se hvordan jeg gjorde det i alle fall. Har da tre stk størrelser. Har egentlig tenkt å se på en bedre løsning etterhvert, men det funker i alle fall.

Kan også se om det er noe info her: 10 Useful WordPress Loop Hacks - Smashing Magazine - punkt 3 f.eks.
 
Sist redigert:
Topp