Még nincs semmi a kosárban
Gyakran használt snippetek
Egyedi feltétel a több fiók kezeléshez
add_filter('wc_szamlazz_account_conditions', function($conditions) {
$conditions[] = array(
"label" => 'Egyedi feltétel',
"options" => array(
'custom-condition-1' => __('Feltétel 1'),
'custom-condition-2' => __('Feltétel 2')
)
);
return $conditions;
});
add_filter('wc_szamlazz_account_conditions_values', function($conditions, $order) {
if($order->get_meta('_some_custom_field_1')) {
$conditions[] = 'custom-condition-1';
}
if($order->get_meta('_some_custom_field_2')) {
$conditions[] = 'custom-condition-2';
}
return $conditions;
}, 10, 2);
Termék attribútum feltétel több fiók kezeléshez
add_filter('wc_szamlazz_account_conditions', function($conditions) {
$attributes = wc_get_attribute_taxonomies();
$attribute_values = array();
foreach($attributes as $attribute) {
$taxonomy = wc_attribute_taxonomy_name( $attribute->attribute_name );
$terms = get_terms( array(
'taxonomy' => $taxonomy,
'hide_empty' => false,
));
foreach($terms as $term) {
$attribute_values[$taxonomy.':'.$term->term_id] = $attribute->attribute_name.' - '.$term->name;
}
}
$conditions[] = array(
"label" => 'Attribútum',
"options" => $attribute_values
);
return $conditions;
});
add_filter('wc_szamlazz_account_conditions_values', function($conditions, $order) {
$items = $order->get_items();
$attributes = array();
foreach($items as $item) {
$product = $item->get_product();
$attributes = $product->get_attributes();
if($attributes) {
foreach($attributes as $attribute) {
$conditions[] = $attribute['name'].':'.$attribute['options'][0];
}
}
}
return $conditions;
}, 10, 2);
Adószám módosítása
add_filter('wc_szamlazz_xml_adoszam', function($taxcode, $order){
if($custom_taxcode = $order->get_meta('_egyedi_adoszam_mezo_erteke')) {
$taxcode = $custom_taxcode;
}
return $taxcode;
}, 10, 2);
Extra megjegyzés feltétel
add_filter('wc_szamlazz_notes_conditions', function($conditions){
$conditions['currency'] = array(
'label' => 'Pénznem',
'options' => array(
'EUR' => 'Euró',
'HUF' => 'Forint'
)
);
return $conditions;
});
add_filter('wc_szamlazz_notes_conditions_values', function($conditions_values, $order){
$conditions_values['currency'] = $order->get_currency();
return $conditions_values;
}, 10, 2);
Számla nyelv módosítása
add_filter('wc_szamlazz_xml', function($szamla, $order){
$country = $order->get_shipping_country();
if($country != 'HU') {
$szamla->fejlec->szamlaNyelve = 'en';
}
return $szamla;
}, 10, 3);
Tétel áfakulcs felülírás
add_filter('wc_szamlazz_invoice_line_item', function($item){
if($item->megnevezes == 'Betétdíj') {
$item->afakulcs = 'ATK';
}
return $item;
}, 10);
Tétel megjegyzés módosítás
add_filter('wc_szamlazz_invoice_line_item', function($item, $order_item){
if($order_item->get_type() == 'line_item' && $product = $order_item->get_product()) {
$excerpt = $product->get_short_description();
$item->megjegyzes .= $excerpt;
}
return $item;
}, 10, 2);
Számla nyelv módosítás
add_filter( 'wc_szamlazz_get_order_language', function($lang_code, $order){
if($locale = $order->get_meta('_gtranslate_selected_language')) {
$locale = substr($locale, 0, 2);
if($locale && in_array($locale, array('hu', 'de', 'en', 'it', 'fr', 'hr', 'ro', 'sk', 'es', 'pl', 'cz'))) {
$lang_code = $locale;
}
}
return $lang_code;
}, 10, 2);
Tétel elrejtése
add_filter('wc_szamlazz_invoice_line_item', function($tetel, $order_item){
if(strpos($tetel->megnevezes, "Kedvezmény") !== false) {
return false;
}
return $tetel;
}, 10, 2);
Tétel hozzáadása a számlához
add_filter('wc_szamlazz_xml', function($szamla, $order){
$gift_cards = $order->get_items( 'pw_gift_card' );
if ( $gift_cards ) {
foreach ( $gift_cards as $gift_card ) {
$tetel = new WCSzamlazzSimpleXMLElement('<tetel></tetel>');
$tetel->addChild('megnevezes', 'Ajándékkártya kedvezmény');
$tetel->addChild('mennyiseg', 1);
$tetel->addChild('mennyisegiEgyseg', 'db');
$vat_rate = '27';
$total = $gift_card->get_amount();
$tetel = WC_Szamlazz()->calculate_item_prices(array(
'net' => $total,
'tax' => 0,
'vat_rate' => $vat_rate,
'negative' => true,
'rounding' => 0,
'tetel' => $tetel,
'order_item' => $gift_card
));
$tetel->addChild('megjegyzes', $gift_card->get_name());
$szamla->tetelek->appendXML($tetel);
}
}
return $szamla;
}, 10, 2);
Ebben a cikkben
Bővítmény információk
Verziószám: | 6.0.7 |
Legutóbb frissítve: | 2024. 11. 19. |
Változási napló: | Megtekint |