Skip to content

Instantly share code, notes, and snippets.

@swoboda
swoboda / woocommerce-cart-hooks.php
Created November 6, 2017 17:38
Default WooCommerce Cart Hooks and how to remove them. Complete visual WooCommerce cart hooks guide: https://www.wpdesk.net/blog/woocommerce-cart-hooks/
<?php
/**
* Default WooCommerce Cart Hooks (just an example, do not copy)
*
*/
add_action( 'woocommerce_cart_collaterals', 'woocommerce_cross_sell_display' );
add_action( 'woocommerce_cart_collaterals', 'woocommerce_cart_totals', 10 );
add_action( 'woocommerce_proceed_to_checkout', 'woocommerce_button_proceed_to_checkout', 20 );
@swoboda
swoboda / woocommerce-checkout-hooks-add.php
Created October 24, 2017 11:19
woocommerce-checkout-hooks-add.php
<?php
// Do NOT include the opening php tag
add_action( 'woocommerce_before_checkout_form', 'wpdesk_checkout_hello', 5 );
/**
* Add "hello" text before WooCommerce checkout form
*
*/
function wpdesk_checkout_hello() {
echo '<h2>Hello there! Happy shopping!</h2>';
@swoboda
swoboda / woocommerce-checkout-hooks.php
Created October 24, 2017 11:06
woocommerce-checkout-hooks.php
<?php
/**
* Default WooCommerce Checkout Hooks (just an example, do not copy)
*
*/
add_action( 'woocommerce_before_checkout_form', 'woocommerce_checkout_login_form', 10 );
add_action( 'woocommerce_before_checkout_form', 'woocommerce_checkout_coupon_form', 10 );
add_action( 'woocommerce_checkout_order_review', 'woocommerce_order_review', 10 );
add_action( 'woocommerce_checkout_order_review', 'woocommerce_checkout_payment', 20 );
@swoboda
swoboda / acf-category-description.php
Created October 11, 2017 07:28
acf-category-description.php
<?php
// Do NOT include the opening php tag
add_action( 'woocommerce_archive_description', 'wpdesk_category_description', 5 );
/**
* Add ACF Category Description to WooCommerce
*
*/
function wpdesk_category_description() {
$queried_object = get_queried_object();
@swoboda
swoboda / search-template-post-type.php
Created September 26, 2017 08:17
search-template-post-type.php
<?php
add_filter( 'template_include', 'wpdesk_search_template' );
// Docs Live Search Template
function wpdesk_search_template( $template ) {
global $wp_query;
$post_type = get_query_var('post_type');
if( $wp_query->is_search && $post_type == 'docs' ) {
@swoboda
swoboda / functions.php
Last active September 11, 2017 08:35
Make all WooCommerce products to be sold individually
<?php
// Do NOT include the opening php tag
// Make all products to be sold individually
add_filter( 'woocommerce_is_sold_individually', '__return_true' );
@swoboda
swoboda / vat_number_emails_en.php
Created August 22, 2017 14:41
vat_number_emails_en.php
<?php
// Do NOT include the opening php tag shown above. Copy the code shown below.
add_filter( 'woocommerce_email_order_meta_keys', 'wpdesk_vat_number_display_email' );
/**
* VAT Number in emails
*/
function wpdesk_vat_number_display_email( $keys ) {
$keys['VAT Number'] = '_vat_number';
return $keys;
@swoboda
swoboda / vat_number_admin_en.php
Created August 22, 2017 14:40
vat_number_admin_en.php
<?php
// Do NOT include the opening php tag shown above. Copy the code shown below.
add_action( 'woocommerce_admin_order_data_after_billing_address', 'wpdesk_vat_number_display_admin_order_meta', 10, 1 );
/**
* Display VAT Number in order edit screen
*/
function wpdesk_vat_number_display_admin_order_meta( $order ) {
echo '<p><strong>' . __( 'VAT Number', 'woocommerce' ) . ':</strong> ' . get_post_meta( $order->id, '_vat_number', true ) . '</p>';
}
@swoboda
swoboda / vat_number_checkout_en.php
Created August 22, 2017 14:35
vat_number_checkout_en.php
<?php
// Do NOT include the opening php tag shown above. Copy the code shown below.
add_action( 'woocommerce_after_order_notes', 'wpdesk_vat_field' );
/**
* VAT Number in WooCommerce Checkout
*/
function wpdesk_vat_field( $checkout ) {
echo '<div id="wpdesk_vat_field"><h2>' . __('VAT Number') . '</h2>';
@swoboda
swoboda / yourtheme-woocommerce-cart-cart-shipping.php
Created August 22, 2017 09:00
yourtheme-woocommerce-cart-cart-shipping.php
<?php
/**
* Shipping Methods Display
*
* In 2.1 we show methods per package. This allows for multiple methods per order if so desired.
*
* This template can be overridden by copying it to yourtheme/woocommerce/cart/cart-shipping.php.
*
* HOWEVER, on occasion WooCommerce will need to update template files and you
* (the theme developer) will need to copy the new files to your theme to