Skip to content

Instantly share code, notes, and snippets.

View webdados's full-sized avatar

Marco Almeida webdados

View GitHub Profile
@webdados
webdados / shop_as_client_autocomplete_results.php
Last active November 11, 2025 16:25
Filter results on Shop as Client PRO autocomplete search
<?php
add_filter( 'shop_as_client_autocomplete_results', function ( $results, $search_term ) {
// Loop through results and modify/remove them
foreach( $results as $key => $result ) {
// Get the type of result and its ID, as $key is sequencial and not related to the result
$result_value = explode( ':', $result['value'] );
switch( $result_value[0] ) {
case 'user':
$user_id = intval( $result_value[1] );
// example: remove this user from results if its role is 'subscriber'
@webdados
webdados / generate_proforma.php
Last active August 31, 2025 06:20
Automatically issue proforma invoice when order is on-hold (newly created).
<?php
/**
* Automatically issue proforma invoice when order is on-hold (newly created).
* https://invoicewoo.com/
* https://nakedcatplugins.com/product/invoicing-with-invoicexpress-for-woocommerce-pro/
*/
add_action(
// When the order is created via the checkout
'woocommerce_order_status_on-hold',
function( $order_id ) {
@webdados
webdados / swcbcf_conditional_cart_product_taxonomies.php
Created August 29, 2025 08:42
Add custom product taxonomies or attributes as conditional rules in Simple Checkout Fields Manager for WooCommerce
<?php
/**
* Add custom product taxonomies or attributes as conditional rules in Simple Checkout Fields Manager for WooCommerce
* https://nakedcatplugins.com/product/simple-custom-fields-for-woocommerce-blocks-checkout/
*/
// Example - Add "color" attribute
add_filter( 'swcbcf_conditional_cart_product_taxonomies', function( $taxonomies ) {
$taxonomies[ 'pa_color' ] = 'Color';
@webdados
webdados / relevanssi_content_boost.php
Last active August 7, 2025 07:17
Ignore post_content when searching with Relevanssi
<?php
// For all post types
add_filter( 'relevanssi_index_content', '__return_false' );
// For some post types
add_filter( 'relevanssi_post_content', function( $post_content, $post_object ) {
if ( in_array( $post_object->post_type, array( 'post', 'other_cpt' ) ) ) {
return '';
}
return $post_content;
@webdados
webdados / nakedcatplugins_lang_attr_highlight_color.php
Last active August 1, 2025 16:31
Change the highlight for the "Language Attribute for Container Blocks" WordPress plugin, using PHP
<?php
// Just return any color you want in a format supported by CSS
add_filter(
'nakedcatplugins_lang_attr_highlight_color',
function () {
return 'rgba(0, 150, 255, 0.8)'; // Blue instead of red
}
);
@webdados
webdados / shop_as_client_autocomplete_user_label.php
Created April 8, 2025 13:28
Change the label for the autocomplete user results no the Shop as Client for WooCommerce plugin
<?php
add_filter(
'shop_as_client_autocomplete_user_label',
function ( $label, $user_id, $display_name, $user_email ) {
// Get the user
$user = get_user( $user_id );
$name_to_display = html_entity_decode( $user->display_name, ENT_QUOTES, 'UTF-8' );
// Use same label but with $name_to_display as the name
return sprintf(
__( 'Cust. #%1$d: %2$s - %3$s', 'shop-as-client-pro' ),
@webdados
webdados / shop-as-client-fix-priority.php
Created March 27, 2025 10:58
Shop as Client - Change fields position/priority on the WooCommerce Checkout
<?php
/**
* Plugin Name: Shop as Client for WooCommerce - Fix field priority
* Description: Fix the field priority if messed up by another plugin
* Version: 1.0
* Author: PT Woo Plugins (by Webdados)
* Author URI: https://ptwooplugins.com/
* Requires at least: 5.8
* Tested up to: 6.8
* Requires PHP: 7.4
@webdados
webdados / kk_adjust_price.php
Last active March 19, 2025 14:15
Example usage of Feed KuantoKusta para WooCommerce add-on PRO adjust price filters
<?php
// Example 1
// Do not adjust any KuantoKusta price for products belonging to categories 90 and 333
add_filter( 'kuantokusta_adjust_product_regular_price', 'my_kk_adjust_price_filter', 10, 2 );
add_filter( 'kuantokusta_adjust_product_current_price', 'my_kk_adjust_price_filter', 10, 2 );
add_filter( 'kuantokusta_adjust_variation_regular_price', 'my_kk_adjust_price_filter', 10, 2 );
add_filter( 'kuantokusta_adjust_variation_current_price', 'my_kk_adjust_price_filter', 10, 2 );
function my_kk_adjust_price_filter( $price, $product ) {
$categories_not_to_adjust_price = array(
90,
@webdados
webdados / gateway_ifthen_blocks_payment_method_data.php
Created January 4, 2025 11:04
Change the ifthenpay gateway icon on the WooCommerce blocks checkout
<?php
// For ifthenpay Gateway use gateway_ifthen_blocks_payment_method_data
add_filter(
'gateway_ifthen_blocks_payment_method_data',
function ( $payment_method_data ) {
$payment_method_data['icon'] = '/whatever/path/apple-google-pix.svg';
$payment_method_data['icon_width'] = 78;
$payment_method_data['icon_height'] = 24;
return $payment_method_data;
}
<?php
// You need this plugin: https://nakedcatplugins.com/product/dpd-portugal-for-woocommerce/
// Change order status after issuing label
add_action( 'woo_dpd_portugal_label_issued', function( $order_id ) {
$order = wc_get_order( $order_id );
$order->update_status( 'completed', 'Order automatically set to Completed after issuing DPD label' );
} );