Category: Admin
sticky headers general solution
Add Custom Fields to Products.php
/** * Merchatura – Simple per-product custom fields (v4.2) ✅ Conditional Logic added * * Adds per-field conditional rules that work: * – In admin (inline rule builder under each field) * – On the product page (hide/show live) *…Continue reading
Enable Payment on Account
/** * WooCommerce: Role-based + Guest payment methods UI + logic * * – Adds a “Payment Methods” tab under WooCommerce > Settings. * – Shows a matrix of User Roles (down the left) vs Active Payment Methods (across the…Continue reading
Roles.php
// ✅ Add “Roles” menu for shop_manager_-_reseller_admin add_action(‘admin_menu’, function () { $user = wp_get_current_user(); if (!in_array(‘shop_manager_-_reseller_admin’, (array) $user->roles)) return; add_menu_page( ‘Create Customer Role’, ‘Roles’, ‘manage_product_terms’, ‘create-customer-role’, ‘render_custom_role_form’, ‘dashicons-groups’, 56 ); }); // ✅ Render form and role list function render_custom_role_form()…Continue reading
Shop Manager – Reseller Admin.js
// ✅ Add required capabilities to shop_manager_-_reseller_admin add_action(‘init’, function () { $role = get_role(‘shop_manager_-_reseller_admin’); if ($role) { $caps = [ ‘manage_product_terms’, ‘edit_roles’, ]; foreach ($caps as $cap) { if (!$role->has_cap($cap)) { $role->add_cap($cap); } } } }); // ✅ Add Categories…Continue reading
Register New Users as Customers
function set_default_user_role_customer($user_id) { $user = new WP_User($user_id); // Check if the user has no roles (which can happen in Multisite) if (empty($user->roles)) { $user->set_role(‘customer’); } } add_action(‘user_register’, ‘set_default_user_role_customer’); function remove_subscriber_role() { remove_role(‘subscriber’); } add_action(‘init’, ‘remove_subscriber_role’);Continue reading
Shop Manager – View Only.js
add_action(‘admin_menu’, function () { $user = wp_get_current_user(); if (!in_array(‘shop_manager_-_view_only’, (array) $user->roles)) { return; } global $menu, $submenu; // Top-level menu whitelist $allowed_top = [ ‘index.php’, // Dashboard ‘woocommerce’, // WooCommerce ‘users.php’, // Users ‘woocommerce-marketing’, // Marketing ]; foreach ($menu as…Continue reading
Historic Formidable Forms Klaviyo Website Form Submitted Event API Calls Trigger
if ( ! defined( ‘ABSPATH’ ) ) { exit; } add_action( ‘cli_init’, function () { if ( ! defined( ‘RD_FF_API_KLAVIYO_PRIVATE_KEY’ ) || ! RD_FF_API_KLAVIYO_PRIVATE_KEY ) { WP_CLI::error( ‘RD_FF_API_KLAVIYO_PRIVATE_KEY is not defined.’ ); } WP_CLI::add_command( ‘rd ff-klaviyo-backfill’, function ( $args, $assoc_args…Continue reading
Add required Klaviyo Headers to Formidable Forms “Send API Data” Requests & Create Placeholders
if ( ! defined( ‘ABSPATH’ ) ) { exit; } // Retrieve Klaviyo Private Key add_filter( ‘frm_api_request_args’, function ( $arg_array, $args ) { if ( ! defined( ‘RD_FF_API_KLAVIYO_PRIVATE_KEY’ ) || ! RD_FF_API_KLAVIYO_PRIVATE_KEY ) { return $arg_array; } if ( empty(…Continue reading