Skip to content

Instantly share code, notes, and snippets.

View dennisnissle's full-sized avatar

Dennis Nissle dennisnissle

View GitHub Profile
@dennisnissle
dennisnissle / functions.php
Created July 4, 2024 10:14
Force using VAT VIES SOAP API instead of REST API
<?php
add_filter( 'woocommerce_gzdp_vat_validator_use_soap', '__return_true' );
@dennisnissle
dennisnissle / functions.php
Created June 26, 2024 07:02
Use Dienstleistungen as lexoffice category for EU sales
<?php
add_filter( 'storeabill_external_sync_lexoffice_voucher_item_category_id', 'my_child_adjust_lexoffice_category_id', 10, 3 );
function my_child_adjust_lexoffice_category_id( $category, $item, $invoice ) {
$categories = array(
'eu_revenues' => '7c112b66-0565-479c-bc18-5845e080880a',
'dienstleistungen' => '8f8664a0-fd86-11e1-a21f-0800200c9a66',
);
@dennisnissle
dennisnissle / functions.php
Created June 17, 2024 13:25
Use a different GLS contact id based on shipment data
<?php
add_filter( 'woocommerce_gzd_gls_label_api_request', function( $request, $label ) {
if ( $shipment = $label->get_shipment() ) {
$country = $shipment->get_country();
if ( 'AT' === $country ) {
$request['Shipment']['Shipper']['ContactID'] = '12345';
}
}
@dennisnissle
dennisnissle / functions.php
Created May 21, 2024 15:41
Use Fremdleistungen § 13b instead of Innergemeinschaftliche Lieferung as lexoffice category
<?php
add_filter( 'storeabill_external_sync_lexoffice_voucher_item_category_id', 'my_child_adjust_lexoffice_category_id', 10, 3 );
function my_child_adjust_lexoffice_category_id( $category, $item, $invoice ) {
$categories = array(
'reverse_charge' => '9075a4e3-66de-4795-a016-3889feca0d20',
'fremdleistungen' => '380a20cb-d04c-426e-b49c-84c22adfa362',
);
@dennisnissle
dennisnissle / functions.php
Created May 10, 2024 11:39
Disable Germanized Shipments Integration mini Plugin
<?php
/**
* Plugin Name: Disable Germanized Shipments
* Plugin URI: https://www.vendidero.de/woocommerce-germanized
* Description: Disables the Germanized Shipments integration
* Version: 1.0.0
* Author: vendidero
* Author URI: https://vendidero.de
*
* @author vendidero
@dennisnissle
dennisnissle / functions.php
Created May 7, 2024 10:29
Display WooCommerce Appointments data for invoice items by using [document_item_reference data="woocommerce_appointments"]
<?php
add_filter( 'storeabill_shortcode_get_document_item_reference_data', function( $result, $atts, $reference, $shortcodes ) {
if ( 'woocommerce_appointments' === $atts['data'] && class_exists( 'WC_Appointment_Data_Store' ) ) {
$item = $reference->get_object();
if ( is_a( $item, 'WC_Order_Item_Product' ) ) {
$appointment_ids = WC_Appointment_Data_Store::get_appointment_ids_from_order_and_item_id( $item->get_order_id(), $item->get_id() );
foreach ( $appointment_ids as $appointment_id ) {
@dennisnissle
dennisnissle / functions.php
Created April 23, 2024 09:13
Move pickup location fields to order review wrapper in classic checkout
<?php
add_action( 'woocommerce_checkout_before_order_review', function() {
$fields = \Vendidero\Germanized\Shipments\PickupDelivery::register_classic_checkout_fields( array( 'order' => array() ) );
foreach( $fields['order'] as $key => $field ) {
woocommerce_form_field( $key, $field, wc()->checkout()->get_value( $key ) );
}
}, 20 );
@dennisnissle
dennisnissle / functions.php
Last active July 2, 2024 12:42
Disable registering pickup location fields
<?php
add_filter( 'woocommerce_gzd_shipments_enable_pickup_delivery', '__return_false' );
@dennisnissle
dennisnissle / functions.php
Created March 20, 2024 15:04
Register a custom min age
<?php
add_filter( 'woocommerce_gzd_age_verification_min_ages', function( $min_ages ) {
$min_ages[14] = '>= 14 Jahre';
return $min_ages;
} );
@dennisnissle
dennisnissle / functions.php
Created February 28, 2024 09:51
Force allow label third-party email transmission
<?php
add_filter( 'woocommerce_gzd_shipment_label_supports_third_party_email_notification', '__return_true' );
add_filter( 'woocommerce_gzd_shipment_return_label_supports_third_party_email_notification', '__return_true' );