PHP | WP-Plugins

WooCommerce Templates in einem Plugin überschreiben

bag 1230527 1920

Benutzerdefinierte WooCommerce-Templates lassen sich einfach in ein Theme auslagern. Doch nicht in allen Fällen hat man selbst die Kontrolle über die Dateien des verwendeten Themes. In diesem Fall können eigene WooCommerce-Templates auch in ein Plugin ausgelagert werden.

Nachfolgende Snippets veranlassen WooCommerce, dort verfügbare modifizierte Templates aus einem Plugin zu beziehen.

define( 'MYPLUGIN_WOO_TEMPATES_DIR', plugin_dir_path( __FILE__ ) . 'templates/' ); function myplugin_woo_template_replace( $located, $template_name, $args, $template_path, $default_path ) { if ( file_exists( MYPLUGIN_WOO_TEMPATES_DIR . $template_name ) ) { $located = MYPLUGIN_WOO_TEMPATES_DIR . $template_name; } return $located; } function myplugin_woo_get_template_part( $template, $slug, $name ) { if ( empty( $name ) ) { if ( file_exists( MYPLUGIN_WOO_TEMPATES_DIR . "{$slug}.php" ) ) { $template = MYPLUGIN_WOO_TEMPATES_DIR . "{$slug}.php"; } } else { if ( file_exists( MYPLUGIN_WOO_TEMPATES_DIR . "{$slug}-{$name}.php" ) ) { $template = MYPLUGIN_WOO_TEMPATES_DIR . "{$slug}-{$name}.php"; } } return $template; } add_filter( 'wc_get_template', 'myplugin_woo_template_replace', 10, 5 ); add_filter( 'wc_get_template_part', 'myplugin_woo_get_template_part', 10, 3 );

weiter schmökern

Schreibe einen Kommentar

Bitte Kommentarfunktion nicht für Supportanfragen nutzen. Dem kann hier nicht entsprochen werden.

Deine E-Mail-Adresse wird nicht veröffentlicht.