-
18-04-2012, 17:28 #1Member
- Registered
- 30/03/06
- Location
- sint pieters leeuw
- Posts
- 3,309
- iTrader
- 102 (100%)
- Mentioned
- 0 Post(s)
syntax error php - Query_posts in wordpress
Hallo iedereen,
Ik ben me suf aan het zoeken, maar ik blijf een syntax error krijgen.
De nodige uitleg:
Om in wordpress bepaalde posts uit bepaalde categoriën te laten zien, gebruik je deze code (zit in mijn index.php):
In mijn customized admin panel vraag ik de mensen om een categorie naam aan te geven die ik dan op de hoofdpagina wil laten verschijnen:PHP Code:<?php query_posts('category_name=categoryname&posts_per_page=4'); ?>
Dit werkt allemaal zonder problemen.PHP Code:// Ask for category on homepage
array( "name" => "Category home:",
"desc" => "Enter the name of the category you want to display on the home page",
"id" => $shortname."_category_home",
"type" => "text",
"std" => ""),
Bij een vorig voorbeeld, haal ik de info uit het admin paneel (om die dan te gaan integreren) op die manier, en dat werkt ook:
In de header heb ik ook deze code opdat wordpress zou weten dat hij het in mijn admin panel moet gaan halen:PHP Code:echo $options['category_home']
Nu probeer ik alles samen en dat geeft mij een fout:PHP Code://get theme options
$options = get_option( 'theme_settings' ); ?>
-> geef mij alle posts uit de category die in het admin paneel staat onder category_home en geef er 4 weerPHP Code:<?php query_posts('category_name=echo $options['category_home']&posts_per_page=4'); ?>
De logica klopt, maar de code niet. Kan iemand mij daarbij helpen aub (de laatste lijn dus aub)?
Grtz,
Benwakeno votes
-
-
18-04-2012, 17:32 #2PHP Code:
<?php query_posts('category_name='.$options['category_home'].'&posts_per_page=4'); ?>no votes
-
18-04-2012, 18:46 #3Member
- Registered
- 30/03/06
- Location
- sint pieters leeuw
- Posts
- 3,309
- iTrader
- 102 (100%)
- Mentioned
- 0 Post(s)
Bedankt voor je antwoord maar spijtig genoeg werkt het niet, hij houd geen rekening met de category, maar wel nog met de posts per page.
Heb de naam al veranderd, werkt ook niet. Zelfs een ID ingeven lukt ook niet :/
Nog suggesties?no votes
-
18-04-2012, 18:48 #4
Heb wel wat ervaring met customizen van wordpress. Wat wil je juist bereiken?
Edit: als je posts op je frontpagina laat verschijnen is home.php de template waar je mee wil werken, niet index.php.Last edited by Scissor; 18-04-2012 at 18:55.
no votes
-
18-04-2012, 19:55 #5Approved 9-lifer
- Registered
- 08/01/05
- Location
- Turnhout
- Posts
- 1,182
- iTrader
- 0
- Mentioned
- 0 Post(s)
- Reputation
- 9/9
@scissor dat is idd zo maar als hij geen home.php heeft zit hij goed in index.php
Ik weet niet of het veel uitmaakt maar ik doe het zelf altijd op bovenstaande manier. Probeer eens om hardcoded een catogry te tonen. Werkt dat? Post anders uw loop eens? Zit je met meerdere loops op een pagina?PHP Code:query_posts( array ( 'category_name' => $options['category_home'], 'posts_per_page' => 4) );
-no votes
-
18-04-2012, 20:01 #6Member
- Registered
- 30/03/06
- Location
- sint pieters leeuw
- Posts
- 3,309
- iTrader
- 102 (100%)
- Mentioned
- 0 Post(s)
voor de eerste keer ben ik een theme from scratch aan het ontwerpen, mijn homepage is in mijn geval index.php.
Op de homepage wil ik 4 posts van een bepaalde categorie.
Die categorie moet je in de options panel van de theme ingeven.
Beide codes heb ik en werken al voor de logo. En dit werkt.
Als je meer info nodig hebt laat je maar iets wetenPHP Code:<div id="logo">
<!-- Here comes the logo upload code in the admin panel. If no logo, description-->
<?php if($options['custom_logo']) { ?>
<a href="<?php bloginfo( 'url' ) ?>/" title="<?php bloginfo( 'name' ) ?>" rel="homepage"><img src="<?php echo $options['custom_logo']; ?>" alt="<?php bloginfo( 'name' ) ?>" /></a>
<?php } else { ?>
<h2><a href="<?php bloginfo( 'url' ) ?>/" title="<?php bloginfo( 'name' ) ?>" rel="homepage"><?php bloginfo( 'name' ) ?></a>
<?php } ?>
</div>
@Mam -> jouw code werkt spijtig genoeg ook niet. Hardcoded lukt wel daarentegen. Complete code:
PHP Code:<?php query_posts( array ( 'category_name' => $options['category_home'], 'posts_per_page' => 4) ); ?>
<?php while (have_posts()) : the_post(); ?>
<div class="posthome" id="post-<?php the_ID(); ?>">
<div class="thumbnail">
<?php
if (has_post_thumbnail()) {
the_post_thumbnail(
array(
'class' => 'thumbnail',
'alt' => 'post thumbnail', )
); } ?>
</div>
<h2><a href="<?php the_permalink(); ?>" title="<?php the_title(); ?>"><?php the_title(); ?></a></h2>
<?php the_excerpt();?>
</div>
<?php endwhile; ?>Last edited by benwake; 18-04-2012 at 20:08.
no votes
-
18-04-2012, 20:10 #7Approved 9-lifer
- Registered
- 08/01/05
- Location
- Turnhout
- Posts
- 1,182
- iTrader
- 0
- Mentioned
- 0 Post(s)
- Reputation
- 9/9
En als je vlak boven query_posts eens een echo $options['category_home'] doet. Zit daar dan iets in? Want als het hardcoded wel werkt.. Dat is wel straf..
-no votes
-
18-04-2012, 20:15 #8
Waarom maak je daar btw een custom category voor? Als je in je thema al standaard een category steekt die je op je index publiceert, kan je als gebruiker gerust je post altijd die category meegeven, zeker omdat je meerdere category kan meegeven...?
Geef gewoon duidelijk mee in je custom admin panel dat de user een category moet aanmaken "frontpage_post" ofzo en alles opgelost?no votes
-
18-04-2012, 21:55 #9Member
- Registered
- 30/03/06
- Location
- sint pieters leeuw
- Posts
- 3,309
- iTrader
- 102 (100%)
- Mentioned
- 0 Post(s)
Heb de echo getest die werkt wel.
Maar aan de Default Post Category in settings-writing had ik niet gedacht.
Als ik dit aanpas werkt het nog altijd niet, iemand een idee? Welke loop gebruik ik dan het best om mijn posts te tonen en te limiteren op 4?no votes
-
18-04-2012, 22:41 #10
Settings > Reading >
Blog pages show at most 4 posts?
of
query_posts( 'posts_per_page=4' );no votes
-
18-04-2012, 22:43 #11Member
- Registered
- 30/03/06
- Location
- sint pieters leeuw
- Posts
- 3,309
- iTrader
- 102 (100%)
- Mentioned
- 0 Post(s)
ja dat doet hij wel, maar hij neemt de categorie niet uit settings-writing-default post category :-/ Als ik daar van af ben is het in orde
no votes
-
18-04-2012, 22:45 #12
WordPress › Query Posts « WordPress Plugins
al's geprobeerd?
Hoe heet je category btw?
<?php query_posts('category_name=front_page_category&sho wposts=4'); ?>Last edited by Scissor; 18-04-2012 at 22:52.
no votes
-
18-04-2012, 22:51 #13Member
- Registered
- 30/03/06
- Location
- sint pieters leeuw
- Posts
- 3,309
- iTrader
- 102 (100%)
- Mentioned
- 0 Post(s)
plugins gebruik ik liever niet. Ik wil echt de theme volledig zelf maken from scratch. Met plugins is het te gemakkelijk
Dan leer ik ook niets bij, kan ik even goed bestaande themes blijven customizen...
Ik zal nog wat blijven zoeken, waarschijnlijk is er een fout ergens in de code. Zit er me nu suf op te zoeken.no votes
-
18-04-2012, 22:55 #14
Mja, los daarvan vind'k het ook niet echt een goed idee om een theme te maken waarvan je persé slechts 4 posts wil laten zien. Je posts zijn dan ook aangepast naar woord-lengte? Want ik vermoed dat de reden dat je slechts 4 posts wil, iets met je layout te maken heeft?
no votes
