WooCommerce Product-Basis-Link ermitteln

bitta 3211381 1920
Bild von Luisella Planeta Leoni auf Pixabay

In einer doch schon recht speziellen Anforderung war es erforderlich, von einem bekannten Produktslug auf den Produktlink zu kommen. Dafür braucht es den Basislink für WooCommerce-Produkte.

Der lässt sich über die WooCommerce-Permalink-Einstellungen ermitteln.

Enweder mit

$wc_options = get_option('woocommerce_permalinks');

oder

$wc_options = wc_get_permalink_structure();
Array
(
    [product_base] => /product
    [category_base] => product-category
    [tag_base] => product-tag
    [attribute_base] => 
    [use_verbose_page_rules] => 1
    [product_rewrite_slug] => /product
    [category_rewrite_slug] => product-category
    [tag_rewrite_slug] => product-tag
    [attribute_rewrite_slug] => 
)

Die Produktbasis ist also $wc_options['product_base'] . Dieser muss nun nur noch mit der Site-URL ergänzt werden, um als Ergebnis einen (selbst nicht aufrufbaren) Link in dieser Form zu liefern:

https://beispielsite.com/product/

function flxo_get_product_base_link() {
	$wc_options = get_option('woocommerce_permalinks');
	return trailingslashit( site_url() . $wc_options['product_base'] );
}

Ausgehend von dieser Funktion kann nun für jeden Produktslug (product_name) die URL ermittelt werden ( z.B. flxo_get_product_base_link() . $product_name ).

Bitte Kommentarfunktion nicht für Supportanfragen nutzen. Dem kann hier nicht entsprochen werden. Die Angabe einer E-Mail-Adresse und eines Namens ist nicht erforderlich. Einen (Spitz)-Namen zu nennen wäre aber doch nett.

Schreibe einen Kommentar

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

Hinweis: Sowohl angegebener Name als auch E-Mail-Adresse (beides ist optional, dafür werden alle Kommentare vor Veröffentlichung geprüft) werden dauerhaft gespeichert. Du kannst jeder Zeit die Löschung Deiner Daten oder / und Kommentare einfordern, direkt über dieses Formular (wird nicht veröffentlicht, und im Anschluss gelöscht), und ich werde das umgehend erledigen. – Mit hinterlassenen Kommentaren hinterlegte IP-Adressen werden nach zwei Monaten automatisch gelöscht

publicly queryable