2012-04-07 14 views
1

Ich versuche, diese Schleife zu tun, aber es wird unendlichwp_query in Endlosschleife

Ich brauche nur einige Ergebnisse auf <li> Tags zu zeigen. Ich bearbeite die loop.php, um dies zu tun und die Funktion if(function_exists('wp_custom_fields_search')) wp_custom_fields_search(); geben Sie einfach eine Form von einem Plugin, das ich erstellt hatte.

Können Sie mir dabei helfen?

<?php 
     $queryA = new WP_Query($args1); 
     $queryB = new WP_Query($args2); 

     $args1 = array (
     'orderby' => 'title', 
     'order' => 'ASC', 
     'category_name' => 'lojas', 
     'posts_per_page' => '-1', 
     ); 

     $args2 = array (
     'orderby' => 'title', 
     'order' => 'ASC', 
     'category_name' => 'gastronomia', 
     'posts_per_page' => '-1', 
     ); 


     if ($queryA->have_posts()) { 
      if(function_exists('wp_custom_fields_search')) wp_custom_fields_search(); 
      while($queryA->have_posts()) : $queryA->the_post(); 
       echo '<li>'; 
       echo '<span class="nome">'; 
       the_title(); 
       echo '</span>'; 
       echo '<span class="end">'; 
       echo get('endereco'); 
       echo '</span>'; 
       echo '<span class="tel">'; 
       echo get('telefone'); 
       echo '</span>'; 
       echo '</li>'; 
      endwhile; 
     } 


     if ($queryB->have_posts()) { 
      if(function_exists('wp_custom_fields_search')) wp_custom_fields_search('preset-1'); 
      while($queryB->have_posts()) : $queryB->the_post(); 
       echo '<li>'; 
       echo '<span class="nome">'; 
       the_title(); 
       echo '</span>'; 
       echo '<span class="end">'; 
       echo get('endereco'); 
       echo '</span>'; 
       echo '<span class="tel">'; 
       echo get('telefone'); 
       echo '</span>'; 
       echo '</li>'; 
      endwhile; 
     }  


    ?> 

Antwort

0

ich aus dem Code muss zugeben, ich nicht aus erster Hand sehen, was die unendliche Schleife verursachen könnte, jedoch können Sie drastisch Ihren Code reduzieren, die Sie Ihren Fehler finden könnte helfen:

$defaultArgs = array (
    'orderby' => 'title', 
    'order' => 'ASC', 
    'posts_per_page' => '-1', 
); 
$queries = array(
    array(array('category_name' => 'lojas'), NULL), 
    array(array('category_name' => 'gastronomia'), 'preset-1'), 
);  
$customFiledsSearch = function_exists('wp_custom_fields_search'); 
foreach ($queries as $query) 
{ 
    list($args, $param) = $query; 
    $wpQuery = new WP_Query($args + $defaultArgs); 
    if ($wpQuery->have_posts()) 
    { 
     if ($customFiledsSearch) 
     { 
      wp_custom_fields_search($param); 
     } 
     while ($wpQuery->have_posts()) : $wpQuery->the_post()) 
     { 
      echo '<li>', 
        '<span class="nome">', 
        the_title(); 
        '</span>', 
        '<span class="end">', 
        get('endereco'), 
        '</span>', 
        '<span class="tel">', 
        get('telefone'), 
        '</span>', 
       '</li>'; 

     } 
    } 
} 

Vielleicht hilft Ihnen das, Ihren Fehler zu finden.