Produktname und Kaufnotizen auf der Seite „Meine Konten“ in WooCommerce anzeigen

Lesezeit: 3 Minuten

Benutzer-Avatar
Benutzer1731901

Um eine Pay-per-View-Seite für Trainingsvideos über WooCommerce zu erstellen, verwende ich das “Kaufbemerkungsfeld”, um nach Abschluss der Bestellung eine E-Mail mit einem Hyperlink zu einer Videoseite zu senden. Das funktioniert gut, aber wenn Sie auf die Seite “Meine Konten” gehen, können Kunden nicht zu “Meine Konten” gehen und alle ihre Links an einem Ort sehen, wie sie es mit “Verfügbare Downloads” können.

Ich möchte zwei zusätzliche Felder in der Tabelle der my-account.php-Seite anzeigen, „Produktname“ und „Kaufbeleg“. Aktuell gibt es in der Auswahlliste 4 Felder: „Bestellung“, „Versand“, „Summe“ und „Status“.

Da ich keine Versandoptionen verwende (nur ein virtuelles Produkt), möchte ich dieses Feld in den Produktnamen (Artikel) ändern. Wie erwähnt möchte ich das Feld “Kaufhinweise” hinzufügen (dies zeigt meine Video-URL nach Abschluss der Zahlung) Wichtig ist, dass dieses Feld “Kaufhinweise” nur angezeigt werden kann, wenn der Artikel abgeschlossen ist. Dies geschieht bereits auf der Seite order-details.php, aber ich möchte dies in der Tabelle auf der Seite my-accounts.php haben

Der aktuelle Code für dieses Kaufbemerkungsfeld im Feld order-details.php lautet:

// Show any purchase notes
            if ($order->status=='completed' || $order->status=='processing') :
                if ($purchase_note = get_post_meta( $_product->id, '_purchase_note', true)) :
                    echo '<tr class="product-purchase-note"><td colspan="3">' . apply_filters('the_content', $purchase_note) . '</td></tr>';
                endif;
            endif;

        endforeach;
    endif;

    do_action( 'woocommerce_order_items_table', $order );
    ?>

Kann mir jemand zeigen, was ich in my-account.php ändern muss, um diese 2 zusätzlichen Felder auf dieser Seite zu erreichen?

my-account.php Aufrufen zu mehreren anderen Vorlagen, die Sie benötigen my-orders.php. Legen Sie eine Kopie in Ihrem Themenordner ab, um sie updatesicher zu machen.

Ich gehe davon aus, dass Sie hier 1.6.6 verwenden, da sich die Seite Mein Konto von 2.0 geändert hat und die Lieferadresse nicht mehr enthält.

Entfernen Sie Zeile 50, die die Lieferadresse anzeigt. Diesen können Sie bearbeiten/ersetzen und Ihren Kaufbeleg mit folgendem Code aufrufen:

get_post_meta( $order->id, '_purchase_note', true)

dann können Sie den Produktnamen erhalten (aus Ihrer Frage gehe ich davon aus, dass Sie nur ein Produkt pro Bestellung haben?):

foreach($order->get_items() as $item) {
    $product_name = $item['name'];
}

dann einfach anrufen $product_name in einer zusätzlichen Spalte (Code in einer anderen Spalte kopieren/einfügen/bearbeiten)

  • Gibt es eine Möglichkeit, dasselbe mit den Bestellnotizen zu tun? Die, die der Administrator von der Bestellseite hinzufügen kann?

    – Erdnüsse

    24. September 2014 um 12:41 Uhr

  • @Peanuts wo möchten Sie die Bestellnotizen auf der Seite „Mein Konto“ anzeigen?

    – Ewout

    25. September 2014 um 13:57 Uhr

  • Zum Beispiel nach dem Hauptreiter mit den Bestelldetails

    – Erdnüsse

    26. September 2014 um 9:25 Uhr

  • Ich denke, das wird dir einige Hinweise geben: wpexplorer.com/woocommerce-order-notes-email. Sie können wahrscheinlich den Code aus der Funktion (natürlich nicht die Funktion selbst) ohne Probleme kopieren und einfügen. Möglicherweise müssen Sie ersetzen $post->ID durch $order->id.

    – Ewout

    26. September 2014 um 19:59 Uhr

  • hm, dieser Code scheint auf der Seite verstümmelt zu sein, das ist besser: gist.github.com/corsonr/8560038

    – Ewout

    26. September 2014 um 20:05 Uhr

1369430cookie-checkProduktname und Kaufnotizen auf der Seite „Meine Konten“ in WooCommerce anzeigen

This website is using cookies to improve the user-friendliness. You agree by using the website further.

Privacy policy