• Opgelost Dimono

    (@dimono)


    Voor mijn website heb ik een vrij ingewikkelde Query code(zie onder) nodig. Alles werkte naar behoren tot het installeren van de WPML plugin (kan toeval zijn). Nu krijg ik op mijn “product” pagina in een categorie waar 11 posts zijn al de melding:

    Allowed memory size of 134217728 bytes exhausted (tried to allocate 523800 bytes) in ………./wp-includes/cache.php on line 113

    Pagina’s met minder posts (en zelfde code) geven geen problemen.

    Ik heb de volgende stappen al ondernomen:

    Toegevoegd aan wp-config: define(‘WP_MEMORY_LIMIT’, ’96M’);(hoger bijvoorbeeld 256m werkt niet en in firefox krijg ik een melding over een server reset oid)
    Deactiveren van alle plugins werkt ook niet

    Op de indexpagina, waar grotendeels dezelfde code stond (laat alleen max 3 posts zien) heb ik deze in een aparte php file gezet en geinclude. Daar is het probleem wel opgelost.

    Het weghalen van de betreffende code lost het probleem ook op.
    Ik ben geen php programmeur en was al heel trots zo ver gekomen te zijn. Nu loop ik toch vast.

    Het betreffende probleem zit hem in onderstaande code, wie kan hier naar kijken?

    <?php
    if (is_category( )) {
      $cat = get_query_var('cat');
      $category = get_term_by('id',$cat, 'category');
      if ($category) {
        $args=array(
          'category__in' => array($category->term_id),
          'post_type' => 'product'
          );
        $my_query = null;
        $my_query = new WP_Query($args);
        if( $my_query->have_posts() ) {
    
          while ($my_query->have_posts()) : $my_query->the_post(); ?>
    
            <div id="product-preview"><?php if (in_category('tweedehands')) { ?><img src="<?php bloginfo('template_directory'); ?>/images/icons/tiny-icon-occasions.png" class="occasion" title="occasion" alt="occasion" >
    							<?php } ?>
                         <a href="<?php the_permalink() ?>"><p class="product-name"><?php the_title(); ?></p></a>
                        	<div class="news-post_img">
                                   <a href="<?php the_permalink() ?>"><?php if ( has_post_thumbnail()) : ?>
    
       <?php the_post_thumbnail('thumbnail') ?>
    
       </a>
    
     <?php endif; ?>
    
    						</div>
    
                            <div id="preview">
                        	<p><?php
                    the_terms( $post->ID, 'merk' ,  'Merk(en): ' );
                        ?></p>
                        	<p>Categorie(ën):<br /> <?php
    $categories = get_the_category();
    $separator = ' ';
    $output = '';
    if($categories){
    	foreach($categories as $category) {
    		$output .= '<a href="'.get_category_link( $category->term_id ).'" title="' . esc_attr( sprintf( __( "View all posts in %s" ), $category->name ) ) . '">'.$category->cat_name.'</a><br>'.$separator;
    	}
    echo trim($output, $separator);
    }
    ?></p>
          </div>
          <a href="<?php the_permalink() ?>"><img src="<?php bloginfo('template_directory'); ?>/images/bullet.png" class="floatRight" title="" alt="more" > </a>
           </div>
           <?php
          endwhile;
        }
      wp_reset_query();  // Restore global post data stomped by the_post().
      }
    }
    ?>
1 reactie aan het bekijken (van in totaal 1)
  • Thread starter Dimono

    (@dimono)

    Opgelost, code lijkt achteraf wel goed.. (bepaalde dingen konden wel iets efficiënter.

    Problemen bleven in 1 categorie.. veranderen van de slug (bij categorieën) hiervan heeft mijn probleem opgelost. Heel vreemd, misschien een cache probleem oid. Hopelijk blijft het nu wel werken.

    Jammer dat het me bijna een dag gekost heeft terwijl de oplossing zo simpel was. Wat het probleem nu daadwerkelijk is geweest weet ik niet.

1 reactie aan het bekijken (van in totaal 1)
  • Het onderwerp ‘Query code zorgt voor 'exhausted memory' al bij 11 posts’ is gesloten voor nieuwe reacties.