Check alle échte Black Friday-deals Ook zo moe van nepaanbiedingen? Wij laten alleen échte deals zien

Wordpress Posts

Pagina: 1
Acties:

  • Coen de Zeeuw
  • Registratie: December 2012
  • Laatst online: 15-05-2024
Nog de beste wensen mensen.
Ik ben met een Wordpress website bezig en wil berichten tonen.

code:
1
2
3
4
5
6
7
8
9
10
11
12
        if ( have_posts() ) {
                while ( have_posts() ) {
                    the_post(); 
                    
                    echo '<article class="news-item">
                    <span class="date"></span><br>
                    <strong>'.the_field('titel').'</strong><br>
                    '.the_field('bericht').'
                    </article>';
                    
                } // end while
            } // end if


Dit stukje code wordt ingeladen via sidebar.php. Wat er ook gebeurt hij echo't altijd één item ongeacht de berichten die ik toevoeg. Iemand een idee?

Complete code sidebar:

code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
<div id="sidebar">
    <aside>
        <?php if( is_front_page() )
        {
        echo '<section class="news">
        <h2>Kort nieuws</h2>';
        
        if ( have_posts() ) {
                while ( have_posts() ) {
                    the_post(); 
                    
                    echo '<article class="news-item">
                    <span class="date"></span><br>
                    <strong>'.the_field('titel').'</strong><br>
                    '.the_field('bericht').'
                    </article>';
                    
                } // end while
            } // end if
        
        echo '<a href="#">Nieuwsoverzicht &rsaquo;</a>
        </section>';
        }
        else
        {
          $mededelingensingle = get_field( 'mededelingen' );
          if ( $mededelingensingle )
          {
          echo '<section class="news">';
          echo '<h2>Mededelingen</h2>';
          echo the_field( 'mededelingen' );
          echo '</section>'; 
          }
          else
          $mededelingen = get_field( 'mededelingen', $post->post_parent );
          if ( $mededelingen )
          {
          echo '<section class="news">';
          echo '<h2>Mededelingen</h2>';
          echo the_field( 'mededelingen', $post->post_parent );
          echo '</section>'; 
          }
        }
        ?>

[ Voor 52% gewijzigd door Coen de Zeeuw op 04-01-2014 16:17 ]


  • Xudonax
  • Registratie: November 2010
  • Laatst online: 21-11 20:40
Wat doet the_post() precies? Mogelijk dat hier iets vreemds in zit. Daarnaast, hoe bepaalt have_posts of er nog posts zijn waaroverheen gelopen moet worden? En tenslotte, de if kan volgens mij weg, want als have_posts als uitkomst false heeft, dan zal de while loop ook niet uitgevoerd worden ;)

  • Afvalzak
  • Registratie: Oktober 2008
  • Laatst online: 31-08 12:02

Afvalzak

Zet jij mij even buiten?

Die if kan je gebruiken om een foutmelding te tonen als er geen posts zijn natuurlijk ;-)

Op de Wordpress site doen ze het zo:
PHP:
1
2
3
4
5
6
7
8
9
<?php
if ( have_posts() ) :
    while ( have_posts() ) : the_post();
        // Your loop code
    endwhile;
else :
    echo wpautop( 'Sorry, no posts were found' );
endif;
?>


Lijkt op het zelfde neer te komen.

Last.fm | Code Talks


  • jbdeiman
  • Registratie: September 2008
  • Laatst online: 09:02
Kan dat niet iets met instellingen te maken hebben? Ik neem aan dat het niet zo moet zijn dat er "oneindig" posts getoond moeten worden op dat punt, dus zal dat ergens een instelling kunnen zijn denk ik, of dat er een bepaald soort posts gezocht worden op die pagina/ in dat gedeelte?

Beide loops zijn exact hetzelfde alleen op een andere manier geschreven:

PHP:
1
2
3
while($voorwaarde):
//Hier wat je in de loop wil doen
endwhile;


Doet exect hetzelfde als:
PHP:
1
2
3
4
while($voorwaarde)
{
//hier wat je wil doen
}

[ Voor 0% gewijzigd door jbdeiman op 04-01-2014 16:35 . Reden: made it php code ]


  • Scrummie
  • Registratie: Februari 2003
  • Laatst online: 04-11 09:03

Scrummie

Think different

Controleer bij instellingen even of je max posts per pagina niet op 1 staat.

Seizoenskaarthouder Feyenoord - Vak T


  • TheNephilim
  • Registratie: September 2005
  • Laatst online: 21-11 15:31

TheNephilim

Wtfuzzle

Heb je bij Instellingen -> Lezen de juiste blogpagina ingesteld?

  • FotW
  • Registratie: Juli 2012
  • Laatst online: 24-10 13:17
Hoe moet je while loop weten welke query uitgevoerd wordt? Want volgens mij voer je nu gewoon de standaard current page query uit.
Heb je de documentatie al bekeken: http://codex.wordpress.org/The_Loop

Verwijderd

Check inderdaad ook de standaard instellingen beschikbaar op je dashboard, volgens mij zit je fout daar... of bij Lezen of bij Schrijven, staat daar alles correct?

  • Coen de Zeeuw
  • Registratie: December 2012
  • Laatst online: 15-05-2024
Thanks voor de antwoorden. Ga het vanmiddag proberen. Lijkt me wel logisch dat ik categorieën moet aangeven.

Alhoewel het me niet niet lijkt dat het met max posts te maken kan hebben. Want als ik geen enkel bericht heb aangemaakt laad ie alsnog een <article> tag terwijl ie dit dan niet zou moeten doen.

[ Voor 45% gewijzigd door Coen de Zeeuw op 10-01-2014 09:46 ]


  • TheNephilim
  • Registratie: September 2005
  • Laatst online: 21-11 15:31

TheNephilim

Wtfuzzle

Coen de Zeeuw schreef op vrijdag 10 januari 2014 @ 09:44:
Thanks voor de antwoorden. Ga het vanmiddag proberen. Lijkt me wel logisch dat ik categorieën moet aangeven.

Alhoewel het me niet niet lijkt dat het met max posts te maken kan hebben. Want als ik geen enkel bericht heb aangemaakt laad ie alsnog een <article> tag terwijl ie dit dan niet zou moeten doen.
Ik zou eerst eens wat gaan lezen. Te beginnen met http://codex.wordpress.org/The_Loop en dan http://codex.wordpress.org/Function_Reference/query_posts om te eindigen met http://codex.wordpress.org/Template_Tags/get_posts

  • geert1
  • Registratie: Maart 2006
  • Laatst online: 19-11 12:18
FotW schreef op maandag 06 januari 2014 @ 10:38:
Hoe moet je while loop weten welke query uitgevoerd wordt? Want volgens mij voer je nu gewoon de standaard current page query uit.
Heb je de documentatie al bekeken: http://codex.wordpress.org/The_Loop
Hier zit 'm de kern. Een standaard Wordpress-loop (met while -> have posts -> the post, zoals je hier doet) werkt op basis van de standaard-query voor een pagina. Dus als je op een tekstpagina of blogpost zit, en je voert de standaard while-loop uit, dan krijg je alleen die pagina / blogpost als resultaat. Wil je door alle posts heen lopen, of door een specifieke categorie of post type, ongeacht waar je bent in de site, dan heb je niets aan de standaard loop. Dan kun je het beste gaan kijken naar WP_Query. Dit is de meest handige functie voor het ophalen van informatie buiten de standaardquery om. Je kunt hier enorm veel zaken aan meegeven om een selectie te maken van de informatie in je database. Op de codexpagina staan uitgebreide voorbeelden; succes!
Pagina: 1