wppizza / markup / pages / page.confirm-order.php

The WPPizza confirmation page, if enabled in WPPizza -> Order Form Settings -> Confirmation Page, displaying a non-editable version of the current order and customer’s personal information to be submitted to the shop.

CSS Targeting

  • Wrapper div element id: #wppizza-order-wrap-confirmationpage (unique to this page)
  • Wrapper div element class: .wppizza-order-wrap (used on all pages)

if you simply want to edit some styles/layout (text-sizes, color, margins, paddings etc etc ) it is strongly recommended to use css instead of filters/actions. Please refer to “Modify Styles/Layout”

Filters available

apply filters by adding them to your child-theme’s functions.php (notes regarding functions.php)

  • filter name: wppizza_filter_pages_confirmorder_markup
    purpose: modify the html markup of the page as required

    @param: $markup array (array of markup elements)
    @param: $order_formatted array (array of order details)
    @return: array

    examples:

    
    
    add_filter('wppizza_filter_pages_confirmorder_markup', 'prefix_filter_pages_confirmorder_markup', 10, 2);
    function prefix_filter_pages_confirmorder_markup($markup, $order_formatted){
    
    	/* 
    		notes: 
    		use print_r($markup) to view array keys with their respective markup
    		use print_r($order_formatted) to view array containing order details
    		use global $wppizza_options; to access all options/settings/localization strings etc set in the plugin 
    	*/
    
    	/* example: adding a paragraph AFTER opening div element using standard php concatenation */
    	$markup['div_'] .= '<p>more text after opening div</p>'; 
    
    	/* example: adding a paragraph BEFORE opening div element  using standard php concatenation */
    	$markup['div_'] = '<p>more text before opening div</p>' . $markup['div_']; 
    
    	/* example: adding a paragraph AFTER opening div element using wppizza array_splice helper function */
    	$splice_before['myprefix_paragraph'] = '<p>more text after opening div</p>'; 
    	$markup = wppizza_array_splice($markup, $splice_before, 'div_' );
    
    	/* example: adding a paragraph BEFORE opening div element  using wppizza array_splice helper function */
    	$splice_after['myprefix_paragraph'] = '<p>more text before opening div</p>'; 	
    	$markup = wppizza_array_splice($markup, $splice_after, 'div_' , true);
    
    	/* example: removing wrapper div */
    	unset($markup['div_']);
    	unset($markup['_div']);
    
    	/* example: using actions of another plugin that by default outputs html to add it before the end of the form element */
    	ob_start(); # start buffering
    	do_action('other_plugin_output'); # run action of other plugin that outputs things
    	$buffer= ob_get_contents(); # capture buffer in variable
    	ob_end_clean(); # clean buffer			
    	$markup['_form'] = $buffer. $markup['_form']; # add buffered output before end of form
    
    return $markup;
    }
    		
  • filter name: wppizza_filter_confirmationpage_formfields
    purpose: modify the formfields

    @param: $array (array of formfield elements)
    @param: $order_formatted array (array of order details)
    @return: array

    examples:

    
    
    add_filter('wppizza_filter_confirmationpage_formfields', 'myprefix_filter_wppizza_confirmationpage_formfields', 10, 2);
    function myprefix_filter_wppizza_confirmationpage_formfields($formfields, $order_formatted){
    	/*
    		example: 
    		remove the 2nd formfield if any item in the cart belonged to the category with id 6
    	*/
    	$catId = 6 ;//the category id to search for
    	
    	$ffKey = 2 ;//which formfield to remove ( 1 to [n] - in this case the 2nd one ) 
    	
    	//search through all items in cart to see if any belongs to the category above
    	$search_for_category_id = array_search($catId, array_column($order_formatted['order']['items'], 'cat_id_selected'));
    	
    	// if any item belongs to category 6 , remove 2nd formfield
    	if($search_for_category_id !== false){
    		unset($formfields['wpppizza_confirm_'.$ffKey.'']);
    	}
    
    return $formfields;
    }
    		

Actions available

Actions should NOT output / echo / print anything, if you need to output any elements, use the filter provided (see above)

  • action: wppizza_confirmationpage
    purpose: run an action on wppizza confirmationpage

    @param: $order_results array (array of order parameters)
    @return: void

  • action: wppizza_confirmationpage_before_inputs
    purpose: run an action when there are additional “Confirmation Page – Formfields” enabled

    @param: $order_results array (array of order parameters)
    @return: void

  • examples: choose the most appropriate action hook from the list above, replacing wppizza_confirmationpage used for this example if necessary

    
    add_action('wppizza_confirmationpage', 'prefix_confirmationpage_myaction');
    function prefix_confirmationpage_myaction($order_results){
    
    	/* note: use print_r($order_results) to view order parameters */
    
    	/* 
    	#	run your code/action 
    	*/
    
    	/* do not output/echo anything - use the filter above instead if you need to*/
    return;
    }
    		

Editing files directly

ensure you have also read the “Modify/Edit Templates – Readme”

basepath: [plugin-path]/wppizza/templates/markup

filepath: [plugin-path]/wppizza/templates/markup/pages/page.confirm-order.php

Modules used in file

  • [basepath]/global/formfields.inputs.php
  • [basepath]/global/formfields.values.php
  • [basepath]/global/pages.pickup_note.php
  • [basepath]/order/itemised.php
  • [basepath]/order/summary.php