wmguk Posted September 7, 2012 Share Posted September 7, 2012 Hey Guys, I'm hand coding a display page and I keep getting this error: Parse error: syntax error, unexpected T_ENDWHILE in wpsc-grid_view.php on line 174 I cannot work out whats causing it..... Can anyone help please? <?php global $wp_query; $image_width = get_option('product_image_width'); $image_height = get_option('product_image_height'); ?> <div id="grid_view_products_page_container"> <?php wpsc_output_breadcrumbs(); ?> <?php do_action('wpsc_top_of_products_page'); // Plugin hook for adding things to the top of the products page, like the live search ?> <?php if(wpsc_display_categories()): ?> <?php if(get_option('wpsc_category_grid_view') == 1) :?> <div class="wpsc_categories wpsc_category_grid group"> <?php wpsc_start_category_query(array('category_group'=> 1, 'show_thumbnails'=> 1)); ?> <a href="<?php wpsc_print_category_url();?>" class="wpsc_category_grid_item <?php wpsc_print_category_classes_section(); ?>" title="<?php wpsc_print_category_name();?>"> <?php wpsc_print_category_image(45, 45); ?> </a> <?php wpsc_print_subcategory("", ""); ?> <?php wpsc_end_category_query(); ?> </div><!--close wpsc_categories--> <?php else:?> <ul class="wpsc_categories"> <?php wpsc_start_category_query(array('category_group'=> 1, 'show_thumbnails'=> get_option('show_category_thumbnails'))); ?> <li> <?php wpsc_print_category_image(32, 32); ?> <a href="<?php wpsc_print_category_url();?>" class="wpsc_category_link <?php wpsc_print_category_classes_section(); ?>"><?php wpsc_print_category_name();?></a> <?php if(get_option('wpsc_category_description')) :?> <?php wpsc_print_category_description("<div class='wpsc_subcategory'>", "</div>"); ?> <?php endif;?> <?php wpsc_print_subcategory("<ul>", "</ul>"); ?> </li> <?php wpsc_end_category_query(); ?> </ul> <?php endif; ?> <?php endif; ?> <?php if(wpsc_display_products()): ?> <?php if(wpsc_is_in_category()) : ?> <div class="wpsc_category_details"> <?php if(get_option('show_category_thumbnails') && wpsc_category_image()) : ?> <img src="<?php echo wpsc_category_image(); ?>" alt="<?php echo wpsc_category_name(); ?>" title="<?php echo wpsc_category_name(); ?>" /> <?php endif; ?> <?php if(get_option('wpsc_category_description') && wpsc_category_description()) : ?> <?php echo wpsc_category_description(); ?> <?php endif; ?> </div><!--close wpsc_category_details--> <?php endif; ?> <?php if(wpsc_has_pages_top()) : ?> <div class="wpsc_page_numbers_top group"> <?php wpsc_pagination(); ?> </div><!--close wpsc_page_numbers_top--> <?php endif; ?> <div class="product_grid_display group"> <?php while (wpsc_have_products()) : wpsc_the_product(); ?> <div class="product_grid_item product_view_<?php echo wpsc_the_product_id(); ?>"> <?php if(wpsc_the_product_thumbnail()) :?> <p class="prodtitle"><a href="<?php echo wpsc_the_product_permalink(); ?>" title="<?php echo wpsc_the_product_title(); ?>"><?php echo wpsc_the_product_title(); ?></a></p> <?php if(wpsc_the_product_thumbnail()) :?> <div class="item_image"> <a href="<?php echo wpsc_the_product_permalink(); ?>"> <img style="width:<?php echo get_option('product_image_width'); ?>px;height:<?php echo get_option('product_image_height'); ?>px" class="product_image" id="product_image_<?php echo wpsc_the_product_id(); ?>" alt="<?php echo wpsc_the_product_title(); ?>" src="<?php echo wpsc_the_product_thumbnail(); ?>" /> </a> </div><!--close imte_image--> <?php else: ?> <div class="item_no_image"> <a href="<?php echo wpsc_the_product_permalink(); ?>"> <img class="no-image" id="product_image_<?php echo wpsc_the_product_id(); ?>" alt="No Image" title="<?php echo wpsc_the_product_title(); ?>" src="<?php echo WPSC_CORE_THEME_URL; ?>wpsc-images/noimage.png" width="<?php echo get_option('product_image_width'); ?>" height="<?php echo get_option('product_image_height'); ?>" /> </a> </div><!--close item_no_image--> <?php endif; ?> <?php if (wpsc_category_name() == Sold ): ?> <a href="http://craftsbysteve.com/enquiry.php?prod_id=<?php echo wpsc_the_product_title(); ?>" title="Make enquiry about <?php echo wpsc_the_product_title(); ?>" alt="Make enquiry about <?php echo wpsc_the_product_title(); ?>" target="_blank"><img src="http://craftsbysteve.com/wp-content/uploads/2012/07/enquire.png"></a> <?php elseif (wpsc_category_name() != Sold ): ?> <?php if(wpsc_product_on_special()) : ?><span class="sale"><?php _e('Sale', 'wpsc'); ?></span><?php endif; ?> <?php if(get_option('show_images_only') != 1): ?> <div class="grid_product_info"> <?php if((wpsc_the_product_description() != '') && (get_option('display_description') == 1)): ?> <div class="grid_description"><?php echo wpsc_the_product_description(); ?></div> <?php endif; ?> <div class="price_container"> <?php if(wpsc_product_on_special()) : ?> <p class="pricedisplay <?php echo wpsc_the_product_id(); ?>"><?php _e('Old Price', 'wpsc'); ?>:<span class="oldprice"><?php echo wpsc_product_normal_price(); ?></span></p> <?php endif; ?> <p class="pricedisplay <?php echo wpsc_the_product_id(); ?>"><span id='product_price_<?php echo wpsc_the_product_id(); ?>' class="currentprice pricedisplay"><?php echo wpsc_the_product_price(); ?></span></p> <?php if(wpsc_show_pnp()) : ?> <p class="pricedisplay"><?php _e('Delivery', 'wpsc'); ?>:<span class="pp_price"><?php echo wpsc_product_postage_and_packaging(); ?></span></p> <?php endif; ?> </div><!--close price_container--> </div><!--close grid_product_info--> <div class="grid_more_info"> <?php if(get_option('display_moredetails') == 1) : ?> <div style="float: right; margin-top: -28px; width: 95px;"><a href="<?php echo wpsc_the_product_permalink(); ?>" class="more_details">More Details</a></div> <?php endif; ?> <div style="float: right; margin-top: -6px; width: 95px;"> <form class="product_form" enctype="multipart/form-data" action="<?php echo wpsc_this_page_url(); ?>" method="post" name="product_<?php echo wpsc_the_product_id(); ?>" id="product_<?php echo wpsc_the_product_id(); ?>" > <?php do_action ( 'wpsc_product_form_fields_begin' ); ?> <input type="hidden" value="add_to_cart" name="wpsc_ajax_action"/> <input type="hidden" value="<?php echo wpsc_the_product_id(); ?>" name="product_id"/> <?php if(get_option('display_variations') == 1) : ?> <?php /** the variation group HTML and loop */ ?> <?php if (wpsc_have_variation_groups()) : ?> <fieldset><legend><?php _e('Product Options', 'wpsc'); ?></legend> <div class="wpsc_variation_forms"> <table> <?php while (wpsc_have_variation_groups()) : wpsc_the_variation_group(); ?> <tr><td class="col1"><label for="<?php echo wpsc_vargrp_form_id(); ?>"><?php echo wpsc_the_vargrp_name(); ?>:</label></td> <?php /** the variation HTML and loop */?> <td class="col2"><select class="wpsc_select_variation" name="variation[<?php echo wpsc_vargrp_id(); ?>]" id="<?php echo wpsc_vargrp_form_id(); ?>"> <?php while (wpsc_have_variations()) : wpsc_the_variation(); ?> <option value="<?php echo wpsc_the_variation_id(); ?>" <?php echo wpsc_the_variation_out_of_stock(); ?>><?php echo wpsc_the_variation_name(); ?></option> <?php endwhile; ?> </select></td></tr> <?php endwhile; ?> </table> </div><!--close wpsc_variation_forms--> </fieldset> <?php /** the variation group HTML and loop ends here */?> <?php endif; ?> <?php endif ?> <?php if((get_option('display_addtocart') == 1) && (get_option('addtocart_or_buynow') !='1')) :?> <?php if(wpsc_product_has_stock()) : ?> <input type="submit" value="<?php _e('Add To Basket', 'wpsc'); ?>" name="Buy" class="wpsc_buy_button" id="product_<?php echo wpsc_the_product_id(); ?>_submit_button"/> <?php else : ?> <p class="soldout"><?php _e('Sorry, sold out!', 'wpsc'); ?></p> <?php endif ; ?> <?php endif; ?> <div class="wpsc_loading_animation"> <img title="Loading" alt="Loading" src="<?php echo wpsc_loading_animation_url(); ?>" /> <?php _e('Updating Basket...', 'wpsc'); ?> </div><!--close wpsc_loading_animation--> <?php do_action ( 'wpsc_product_form_fields_end' ); ?> </form></div> </div><?php endif; ?> <!--close grid_more_info--> <?php if((get_option('display_addtocart') == 1) && (get_option('addtocart_or_buynow') == '1')) :?> <?php echo wpsc_buy_now_button(wpsc_the_product_id()); ?> <?php endif ; ?> <?php endif; ?> </div><!--close product_grid_item--> <?php if((get_option('grid_number_per_row') > 0) && ((($wp_query->current_post +1) % get_option('grid_number_per_row')) == 0)) :?> <div class="grid_view_clearboth"></div> <?php endif ; ?> <?php endwhile; ?> <?php if(wpsc_product_count() == 0):?> <p><?php _e('There are no products in this group.', 'wpsc'); ?></p> <?php endif ; ?> </div><!--close product_grid_display--> <?php if(wpsc_has_pages_bottom()) : ?> <div class="wpsc_page_numbers_bottom group"> <?php wpsc_pagination(); ?> </div><!--close wpsc_page_numbers_bottom--> <?php endif; ?> <?php endif; ?> <?php do_action( 'wpsc_theme_footer' ); ?> </div><!--close grid_view_products_page_container--> Quote Link to comment Share on other sites More sharing options...
Jessica Posted September 7, 2012 Share Posted September 7, 2012 In the future, don't post your entire code, just the relevant part. When you get an error, it's important to look at the line before it as well. Line 170 is <?php endif ; ?> You have an errant space. I don't know if that's what's causing it. Your code has too many open/close tags and poor indentation to see if there's really a matching while. You have three opening whiles and three endwhiles but it's hard to tell if they all line up because of the erratic indenting. Quote Link to comment Share on other sites More sharing options...
PFMaBiSmAd Posted September 7, 2012 Share Posted September 7, 2012 Your code is missing two endif; keywords and you also have one in your code that is missing the ;. Since there's no way we could possibly know where those missing endif; were intended to be, you would need to go through the code and make sure that every if/else/endif is where it should be. Unfortunately, the WP style of coding doesn't lend itself to troubleshooting simple syntax problems. You have more characters taken up by the excessive opening and closing php tags and the alternative php closing keywords than the amount of html in the file. It's a mess of excessive syntax that makes it harder to see what the actual code and html is. Quote Link to comment Share on other sites More sharing options...
Jessica Posted September 7, 2012 Share Posted September 7, 2012 Your code is missing two endif; keywords and you also have one in your code that is missing the ;. I saw the one missing the ; but I was under the impression that the last line can ommit it when there are ?> tags. Is that only the last line in the *file* or the last in the section? Because if that was the error would the line number be up by 170 ish? Quote Link to comment Share on other sites More sharing options...
PFMaBiSmAd Posted September 7, 2012 Share Posted September 7, 2012 I guess (just tested) that the ; don't matter right before the ?> tag. Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.