Developers

  1. Modify Css / Styles / Layout
    1. Layout (Menu Items, General)
    2. Frontend Css
    3. Admin Css
  2. Templates
    1. Pages
      1. page.order.php
      2. page.confirm-order.php
      3. page.processing.php
      4. page.thankyou.php
      5. page.cancelled.php
      6. page.purchase-history.php
    2. Order
      1. itemised.php
      2. summary.php
      3. transaction_details.php
    3. Global
      1. orderinfo.php (Widget)
      2. openingtimes.php (Widget)
      3. additives.php (Widget)
      4. navigation.list.php (Widget)
      5. navigation.dropdown.php (Widget)
      6. search.php (Widget)
      7. totals.php (Widget)
      8. pickup_choice.php (Mixed)
      9. login.php (Module)
      10. profile.register.php (Module)
      11. profile.update.php (Module)
      12. pages.pickup_note.php (Module)
      13. formfields.inputs.php (Module)
      14. formfields.values.php (Module)
    4. Cart
      1. cart.container.php
      2. cart.shopclosed.php
      3. cart.empty.php
      4. cart.pickup_note.php
      5. cart.checkout_button.php
      6. cart.empty_cart_button.php
      7. cart.minimum_order.php
      8. minicart.php
    5. Loop (Menu Items)
      1. header.php
      2. no_results.php
      3. posts.title.php
      4. posts.thumbnail.php
      5. posts.prices.php
      6. posts.content.php
      7. posts.permalink.php
      8. additives.php
      9. pagination.php
      10. theme-wrapper.php
    6. Search Results
      1. search.php
    7. Single Menu Item
      1. single.php
    8. functions.php
  3. Filters, Actions, Functions
    1. Global WPPizza functions
    2. WPPizza options (Filter)
    3. Currency (Filter)
    4. After every order (Action)
    5. Getting orders (Function)
  4. Constants
    1. Admin Name
    2. Admin Menu Icon
    3. SORT_ITEMS_AS_ADDED
    4. SINGLE_PERMALINK_VAR
    5. WIDGET_CSS_CLASS
    6. PLAINTEXT_LINE_LENGTH
    7. ADMIN_{CONSTANTS}
    8. DEV_{CONSTANTS}
    9. INSTALL_{CONSTANTS}
    10. TRANSACTION_{CONSTANTS}
  5. Codesnippets
    1. Create your own sales report
    2. Order history - todays orders
    3. Email/Print templates
    4. Email Subject Line
    5. Add attachment to email
    6. On order status update
    7. Unconfirmed orders
    8. Customise order id
    9. Changing post type arguments
    10. Gateway filter frontend
    11. Users previous orders
    12. Dynamic menu item prices
    13. Update prices in bulk
    14. Prices output loop
    15. Pickup opening times
    16. Checkout Formfields
    17. Additional validation function
  6. Extensions / Gateways
    1. Add Ingredients
    2. Autoprint
    3. Confirm | Reject | Notify
    4. Coupons and Discounts
    5. Cross-Sells
    6. Delivery By Post/Zipcode
    7. Goodcom Printer
    8. Mailinglists
    9. Pdf Invoices
    10. Preorder
    11. Gateway - Stripe

5.15.Pickup opening times

Change opening times when pickup is selected

example to have different openingtimes if a user chooses pickup (pickup must of course be enabled to start off with)

A) set the opening times when the customer has selected pickup (requires WPPizza v3.18.10+)

Note: The example using the ‘wppizza_shop_is_open’ filter mentioned here previously may run to late in some circumstances. Updating your implementation as outlined below is advised.

@param: array
@return: array

example

/*** 
	get/set the opening hours depending on whether it's pickup or delivery  
	which opens/closes the shop as appropriate
****/
add_filter('wppizza_filter_options_openingtimes', 'myprefix_filter_pickup_opening_times');
function myprefix_filter_pickup_opening_times($openingtimes){

	/* 
		check current selection is pickup or delivery and if pickup, override the opening times
	*/
	$is_pickup = wppizza_is_pickup();//returns bool true|false
	if($is_pickup){
		
		/* mondays */
		$openingtimes['opening_times_standard'][1]['open'] = '10:00';
		$openingtimes['opening_times_standard'][1]['close'] = '12:00';
		/* tuesdays */
		$openingtimes['opening_times_standard'][2]['open'] = '10:00';
		$openingtimes['opening_times_standard'][2]['close'] = '12:00';
		/* wednesdays */
		$openingtimes['opening_times_standard'][3]['open'] = '10:00';
		$openingtimes['opening_times_standard'][3]['close'] = '12:00';
		/* thursdays */
		$openingtimes['opening_times_standard'][4]['open'] = '10:00';
		$openingtimes['opening_times_standard'][4]['close'] = '12:00';
		/* fridays */
		$openingtimes['opening_times_standard'][5]['open'] = '10:00';
		$openingtimes['opening_times_standard'][5]['close'] = '12:00';
		/* saturdays */
		$openingtimes['opening_times_standard'][6]['open'] = '10:00';
		$openingtimes['opening_times_standard'][6]['close'] = '12:00';
		/* sundays */
		$openingtimes['opening_times_standard'][0]['open'] = '10:00';
		$openingtimes['opening_times_standard'][0]['close'] = '12:00';	
			
		/* unset - if required - your custom opening times */ 
		$openingtimes['opening_times_custom'] = array();
			
		/* unset - if required - any closing times */
		$openingtimes['times_closed_standard'] = array();		
	}

/*
	return opening times as filtered (or not as the case may be)
*/	
return $openingtimes;	
}

B) force pickup/delivery toggle to be visible using “wppizza_filter_force_pickup_toggle_display” filter

ensure the toggle is always visible as – by default – it would not be displayed if the shop is shut so there would be no way to choose a different delivery method

@param: void
@return: bool

example:

/* always show pickup/delivery option */
add_filter('wppizza_filter_force_pickup_toggle_display', 'myprefix_pickup_openingtimes_force_toggle');
function myprefix_pickup_openingtimes_force_toggle(){
	return true;	
}

Note: Using “WPPizza Preorder” plugin

If you are using the “WPPizza Preorder” plugin while also applying different opening times for pickup as outlined above, you must also ensure you have *NOT* enabled the “Caching” option in the options settings page of the “Preorder” plugin.

Suggest Edit

documentor id 5