Ankerlink an den Anfang der Seite
bag 1230527 1920
Bildquelle: Pixabay, diddi4
Generic filters
Filter by Kategorien

Der Beitrag, geschriebem am 5. Juni 2018, ist schon etwas älter und könnte womöglich nicht mehr aktuell sein

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 );

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

Hinweis: Name und E-Mail-Adresse (beides optional, da alle Kommentare moderiert werden) werden dauerhaft gespeichert. Über dieses Formular kann jeder Zeit die Löschung persönlicher Daten oder Kommentare angefordert werden; die Anfrage wird nicht veröffentlicht und nach der Bearbeitung gelöscht. IP-Adressen, die mit Kommentaren gespeichert werden, werden nach zwei Monaten automatisch gelöscht.

Ihre Nachricht wird möglicherweise zur Spam-Prüfung an OpenAI (USA) weitergeleitet. Weitere Informationen finden Sie in unserer Datenschutzerklärung.