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;
}