Cross-Sells

Widgets/Shortcode

Cross Sells – Shortcodes / Widget settings
 
 
title=’some title’ optional string Label above Cross Sells (Omit for default as set in Wppizza->Localization->Cross Sells)
max=’5′ optional integer Maximum number of x-sells results to retrieve (Omit for default as set in WPPizza->Order Settings->Cross Sells)
view=’3′ optional integer Number of cross sells / cross sells width to be displayed in initial view. (default: 3 if omitted).

Think of it as width being 1/3 of the container if set to 3, 1/4 of the container if set to 4 etc, regardless of number of total results
arrows=’1′ optional bool (0|1) Enable to display navigational left/right arrows next to results (if applicable) (Default : enabled|1 if omitted)
dots=’0′ optional bool (0|1) Enable to display navigational dots under any results (if applicable). (Default : disabled|0 if omitted)
infinite=’0′ optional bool (0|1) Enable for infinite scrolling/swiping of any results. (Default : disabled|0 if omitted)
no_additives=’0′ optional bool (0|1) Enable for infinite scrolling/swiping of any results. (Default : auto display if omitted)
breakpoints=’800:2,400:1′ optional str (comma/colon separated or 0 to remove all breakpoints) Set responsive breakpoints. (Default : 800:2,400:1 if omitted or empty)
Widget Only : Exclude from posts/pages optional str (comma separated integers) Set comma separated integers of pages/posts you do NOT want the widget to be displayed on
Examples
 
[wppizza_xsells title='some title' max='5' view='3' arrows='1' dots='1' infinite='0' no_additives='1' breakpoints='600:2,400:1']
– Set title to “some title”
– Display (up to) 5 results
– 3 results initially visible (Note, if there are fewer than 3 results, each one will still only take up the space of 1/3rd of the container)
– Show arrows (if more results than initially visible)
– Show dots (if more results than initially visible)
– Disable infinite scrolling
– Suppress any additives
– If container is <=600px wide show only 2 in initial view/box, each taking up 50% of the container | if container is <=400px wide show only 1 in initial view/box, each taking up 100% of the container
[wppizza_xsells]
this would be the same as
[wppizza_xsells title='/*set in localization*/' max='/*as set in options*/' view='3' arrows='1' dots='0' infinite='0' no_additives='0' breakpoints='800:2,400:1']
– Set title as set in WPPizza->Localization->Cross Sells
– Max results as set in WPPizza->Order Settings->Cross Sells
– 3 results initially visible
– Show arrows (if more results than initially visible)
– No dots
– No infinite scrolling
– Additives shown if applicable
– If container is <=800px wide show only 2 in initial view/box, each taking up 50% of the container | if container is <=400px wide show only 1 in initial view/box, each taking up 100% of the container

Filters to alter the behaviour of the WPPizza cross-sell display

wppizza_xsells_filter_slick_parameters

The “WPPizza Cross-Sell” extension utilises the “Slick” Carousel to display the cross-sell items. The filter below allows you to alter the settings according to your requirements and the options available

For a full list of available parameters please refer to http://kenwheeler.github.io/slick/

@param: array(parameters)
@return: array(filtered parameters)

example:

add_filter('wppizza_xsells_filter_slick_parameters', 'my_slick_parameters');
function my_slick_parameters($slick_parameters){
	
	/*	
		the following defaults are being set in the plugin by default
					
		$slick_parameters['dots'] = false;
		$slick_parameters['arrows'] = true;
		$slick_parameters['infinite'] = false;
		/* default 3 slides */
		$slick_parameters['slidesToShow'] = 3 ;
		$slick_parameters['slidesToScroll'] = 3 ;
		$slick_parameters['responsive'] = array();
		/* under 800 px browser width, 2 slides only */
		$slick_parameters['responsive'][0]['breakpoint'] = 800;
		$slick_parameters['responsive'][0]['settings'] = array();
		$slick_parameters['responsive'][0]['settings']['slidesToShow'] = 2;
		$slick_parameters['responsive'][0]['settings']['slidesToScroll'] = 2;
		/* under 400 px browser width, 1 slide only */
		$slick_parameters['responsive'][1]['breakpoint'] = 400;
		$slick_parameters['responsive'][1]['settings'] = array();
		$slick_parameters['responsive'][1]['settings']['slidesToShow'] = 1;
		$slick_parameters['responsive'][1]['settings']['slidesToScroll'] = 1;

	*/

	/* example: enabling dots */
	$slick_parameters['dots'] = true;
	
	/* example: enabling infinite loop*/
	$slick_parameters['infinite'] = true;

	/* example: display 4 visible items (instead of the default 3)*/
	$slick_parameters['slidesToShow'] = 4 ;
	$slick_parameters['slidesToScroll'] = 4 ;

	/* example: setting only one breakpoint at 600 with 1 slide only */
	unset($slick_parameters['responsive']);/* first unset default breakpoints */
	$slick_parameters['responsive'][0]['breakpoint'] = 600;
	$slick_parameters['responsive'][0]['settings'] = array();
	$slick_parameters['responsive'][0]['settings']['slidesToShow'] = 1;
	$slick_parameters['responsive'][0]['settings']['slidesToScroll'] = 1;

return $slick_parameters ;
}

wppizza_xsells_filter_shortcode_atts

The Cross-Sells widget is – in essence – displayed by executing the following shortcode: [wppizza single='23,3' price_id='1,0' style='wppizza_xsells' showadditives='0' noheader='1' notags='1'] where “single” and “price_id” will determine which menu items and respective sizes to display. Although the ‘single’ and ‘price_id’ attributes are not filterable, *some* of the other display attributes – such as “currency_main”, “currency_price” , “image_prettyphoto” for example – can be used additionally if you would like to override some display settings. See https://docs.wp-pizza.com/shortcodes/?section=by-category for shortcode attributes

@param: array(default attributes)
@return: array(filtered parameters)

example:

add_filter('wppizza_xsells_filter_shortcode_atts', 'my_shortcode_atts');
function my_shortcode_atts($sc_attributes){
	
	/*	
		the following defaults are being set in the plugin by default
					
		$sc_attributes = array();
		$sc_attributes['style'] = 'wppizza_xsells';//uses set style in xsales plugin settings
		$sc_attributes['showadditives'] = '0';//do not show additives under each item (as they will automatically be displayed combined underneath ifnecessary)
		$sc_attributes['noheader'] = '1';//
		$sc_attributes['notags'] = '1';//only use text from content, stripping all tags/elements 

	*/

	/* example: do not display main currency symbol even though it's is enabled for "normal" menu items in WPPizza->Layout*/
	$sc_attributes['currency_main'] = 0;
	
	/* example: do not display small currency symbol next to the price even though it's is enabled for "normal" menu items in WPPizza->Layout*/
	$sc_attributes['currency_price'] = 0;

	/* example: do NOT strip element tags from content */
	unset($sc_attributes['notags']);

return $sc_attributes;
}