Ich entwickle ein WooCommerce Plugin kurz ist ein Plugin, das es dem Shop-Manager ermöglicht, Blöcke "Magento-Stil" für jede Produktseite zu definieren.Wordpress - add_filter | apply_fitlers
Beispiel: Für das Produkt X möchte ich den zugehörigen Produktblock sichtbar machen und für das Produkt Y möchte ich nur den Upsells Block und den Featured Products Block anzeigen.
Ich versuche einen Filter zu definieren, damit der Entwickler einige benutzerdefinierte Blöcke haken kann.
Ich habe die Klasse WC_Block_Loader
Weicht diese Codezeile in der Konstruktor-Methode hat:
$this->blocks = array()
$this->blocks = apply_filters('woocommerce_blocks_register', $this->blocks);
var_dump($this->blocks); //empty
Im functions.php des Themas Stück Code unten:
function hook_my_custom_wc_blocks ($blocks) {
$blocks['WC_My_Custom_Block'] = get_template_directory().'/includes/blocks/block-my-custom-block.php';
return $blocks;
}
add_filter('woocommerce_blocks_register', 'hook_my_custom_blocks', 10, 1);
Ich denke das Problem ist, dass ich das Plugin mit der "plugins_loaded" Aktion initiiere und die functions.php läuft nach diesem Haken, aber ich bin mir nicht sicher.
Irgendwelche Vorschläge? Danke und fröhliche Programmierung.