Support » Plugin: Germanized for WooCommerce » Double-Opt-In

  • Resolved DimaW

    (@dimaw)


    Hallo,

    wir haben heute mal auf einer Seite Germanized installiert um die Double-Opt-In Funktion zu nutzen.
    Eine Aktivierungsmail wird auch gesendet. Leider spuckt die Seite nur eine Meldung aus, dass der “Aktivierungscode nicht bekannt” sei. Egal ob ich den verbauten Textlink anklicke, oder den Link aus der Mail unten kopiere.

    Das Format sieht für mich auch nachvollziehbar aus: (…)/myaccount/?activate=1535458457:$P$BE8fw3JkPH3rd86uY3RlSEKBIaMjqB.&suffix=yes

    Was könnte die Ursache sein?

    Die einzige Änderung die wir vorgenommen haben war das setzen weiterer Benutzerrollen für das Double-Opt-In Verfahren über die functions und den passenden Filter:

    function dd_germanized_supported_roles($roles){
    $roles = array(‘customer’,’candidate’,’employer’);

    return $roles;
    }
    add_filter(‘woocommerce_gzd_customer_double_opt_in_supported_user_roles’, ‘dd_germanized_supported_roles’);

Viewing 6 replies - 1 through 6 (of 6 total)
  • Plugin Contributor Dennis

    (@vdwoocommercesupport)

    Hi,

    habt ihr denn den Filter testweise mal entfernt und die Standard-Registrierung via WooCommerce getestet? Funktioniert das in diesem Fall problemlos? Am Aktivierungslink sehe ich jetzt erst einmal keine Probleme. Habt ihr den Link mal mit dem Aktivierungscode aus der DB verglichen? Der findet sich in der wp_usermeta-Tabelle zur jeweiligen user id und dem meta_key “_woocommerce_activation”.

    Grüße

    Thread Starter DimaW

    (@dimaw)

    Hallo Dennis,

    danke für die schnelle Rückmeldung.
    Wenn wir den Filter rausnehmen und die Standardrolle bei der Registrierung auf “Kunde” stellen, funktioniert der Link.
    Wie können wir das korrekt anpassen, damit weitere Rollen unterstützt werden? Reicht der eine Filter dafür nicht aus?

    (Als Anmerkung: wir setzen parallel den WP Job Manager ein)

    Viele Grüße
    Dima

    Plugin Contributor Dennis

    (@vdwoocommercesupport)

    Hi,

    hm, das kann ich so leider nicht beantworten. Eigentlich sieht euer Filter soweit gut aus. Ihr solltet definitiv mal prüfen, ob die Rollen wirklich korrekt und exakt so benannt sind, wie in der Datenbank. Da liegt für mich eigentlich das einzige konkrete Fehlerpotential.

    Wir verwenden in der eigentlichen Query “ucfirst” um den Anfangsbuchstaben der Rollen in einen Großbuchstaben zu transformieren. Wenn ihr das verhindert wollt (da eure Rollen evtl. klein geschrieben werden), müsstet ihr über den Filter:

    woocommerce_gzd_customer_account_activation_query

    Die Query-Argumente für die Aktivierung anpassen und dort noch einmal die Rollen anpassen.

    Grüße

    Thread Starter DimaW

    (@dimaw)

    Hallo Dennis,

    ich habe das Problem vermutlich gefunden.

    Eure Funktion customer_account_activate hat als WP_USER_QUERY für die Rolle den Parameter “role”. Laut Dokumentation heißt es hier “Note that this is an inclusive list: users must match *each* role. Default empty.”
    Laut meinem Verständnis heißt das also, dass wenn dort ein Array enthalten ist, ein Benutzer alle diese Rollen haben muss.

    Ich habe den Parameter zu Testzwecken zu “role__in” geändert, gefolgt von einem Array mit 3 Benutzerrollen, darunter auch unsere. Auf diese Weise konnte die Aktivierung über die Mail durchgeführt werden.

    Danke für den Hinweis zur passenden Funktion 🙂 Ich packe das ganze noch in den Filter, dann sollte es eine dauerhafte Lösung sein!

    Plugin Contributor Dennis

    (@vdwoocommercesupport)

    Hi,

    oh, das ist bisher wirklich untergegangen. Ich werde das auch noch einmal nachlesen und dann entsprechend anpassen! Danke fürs prüfen und die Rückmeldung!

    Edit: Fixed: https://github.com/vendidero/woocommerce-germanized/commit/585b7483dec32582bb214a48d565dbe513a59082

    Grüße

    • This reply was modified 3 years, 4 months ago by Dennis.
    Thread Starter DimaW

    (@dimaw)

    Hi,

    super, freut mich das alles klappt und ich unfreiwillig für eine kleine Verbesserung sorgen konnte 😛

    Viele Grüße
    Dima

Viewing 6 replies - 1 through 6 (of 6 total)
  • The topic ‘Double-Opt-In’ is closed to new replies.