• Resolved nullkohol

    (@nullkohol)


    Hallo Vendidero,

    gibt es bei Germanized die M?glichkeit, einen eigenen Versandstatus zu definieren? Uns fehlt sowas wie “wird abgeholt” oder “übergeben” oder so. Wahrscheinlich würden wir sogar mehrere definieren wollen. Ich habe weder in deiner tollen Doku noch bei den Shipment-Hooks das Passende gefunden. Bei WC selbst geht es ja über Filter in der functions.php, aber nur zum Bestellungsstatus und nicht zum Versandstatus (der kommt ja auch von euch, wenn ich das richtig verstanden habe).

    Danke im Voraus für die Unterstützung

Viewing 8 replies - 1 through 8 (of 8 total)
  • Plugin Author vendidero

    (@vendidero)

    Hi,

    ja, klar, das geht auch speziell für Sendungen. S.a.: https://gist.github.com/dennisnissle/3015bc04d7cd159353098b2b0dabc0aa

    Grü?e

    Thread Starter nullkohol

    (@nullkohol)

    Super, vielen Dank! Wieso habe ich das nicht gefunden?

    Es hat zur H?lfte geklappt … ich sehe jetzt meine neuen Status in dem Dropdown. Aber wenn ich einen von denen ausw?hle und dann unter Sendung auf “speichern” klicke, springt der Status zurück auf “Entwurf”.

    Was fehlt mir noch?

    Plugin Author vendidero

    (@vendidero)

    Hi,

    das kann ich dir pauschal nicht sagen – wie genau hast du deinen Status denn registriert/benannt?

    Grü?e

    Thread Starter nullkohol

    (@nullkohol)

    Ich habe gleich zwei registriert:

    // eigene Versandstatus definieren
    add_filter( 'woocommerce_gzd_shipment_statuses', function( $statuses ) {
    $statuses['will_be_picked_up'] = 'Wird abgeholt';
    $statuses['handed_out'] = 'Ausgeh?ndigt';
    return $statuses;
    } );

    Ich dachte, das sei ein Dictionary/Array und ich h?nge einfach weitere Werte rein. Muss ich dabei was Bestimmtes beachten?

    Ich habe jetzt nochmal rumprobiert und denke, es liegt an den Keys:

    // eigene Versandstatus definieren
    add_filter( 'woocommerce_gzd_shipment_statuses', function( $statuses ) {
    $statuses['gzd-custom-status1'] = 'Wird abgeholt';
    $statuses['gzd-custom-status2'] = 'Ausgeh?ndigt';
    $statuses['gzd-custom-status-test'] = 'Test';
    return $statuses;
    } );

    Die ersten beiden gehen, der dritte (Test) nicht. Hast du irgendwo dokumentiert, wie man die Status-Keys benennen muss, damit es geht?

    Andere Frage: Eigentlich wollten wir mit diesen eigenen Status das rote “Nicht Versandt”-Flag loswerden ?? Das scheint aber so nicht zu funktionieren. K?nnen wir das irgendwie auch selbst definieren? Also dass auch unser eigener Status “Ausgeh?ndigt” ein “grüner” (weil abgeschlossener) Status ist?

    Plugin Author vendidero

    (@vendidero)

    Hi,

    ja, der Status ist zu lang für das DB-Feld. Ich werde das im Rahmen des n?chsten Updates mal erweitern, da das vllt. zu knapp bemessen ist.

    Also dass auch unser eigener Status “Ausgeh?ndigt” ein “grüner” (weil abgeschlossener) Status ist?

    Du m?chtest, dass der Status als “versandt” für die Sendung gilt? Oder wie meinst du das? Dafür existiert ebenfalls ein Filter, der es dir erm?glicht deinen custom status da zu registrieren: https://github.com/vendidero/woocommerce-germanized-shipments/blob/master/includes/wc-gzd-shipment-functions.php#L1010

    Grü?e

    Thread Starter nullkohol

    (@nullkohol)

    Du hast echt an alles gedacht ?? Ich bin jetzt so weit gekommen, dass mein Status als “Versandt” angezeigt wird:

    // eigene Versandstatus definieren
    add_filter( 'woocommerce_gzd_shipment_statuses', function( $statuses ) {
    $statuses['gzd-in-pickup'] = 'Wird abgeholt';
    $statuses['gzd-handed-out'] = 'Ausgeh?ndigt';
    return $statuses;
    } );

    // eigene Versandstatus als final markieren
    add_filter( 'woocommerce_gzd_shipment_sent_statuses', function( $sent_statuses ) {
    $sent_statuses[] = 'handed-out';
    return $sent_statuses;
    } );

    Im Filter sehe ich, dass du zwei Status als “sent” annimmst: shipped und delivered. Aber in der Anzeige gibt es dann einen Unterschied, beide sind grün, aber einer hei?t “Versandt” und der andere “Geliefert”. Wieso hei?t meiner dann am Ende auch “Versandt” und nicht “Ausgeh?ndigt”?
    In der Funktion “wc_gzd_get_shipment_order_shipping_statuses” sehe ich auch einen “no shipping needed” Status. Der taucht aber bei mir im Frontend nicht auf. So ganz verstehe ich das System wohl noch nicht.

    Plugin Author vendidero

    (@vendidero)

    Hi,

    es gibt da durchaus Unterschiede:

    1. Versandstatus einer einzelnen Sendung – die Sendung kann als versandt oder geliefert gelten. Eine gelieferte Sendung bedingt aber, das sie ebenfalls versandt wurde.
    2. Versandstatus der gesamten Bestellung: Je Bestellung kann es mehrere Sendungen geben – ob eine Bestellung als versandt gilt oder z.B. geliefert, h?ngt also von den einzelnen Sendungen und/oder noch nicht versandten Bestellpositionen ab. über den Filter woocommerce_gzd_shipment_order_shipping_status kannst du den Versandstatus der gesamten Bestellung ggf. anpassen. Da gibt es explizit eine “Sonderbehandlung” für den Sendungsstatus “geliefert”.

    Im Zweifel müsstest du dich dann doch etwas tiefer in den Code einarbeiten denke ich – das geht hier schon recht weit über unseren Support hinaus.

    Grü?e

    Thread Starter nullkohol

    (@nullkohol)

    Danke für deine Unterstützung ??

    Ich habe mir die Sache mit den Bestellungsstatus ein bisschen angeschaut, bin aber aus manchen Eigenschaften, die da verwendet werden, nicht ganz schlau geworden. ich bin noch neu in WooCommerce. Au?erdem hatte ich immer wieder Probleme mit der Argumentanzahl der Filter.

    Daher belasse ich es jetzt erstmal bei meinen Sendungsstatus und mache hier weiter, wenn ich das ganze System Woo besser kennen gelernt habe.

Viewing 8 replies - 1 through 8 (of 8 total)
  • You must be logged in to reply to this topic.