Man kann Felder von affiliate-toolkit in WooCommerce ganz bequem verwenden oder diese per Hook für Filter automatisch nach WooCommerce übertragen.
Felder per Shortcode anzeigen
Wenn du die Felder im Artikel anzeigen möchtest, kannst du den klassischen Shortcode verwenden ohne der Produkt-ID. Das Plugin erkennt automatisch, dass es sich um ein importiertes AT-Produkt handelt.
Du kannst den Shortcode-Generator zum erzeugen des Shortcodes verwenden. Du musst nur den ID-Parameter entfernen.
Zeigt automatisch das richtige Feld/Vorlage von affiliate-toolkit an:
Felder per Hook übertragen
Benötigt man die Felder im WooCommerce-Produkt, muss man die Felder von AT nach Woo per Hook übertragen. Du benötigst die Felder z.b. für einen Filter. Möchtest du die Felder nur anzeigen, kannst du die Shortcodes von oben verwenden.
Damit du die Felder übertragen kannst, musst du die Feldnamen in WooCommerce kennen. Wir verwenden hierfür ACF-Felder, du kannst dafür auch ein anderes Plugin verwenden.
Wir haben uns für einen Hook entschieden da du dadurch mehr Freiraum als bei einer fix programmierten Lösung hast. Der Hook mag vielleicht etwas kompliziert wirken aber das solltest du leicht hinbekommen.
ACF-Felder anlegen
Die Felder Preis und Produktgruppe haben wir als normale Textfelder angelegt und sollen später durch AT gefüllt werden.
Hook für ACF-Felder anlegen
Damit wir nun die Felder von AT nach WooCommerce übertragen zu können, müssen wir einen Hook von AT verwenden.
Wir verwenden dafür den Hook „atkp_product_updated„. Du musst beim laden der Daten beachten, dass alle Felder von affiliate-toolkit das Prefix „aktp_product_“ haben. Die ACF-Felder kannst du mit dem Namen aus den Feldgruppen ansprechen.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 |
function atkp_product_updated_callback2($product_id) { require_once ATKP_PLUGIN_DIR.'/includes/atkp_product.php'; $woo_product = atkp_product::get_woo_product($product_id); $woocommerce_product_id = $woo_product->ID; //Hier laden wir das Feld von affiliate-toolkit - $saleprice enthält den Feldwert $saleprice = ATKPTools::get_post_setting( $product_id, ATKP_PRODUCT_POSTTYPE.'_salepricefloat'); $productgroup = ATKPTools::get_post_setting( $product_id, ATKP_PRODUCT_POSTTYPE.'_productgroup'); //Hier setzen wir das Feld in WooCommerce - $saleprice enthält den Feldwert ATKPTools::set_post_setting( $woocommerce_product_id, 'preis', $saleprice); ATKPTools::set_post_setting( $woocommerce_product_id, 'produktgruppe', $productgroup); //Extra: Taxonomien in WooCommerce übertragen ATKPTools::check_taxonomy($woocommerce_product_id, 'productgroup_taxonomy', $productgroup); } add_action('atkp_product_updated', 'atkp_product_updated_callback2'); |
Du kannst den Hook um beliebige Felder erweitern. Kopiere dazu einfach die markierten Zeilen und passe den Feldnamen an.
Wenn du eine Taxonomie in WooCommerce automatisch aktualisieren möchtest, kannst du unsere Funktion „ATKPTools::check_taxonomy“ verwenden. Du findest ein Beispiel oben unter „Extra“.
Standard-Felder von affiliate-toolkit
In dieser Tabelle findest du alle Felder welche von affiliate-toolkit standardmäßig zur Verfügung gestellt werden. Benutzerdefinierte Felder heißen übrigens wie das Namensfeld. Alle Felder von affiliate-toolkit müssen wie im Beispiel oben mit „ATKP_PRODUCT_POSTTYPE“ geprefixt werden.
Feldname | Beschreibung |
_title | Titel |
_description | Beschreibung |
_ean | EAN |
_isbn | ISBN |
_brand | Marken |
_productgroup | Produktgruppe |
_releasedate | Veröffentlichungsdatum |
_manufacturer | Hersteller |
_author | Autor |
_numberofpages | Anzahl der Seiten eines Buchs |
_features | Die Features |
_asin | Die ASIN bzw. eindeutige ID |
_smallimageurl | Bildurl klein |
_mediumimageurl | Bildurl medium |
_largeimageurl | Bildurl groß |
_producturl | Produkturl |
_addtocarturl | Warenkorb-URL |
_customerreviewsurl | Kundenbewertung-URL |
_rating | Bewertungen |
_reviewcount | Anzahl der Bewertungen |
_listpricefloat | Listenpreis |
_shippingfloat | Versandkosten |
_availability | Verfügbarkeit |
_isprime | Ist Prime |
Weitere Fragen zum Hook
Du hast weitere Fragen zu diesem Hook? Nutze die Kommentarfunktion oder stelle deine Frage in unserer Facebook Gruppe.