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.