Skip to content

Instantly share code, notes, and snippets.

View Auke1810's full-sized avatar
🏠
Working from home

Auke Jongbloed Auke1810

🏠
Working from home
View GitHub Profile
@Auke1810
Auke1810 / alter-descr-item
Created August 25, 2022 06:36
Strip   from description attributes in the woocommerce product feed manager from wpmarketingrobot.com
<?php
function alter_feed_item( $attributes, $feed_id, $product_id ) {
// Strip &nbsp; from description attributes
$attributes['description'] = str_replace('&nbsp;', ' ', $attributes['description']);
// IMPORTANT! Always return the $attributes
return $attributes;
}
@Auke1810
Auke1810 / gist:ba1f71311df86b19b580ff81c5216d25
Last active April 20, 2022 07:02
This is an example how to derive Taxonomy data from Wordpress and add this to the product feed created with the Woocommerce product feed manager from wpmarketingrobot.com You will need to edit the variabels in order to make it more readable for your taxonomy.
/**
*
*/
function wppfm_add_taxonomy_data_to_feed( $data, $feed_id, $product_id ) {
// Get the product_badges taxonomy data.
$taxonomyName = 'product_taxonomy_data'; // use the name of your own taxonomy
$taxonomyData = wp_get_post_terms( $product_id, $taxonomyName );
if ( $taxonomyData ) {
@Auke1810
Auke1810 / uppercase_words_title.php
Last active November 24, 2021 17:26
Uppercase the first character of each word in the title attribute
<?php
function string_uppercase_title( $attributes, $feed_id, $product_id ) {
// this line changes the title data and removes the " <prompt> " string
$attributes['title'] = ucwords(strtolower($attributes['title']));
// IMPORTANT! Always return the $attributes
return $attributes;
}
@Auke1810
Auke1810 / changecsvseparator.php
Created October 17, 2021 09:41
CHange the separator in the custom CSV builder
<?php
// change the separator in the custom CSV builder from wpmarketingrobot
function change_csv_separator() {
return ';'; //return the separator you want.
}
add_filter( 'wppfm_csv_separator', 'change_csv_separator' );
@Auke1810
Auke1810 / remove-products-from-queue.php
Last active September 13, 2021 07:53
remove all products in array from feed.
<php?
function remove_some_products_from_the_queue( $products, $feed_id ) {
// Products to remove from the feed
$products_to_remove = array(
'20890',
'20891',
'20972',
);
<?php
// Price including or excluding tax
function tax_price( $data, $feed_id, $product_id ) {
global $product, $woocommerce;
// Only add this to the feed with id 58
// change the number to the feed you want to affect the prices.
// OR remove the if statement if you want to affect all feeds
if($feed_id == 1){
@Auke1810
Auke1810 / remove_list_products.php
Created August 26, 2021 08:38
exclude list of products from feed with the use of an array
<?php
function exclude_list_from_feed( $attributes, $feed_id, $product_id ) {
//Array with the numbers from products we want te exclude
$exclude_array = array(13608, 13632, 16123, 16405);
if (in_array($attributes['id'], $exclude_array,) == false )
{
// Return the $attributes from products not in the exclude list
@Auke1810
Auke1810 / shortcodes_unique_identifiers.php
Last active March 9, 2021 09:37
Get GTIN or MPN values from products added to products by our product feed manager and create shortcodes to use on website
<?php
// MPN shortcode function
function wppfm_brand_shortcode() {
// get MPN value.
//$r = get_post_meta( $post->ID, 'wppfm_product_brand', true );
$r = get_post_meta( get_the_ID(), 'wppfm_product_brand', true );
// return MPN
return $r;
@Auke1810
Auke1810 / roundprice.php
Last active March 8, 2022 05:48
In this example we changed the price attribute and rounded the price with the round() function.
<?php
// Round the price
function round_price( $data, $feed_id, $product_id ) {
// round price.
$round_price = round($data['price'], 2);
// Store the rounded price in the feed price element.
$data['price'] = $round_price;
@Auke1810
Auke1810 / wppfm_xml_element_attribute
Last active June 10, 2020 11:15
Filternaam: wppfm_xml_element_attribute Drie parameters: attribute_value: dit is de standaard waarde die dus gewijzigd kan worden. Is standaard een empty string. xml_key: dit is de naam van het xml element, dus deze parameter kan worden gebruikt om het gewenste xml element te vinden xml_value: de waarde van het xml element. Dus om een attribute …
Function add_attribute_to_xml_tag( $attribute_value, $xml_key, $xml_value ) {
if ( 'bottles' === $xml_key ) {
return 'size=”750 ml”';
} else {
return $attribute_value;
}
}
add_filter( 'wppfm_xml_element_attribute', 'add_attribute_to_xml_tag', 10, 3 );