Ich möchte meine eigene Funktion zu einem bereits vorhandenen Hook hinzufügen. Hier ist die Definition:
do_action( 'woocommerce_before_single_product_summary' );
Die ursprüngliche Funktion, die es verwendet, sieht folgendermaßen aus:
add_action(
'woocommerce_before_single_product_summary',
'woocommerce_template_single_title',
5
);
Da ich weder das Thema noch die Woocommerce-Vorlagen berühren möchte, möchte ich meine eigene Funktion mit niedrigerer Priorität und einigen 3 zusätzlichen Parametern wie folgt hinzufügen:
add_action( 'woocommerce_before_single_product_summary', 'my_own_function', 6, 3);
Schon seit
do_action( 'woocommerce_before_single_product_summary' );
hat keine zusätzlichen Eingabeargumente wie:
do_action( 'woocommerce_before_single_product_summary', $args1, $args2, $args3 );
dann wird Ihr Aktionsrückruf immer ohne Eingabeargumente aufgerufen.
function my_own_function ()
{
// ...
}
Sie müssen es also auf andere Weise erhalten: z. durch Funktionen, Klassen oder durch Tippen auf Werte von anderen Hooks.
Aber Sie können die Priorität sicherlich ändern:
add_action( 'woocommerce_before_single_product_summary', 'my_own_function', 5 );
Wenn Sie es ändern können, z. in Ihrem Kinderthema, um:
do_action( 'woocommerce_before_single_product_summary', $args1, $args2, $args3 );
dann können Sie verwenden:
add_action( 'woocommerce_before_single_product_summary', 'my_own_function', 5, 3 );
mit dem Rückruf als:
function my_own_function ( $args1, $args2, $args3 )
{
// ... you have now access to $args1, $args2, $args3
}