Skip to content

Instantly share code, notes, and snippets.

@jorpdesigns
jorpdesigns / add-cart-button-to-checkout.php
Created July 15, 2021 12:10
Snippet to add button on WooCommerce checkout page that takes you to cart page
<?php
add_action( 'woocommerce_before_checkout_form', 'return_to_cart_notice_button', 5 );
function return_to_cart_notice_button(){
if ( ! WC()->cart->is_empty() ) {
$message = __('Need to update your order? ', 'woocommerce');
$button_text = __('Go to Basket', 'woocommerce');
$cart_link = WC()->cart->get_cart_url();
wc_add_notice( $message . '<a href="' . $cart_link . '">' . $button_text . '</a>', 'notice' );
}
@jorpdesigns
jorpdesigns / add-continue-shopping-button.php
Created July 15, 2021 11:57
Snippet to add "Continue Shopping" button on WooCommerce Cart page
<?php
add_action( 'woocommerce_before_cart_table', 'add_continue_shopping_button_to_cart' );
function add_continue_shopping_button_to_cart() {
$shop_page_url = get_permalink( woocommerce_get_page_id( 'shop' ) );
if ( WC()->cart->get_cart_contents_count() > 0 ) {
echo '<div class="woocommerce-message">';
echo 'Would you like to add some more products? <a href="' . $shop_page_url . '" class="add-item button alt">Continue Shopping</a>';
echo '</div>';
}
@jorpdesigns
jorpdesigns / set-custom-login-limit.php
Created July 14, 2021 20:01
Snippet to set custom login limit
<?php
// Uses Loggedin – Limit Active Logins plugin: https://wordpress.org/plugins/loggedin/
add_filter( 'loggedin_reached_limit', 'custom_login_limits', 10, 3 );
function custom_login_limits($reached, $user_id, $count) {
// Check if user has custom limits and get value (fields added via ACF)
$unlimited_query = get_field('unlimited_logins', 'user_' . $user_id );
$user_custom_limit = get_field('logins_limit', 'user_' . $user_id );
@jorpdesigns
jorpdesigns / bypass-login-limit.php
Created July 14, 2021 19:59
Snippet to bypass login limit for selected ids
<?php
// Uses Loggedin – Limit Active Logins plugin: https://wordpress.org/plugins/loggedin/
add_filter( 'loggedin_bypass', 'loggedin_bypass_users', 5, 2 );
function loggedin_bypass_users( $bypass, $user_id ) {
// Check if user has unlimited logins (field added via ACF)
$unlimited_query = get_field('unlimited_logins', 'user_' . $user_id );
if ($unlimited_query) {
@jorpdesigns
jorpdesigns / gf-on-form-completion.php
Created July 14, 2021 19:54
Snippet to run function after successfully filling a Gravity Forms form
<?php
add_action( 'gform_after_submission_4', 'custom_function', 10, 2 ); // Replace 4 with your form id
function custom_function() {
// Do Something
}
?>
@jorpdesigns
jorpdesigns / gf-show-custom-value.php
Created July 14, 2021 19:53
Snippet to show custom value for Gravity Forms field on entry page
<?php
add_filter( 'gform_entry_field_value', function ( $value, $field, $entry, $form ) {
if ( '10' == $field->id && '4' == $form['id'] ) { // Replace 10 with your field id & 4 with your form id
$value = 'Custom Value';
}
return $value;
}, 10, 4 );
?>
@jorpdesigns
jorpdesigns / gf-exclude-hidden-fields.php
Created July 14, 2021 19:51
Snippet to exclude Gravity Forms hidden field from "all_fields" merge tag
<?php
add_filter( 'gform_merge_tag_filter', 'filter_all_fields', 10, 6 );
function filter_all_fields( $value, $merge_tag, $modifier, $field, $raw_value, $format ) {
if ( $merge_tag == 'all_fields' && $field->type == 'hidden' && $field->id == '10' ) { // Replace 10 with your hidden field id
return false;
} else {
return $value;
}
}
@jorpdesigns
jorpdesigns / gf-convert-html-entities.php
Created July 14, 2021 19:48
Snippet to convert HTML entities in Gravity Forms entries to formatted characters
<?php
// To use, add ':decode' to merge tag e.g. HTML Field:1:decode
add_filter( 'gform_merge_tag_filter', function ( $value, $merge_tag, $modifier, $field, $raw_value, $format ) {
if ( $merge_tag != 'all_fields' && $modifier == 'decode' ) {
$value = htmlspecialchars_decode( $value );
}
return $value;
@jorpdesigns
jorpdesigns / gf-add-value.php
Created July 14, 2021 19:45
Snippet to add custom value to Gravity Form field
<?php
add_filter( 'gform_save_field_value_4_10', 'custom_field_value', 10, 5 ); // form id = 4, field id = 10
function custom_field_value() {
return 'New Value';
}
?>
@jorpdesigns
jorpdesigns / gf-populate-checkboxes.php
Created July 14, 2021 19:43
Snippet to populate Gravity Forms checkbox field with values from custom post type
<?php
// Replace 8 with your form ID
add_filter( 'gform_pre_render_8', 'populate_activity_field' );
add_filter( 'gform_pre_validation_8', 'populate_activity_field' );
add_filter( 'gform_pre_submission_filter_8', 'populate_activity_field' );
add_filter( 'gform_admin_pre_render_8', 'populate_activity_field' );
function populate_activity_field( $form ) {
foreach ( $form['fields'] as &$field ) {