Actions und Filter

Permalink Filter

B2B Market verfĂŒgt ĂŒber eine ganze Reihe von Filtern um die AusfĂŒhrung des Codes zu beeinflussen. Um eine bessere Übersicht zu gewĂ€hrleisten werden die Filter im folgenden nach AnwendungsfĂ€llen kategorisiert:

Tipp: Wenn ihr im Quellcode nach den gezeigten Filtern sucht, werdet ihr in der Regel auch schon einige Beispiele fĂŒr deren Verwendung finden.

Preiskalkulation

Mit diesen Filtern lÀsst sich die Preiskalkulation von B2B Market beeinflussen.

add_filter( 'bm_use_same_group', function(){
return 123; // group_id
} );

Damit lassen sich die Preise fĂŒr die automatischen Gruppen „Gast“ und „Kunde“ angleichen und mĂŒssen nur noch fĂŒr eine Gruppe gepflegt werden.

add_filter( 'bm_force_product_price', '__return_true' );

Dieser Filter gibt (falls hinterlegt) dem B2B Preis welcher im Produkt eingegeben wurde immer die höchste PrioritĂ€t und ĂŒberschreibt somit mögliche gĂŒnstigere Preise aus Kundengruppen oder Alle Kunden.

add_filter( 'bm_use_regular_for_group_price', '__return_true' );

Dieser kalkuliert die Gruppenpreise auf Basis des regulÀren Preises. Somit wird dieser nicht auf einen eventuell eingestellten Angebotspreis berechnet.

add_filter( 'bm_use_regular_for_group_price', '__return_false' );

Hiermit lĂ€sst sich der Angebotspreis fĂŒr die Kalkulation von Staffelpreisen ebenfalls mit einbeziehen.

add_filter( 'bm_check_product_type', funtion(){
return 'my-custom-product-type';
} );

Ermöglicht euch das HinzufĂŒgen von weiteren Produkttypen in B2B Market. Dieser Filter richtet sich vor allem an Entwickler die eigene Produkt-Typen registrieren und die Preisanpassungen des Plugins dort nutzen möchten.

Preisanzeige

Mit diesen Filtern lÀsst sich die Darstellung der Preise in B2B Market modifizieren und um weiteres Markup ergÀnzen.

add_filter( 'bm_original_price_html', function( $string, $product_id ) {
	$product = wc_get_product( $product_id );
	$string  = '<span class="b2b-single-price">[cheapest]</span>';

	if ( $product->is_type( 'variable' ) ) {
		$string = '<span class="b2b-single-price"><span class="b2b-price-prefix">' . __( 'From', 'b2b-market' ) . '</span> [cheapest]</span>';
	}
	return $string;
}, 10, 2 );

Dieser Filter ermöglicht es euch die Preisanzeige fĂŒr Preise die keinem Rabatt unterliegen anzupassen.

add_filter( 'bm_price_html', function( $string, $product_id ) {
	$product = wc_get_product( $product_id );
	$string  = '<span class="b2b-single-price">[cheapest]</span>';

	if ( $product->is_type( 'variable' ) ) {
		$string = '<span class="b2b-single-price"><span class="b2b-price-prefix">' . __( 'From', 'b2b-market' ) . '</span> [cheapest]</span>';
	}
	return $string;
}, 10, 2 );

Dieser Filter ermöglicht es euch die Preisanzeige fĂŒr Preise die einem Rabatt unterliegen anzupassen.

Registrierung

add_filter( 'b2b_hide_in_account', '__return_false' );

Mit diesem Filter lassen sich die Registrierungsfelder von B2B Market auch im Kundenkonto anzeigen.

add_filter( 'bm_registration_label', function(){
return 'Deine Gruppe';
} );

Mit diesem Filter kann das Wort „Kundengruppe“ in der Registrierung umbenannt werden.

add_filter( 'bm_account_fields', function( $fields ) {
	unset( $fields['b2b_company_registration_number'] );
	return $fields;
});

Hiermit können einzelne Felder aus der Registrierung von B2B Market entfernt werden (z.B. Handelsregisternummer)

add_filter( 'bm_required_checkout_customer_group', '__return_true' );

Hiermit lassen sich die Registrierungsfelder von B2B Market als Pflichtfelder umwandeln. Das ist z.B. bei reinen B2B-Shops sinnvoll.

add_filter( 'bm_rgn_is_modal', '__return_true' );

Hiermit lĂ€sst sich das JavaScript fĂŒr die konditionale Anzeige der Registrierungsfelder UST-ID und Handelsregisternummer außerhalb der Mein Konto Seite (z.B. innerhalb eines Modals) aktivieren).

Permalink Actions

B2B Market verfĂŒgt ĂŒber eine ganze Reihe von Actions um die AusfĂŒhrung des Codes zu beeinflussen. Um eine bessere Übersicht zu gewĂ€hrleisten werden die Filter im folgenden nach AnwendungsfĂ€llen kategorisiert:

Funktionsbereiche deaktivieren

remove_action( 'init', 'init_bm_calculation' );

Deaktiviert die Preiskalkulation und Anpassung von B2B Market

remove_action( 'init', 'init_bm_whitelist' );

Deaktiviert die Whitelist/Blacklist-Funktion von B2B Market

remove_action( 'init', 'init_bm_price_display' );

Deaktiviert die Preisnazeige-Funktionen von B2B Market