Docly

cs_add_custom_json

Estimated reading: 1 minute

Beschrijving

Met dit filter kunt u eigen custom JSON toevoegen aan de API call richting Findock of Converse. Deze JSON zal toegevoegd worden aan de root van het JSON object.

Gebruik

				
					add_filter('cs_add_custom_json', 'custom_json', 10);				
			

Voorbeeld

Onderstaand voorbeeld loopt door Woocommerce items in een winkelwagen en controleert of er Destination ID’s gezet zijn. Als dat het geval is zullen deze worden meegegeven in de JSON call naar de CampaignSuite API.

				
					function custom_json()
{
    global $woocommerce;
    if ($woocommerce) {
        $items = $woocommerce->cart->get_cart();
        if ($items) {
            $jsonItems = [];
            foreach ($items as $values) {
                $price = get_post_meta($values['product_id'], '_price',true);
                $destination_id = get_post_meta($values['product_id'], '_sf_destination_id', true);
                if ($destination_id) {
                    $jsonItems[] = [
                        'DestinationId' => $destination_id,
                        'Amount' => $price
                    ];
                }
            }
            if ($jsonItems) {
                return [
                    'TransactionInfo' => [
                        'Gifts' => $jsonItems
                    ]
                ];
            }
        }
    }
    return [];
}