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

6.6.Delivery By Post/Zipcode

Shortcodes

If you wish to display the delivery by post/zip-code selection in a different location

  • [wppizza_dbp]

If using google maps option: displaying the *dashboard map widget* showing your orders elsewhere:

  • Shortcode: [wppizza_dbp_map]
  • Available attributes:
    • orders – orders to display according to status set. default: “new,delivered”. Available: “new,acknowledged,on_hold,processed,delivered,rejected,refunded”
    • polling – interval, in minutes, to query for new orders
    • fullscreen – omit (default), if the map should *not* be full screen.
    • statustoggle – if set, adds a button to each order displayed that allows an order to be marked as delivered
  • Example: [wppizza_dbp_map orders="new,delivered" polling="1" fullscreen="1" statustoggle="1"]

Note: If you use this particular shortcode in the frontend somewhere, you most likely want to put this on a page that has been (password) protected !

 
 


 
 

Examples that will NOT require the “Delivery By Post/Zipcode” plugin

There are certain – relatively simple – situations where the “Delivery By Post/Zipcode” plugin would be unnecessary or indeed complete overkill if you want to achieve some of the below outcomes

Ask customer to select a delivery area/postcode

If you do NOT have DIFFERENT delivery prices for different postcodes or delivery areas but ONLY want to check that your customer has at least selected from a list of selectable delivery area/postcodes

  • goto: wppizza->orderform
  • rename/relabel one of the custom fields
  • check enabled
  • check required
  • choose type->select
  • enter a comma separated list of your delivery areas or postcodes.
  • save

Same site, multiple branches

If you want to use the same site for multiple branches and/but want to send the order email to the associated branches email address depending on the branch selected by the customer

  • goto: wppizza->orderform
  • rename/relabel one of the custom fields (let’s say ccustom6 – hover your mouse over the “enable” button to get the relevant id)
  • check enabled
  • check required
  • choose type->select
  • enter a comma separated list of your branches (let’s say “Branch 1, Branch 2, Branch 3” – without the quotes).
  • save

Then add the following filter to your [child] themes functions.php (see here if you don’t know about wordpress filters/actions).

add_filter( 'wppizza_filter_email_settings', 'myprefix_filter_email_settings', 10, 3 );
function myprefix_filter_email_settings($email_settings, $recipient, $order) {
	
	// only filter emails to the shop
	if($recipient === 'shop'){
		//set shop email depending on branch selected 
		if($order['sections']['customer']['ccustom6']['value'] === 'Branch 1'){//Branch 1
			$email_settings['AddAddress'][0]['email'] = '[email protected]';
		}
		elseif($order['sections']['customer']['ccustom6']['value'] === 'Branch 2'){//Branch 2
			$email_settings['AddAddress'][0]['email'] = '[email protected]';
		}
		/* and so forth */
		else{
			/*
				all others - set as required here along the lines above, i.e 
				$email_settings['AddAddress'][0]['email'] = '[email protected]';
				or simply don't set anything / ignore 
				to send to the default email address set for the shop in your order settings
			*/
		}
	}

return $email_settings ;
}

PS: If you do NOT need different shop email addresses to send the order to but only want to allow the customer to select from the available branches, you can simply omit the filter above entirely

 
 


 
 

Troubleshooting

Cart empty on checkout when changing post/zipcode

If the above is the case, the required column in the database was not created. This might be due to some permission issue somewhere at time of installation or an outdated mysql version. If this is the case, try the following

  • goto WPPizza -> Post/Zipcodes
  • click on “Settings” [Tab at the top]
  • enable “Verify table column”
  • save

Typically this solves the issue but get in contact if it does not, but make sure you enable debug first and check your debug.log for any related entries

Suggest Edit

documentor id 5