WordPress SDK 2.5.0-RC.1 ist zum Testen bereit: Klonauflösung, Deaktivierungs-Feedback, UX-Verbesserungen, Verwechslung von Assets und mehr
Veröffentlicht: 2022-01-18Es ist offiziell! WordPress SDK 2.5.0 RC1 ist jetzt mit großartigen (und relevanten) Verbesserungen verfügbar, die das angehen, was wir als Ihre bisher häufigsten und zeitaufwändigsten Probleme identifiziert haben.
Unser Ziel mit dieser Version ist es, Ihnen dabei zu helfen, die Supportlast zu reduzieren, damit Sie mehr Zeit für Ergebnisse und andere produktivere Aktivitäten aufwenden können.
Bevor wir in die Funktionen eintauchen, brauchen wir Ihre Hilfe 🙌
Aufruf für Tester
Obwohl wir gründliche Tests aller Art (automatisierte, manuelle und Regressionstests) durchgeführt haben und uns aufgrund der Komplexität und Menge der Codeänderungen und Anwendungsfälle, die in dieser Version enthalten sind, ziemlich zuversichtlich in die Stabilität von 2.5.0 fühlen , haben wir uns entschieden, es zuerst als Release Candidate zu pushen.
„Ich möchte beim Testen dabei sein – wie kann ich helfen?“
Möchten Sie uns beim Testen helfen? Das ist großartig und wird geschätzt!
- Wenn Sie ein Beta-Programm ausführen, aktualisieren Sie einfach das SDK auf diesen RC und übertragen Sie eine neue Version als Beta .
- Wenn Sie kein Beta-Programm betreiben und wissen, dass einige Ihrer Kunden geklonte Umgebungen wie Staging-to-Production ausführen oder Ihr Plugin/Design mit WaaS-Plugins wie WP Ultimo verwenden, können Sie ihnen eine spezielle Version Ihres Produkts mit diesem SDK, da es ihre Probleme lösen sollte.
Unabhängig davon, ob Sie das RC ausprobieren, ob Probleme auftreten oder ob es im Gegenteil die SDK-Probleme löst, mit denen Ihre Benutzer zuvor konfrontiert waren, lassen Sie es uns bitte wissen! Kontaktieren Sie uns einfach über [email protected], öffnen Sie ein GitHub-Problem oder nutzen Sie einen anderen Kommunikationskanal, der für Sie am einfachsten ist – wir möchten Ihr Feedback
Kommen wir zu den Funktionen.
Doppelte Websites und Klonauflösung
Mit der wachsenden Popularität von WaaS (WordPress as a Service)-Netzwerken und Hosting-Unternehmen, die 1-Klick-Staging für Produktionsbereitstellungs-Workflows bereitstellen, haben Sie wahrscheinlich bereits mit Kunden zu tun, die sich über unerwartete Probleme bei der Duplizierung von Websites beschwert haben.
Kurz gesagt, ein Klon ist eine Website (oder eine Unterwebsite), die eine eindeutige ID und ein Paar öffentlicher/geheimer Schlüssel hat, die von Freemius zugewiesen wurden und mit der ID und den Schlüsseln einer anderen Website identisch sind. In diesem Dokument erfahren Sie mehr über Klone, wie und wann sie normalerweise erstellt werden.
Inspiriert von der Benutzeroberfläche von Jetpack freue ich mich, Ihnen mitteilen zu können, dass diese SDK-Version mit einem voll funktionsfähigen Mechanismus zur Identifizierung, Verwaltung und Auflösung von Klonen ausgestattet ist. Es ist eine Funktion, die seit geraumer Zeit auf Eis gelegt wurde, und ich empfehle Ihnen dringend, sich mit dem Problem des Klonens von Websites vertraut zu machen und wie das WordPress SDK damit umgeht, um das Beste aus der Verbesserung herauszuholen:
Deaktivierungs-Feedback-Formular UX-Verbesserungen
Schlummerfunktion für Troubleshooter
Während unser Deaktivierungs-Feedback-Formular Benutzern eine einzigartige Gelegenheit bietet, Produktbesitzern Feedback zu geben, bevor sie aufgeben, haben wir im Laufe der Jahre Beschwerden gehört, dass Benutzer diese Funktion wirklich hassen. Nach Analyse des Feedbacks konnten wir diese Stimmung speziell dem Segment „Troubleshooter“ zuordnen.
Plugin-Updates sind eine häufige Aufgabe, mit der sich Website-Betreuer täglich befassen müssen. Manchmal kann ein Plugin-/Theme-Update aufgrund von Konflikten, Fehlern und Inkompatibilitäten schief gehen, was zu Problemen und unerwarteten Fehlern auf einer Website führt. Maintainer tauchen normalerweise nicht in die Codeebene ein, daher besteht der übliche Fehlerbehebungsprozess darin, die Ursache des Problems mit Plugin-Deaktivierungen und -Reaktivierungen zu identifizieren, gefolgt von einem Themenwechsel. Das heißt, Sie müssen die Plugins einzeln deaktivieren, bis das Problem behoben ist, und sie dann einzeln und in derselben Reihenfolge, in der sie deaktiviert wurden, erneut aktivieren. Theoretisch sollte dies helfen, das „problematische“ Plugin zu isolieren, aber wenn es das Problem nicht aufdeckt, sollte der nächste Versuch ein „Themenwechsel“ sein.
Da der „Fußabdruck“ von Themes und Plugins, die unser WordPress-SDK verwenden, wächst, fügt das Deaktivierungs-Feedback-Formular jeder Deaktivierung einen zusätzlichen Klick hinzu. Von dort aus leitet die Reaktivierung eines Freemius-basierten Plugins automatisch zum Opt-in-Bildschirm oder zur Haupteinstellungsseite des Plugins (basierend auf dem Opt-in-Status), was einen weiteren Klick hinzufügt, um zurück zur Plugin-Seite zu navigieren.
Das bedeutet, dass nur 5 Plugins, die Freemius auf einer Website verwenden, potenziell 10 zusätzliche Klicks hinzufügen können – etwas, das für Troubleshooter verständlicherweise ärgerlich ist. Und wenn Sie beispielsweise 20 Websites verwalten, sammeln sich all diese Klicks im Laufe der Zeit an, was erklärt, warum einige Betreuer das WordPress-SDK wirklich nicht mögen.
Nachdem wir die Gründe für den „Hass“ verstanden haben, haben wir eine einfache Lösung gefunden, um den „Schmerz“ für Problemlöser zu lindern und hoffentlich etwas von ihrem Vertrauen zurückzugewinnen.
Das Feedback-Formular zeigt bereits eine Option an, die angibt, dass eine Deaktivierung zur Fehlerbehebung vorübergehend ist. Also, anstatt dieses Feedback einfach an uns zu senden …
- Wir zeigen jetzt eine Option zum Schlummern des Panels von einer Stunde bis zu 30 Tagen.
- Weil wir wissen, dass es für Produktbesitzer keinen Mehrwert bringt, überspringt die Schlummerfunktion das Senden von Feedback an Freemius insgesamt.
- Wenn der Administrator schließlich das Formular zurückstellt, wird die Umleitung für den zurückgestellten Zeitraum deaktiviert.
Snoozing wirkt sich nur auf den aktuell angemeldeten Administrator aus und funktioniert mit allen Freemius-basierten Plugins und Designs, die auf dieser Website installiert sind.
Diese verbesserte UX kann möglicherweise Tonnen von Klicks für „schwerwiegende“ Troubleshooter einsparen, und wir sind gespannt, welchen Unterschied es machen wird.
Deaktivierung mit leerem Feedback „Andere“ aktivieren
Um Benutzer zum Senden von Feedback zu ermutigen, auf das Sie reagieren können, wurde der Status der Schaltfläche „Senden und deaktivieren“ in der Vergangenheit geändert, wenn ein Benutzer die Option „Sonstiges“ im Deaktivierungs-Feedback-Formular auswählte, bis der Benutzer eine Eingabe machte, um die „ anderer Grund.
Wir wurden darauf aufmerksam gemacht, dass diese UX problematisch war, da Benutzer von oben links lesen und einige diese Option wählen, weil sie einfach kein Feedback geben möchten. IE, wenn sie diese Option auswählen, bevor sie bemerken, dass es eine Option zum „Überspringen und Deaktivieren“ gibt, entsteht der Eindruck, dass es unmöglich ist, das Produkt zu deaktivieren, ohne Feedback zu geben.
Wenn nun die Option „Andere“ ausgewählt ist und das Erklärungsfeld leer ist, ist die Schaltfläche aktiviert und mit „Deaktivieren“ gekennzeichnet:
Und natürlich werden keine Daten an unser Ende gesendet, da leeres „Anderes“-Feedback nutzlos ist.
Status des standardmäßigen Kontrollkästchens für anonymes Feedback
Wenn ein Benutzer das Opt-in übersprungen und sich dafür entschieden hat, Feedback über das Deaktivierungs-Feedback-Formular zu geben, war das Feedback standardmäßig nicht anonym, damit Sie den Benutzer bei Bedarf kontaktieren können. Diese Version des SDK führt einen neuen Filter ein, mit dem Sie den standardmäßigen Übermittlungsmodus des Feedback-Formulars steuern und standardmäßig auf anonymes Feedback ändern können, indem Sie Folgendes verwenden:
my_fs()->add_filter( 'default_to_anonymous_feedback', '__return_true' );
Eigentumsverwechslung von Benutzer-Assets – weg!
Ein beträchtlicher Prozentsatz der Käufe von WordPress-Plugins und Themes wird von „Buildern“ getätigt, bei denen das Projekt schließlich an ihren Kunden übergeben wird. Um die Beziehung zu erleichtern, bieten wir ein hohes Maß an Flexibilität, um den Besitzwechsel von Kontoguthaben von einer Person auf eine andere zu ermöglichen.
Ohne in die technischen Einzelheiten einzutauchen, sind wir bei den vielen Millionen Websites, auf denen unser SDK ausgeführt wird, auf mehrere Grenzfälle gestoßen, die unerwartet Assets zwischen Konten vermischt haben. Obwohl diese Probleme selten auftraten, ist es für den Kunden, Sie und uns schmerzhaft, sie zu beheben.
Wenn es einen Wettbewerb für die nervigsten und zeitaufwändigsten Probleme gab, ist dieser der unangefochtene Gewinner von 2020–2021 🏆 Es ist auch ein gutes Beispiel dafür, wie man zu viel Flexibilität gibt, ohne zu versuchen, alle Anwendungsfälle vorherzusehen (und man nie wird) kann mehr Schaden als Nutzen anrichten.
Wir haben nicht nur einige Einschränkungen im Backend hinzugefügt, um die Anzahl der Instanzen des Problems zu reduzieren, sondern die neue WordPress SDK-Version verbessert auch die E-Mail-Update-Erfahrung des Kontos mit zusätzlichen Eingaben des Benutzers und behandelt jeden Fall etwas anders:
Behebung von HTTP 404 Not Found (auch bekannt als „Keine Updates“)
Einige von Ihnen haben vielleicht Support-Tickets erhalten, bei denen sich Kunden darüber beschwert haben, dass das SDK Fehler auslöst und das System verlangsamt, normalerweise mit einem ergänzenden Screenshot eines Fehlers aus dem Debug-Protokoll (oder anderen Debugging-Plug-ins).
Die HTTP-Fehler wurden zurückgegeben, als es keine neueren Versionen gab, was das erwartete Verhalten einer ordnungsgemäßen RESTful-API-Implementierung ist, wenn eine Ressource nicht vorhanden ist.
Da es nicht trivial ist zu verstehen, dass dieses Verhalten erwartet wird, bis Sie uns kontaktieren, und es unnötige Support-Tickets für Sie (und uns) generiert hat, haben wir den HTTP-Antwortcode auf 200 geändert, um diese Verwirrung ein für alle Mal zu beseitigen. Diese API-Änderung wurde bereits vor einigen Wochen eingeführt, sodass Sie wahrscheinlich bemerkt haben, dass diese Art von Beschwerde verschwunden ist.
Rückblickend erkennen wir heute an, dass wir diese Änderung schon viel früher hätten vornehmen sollen. Es ist nur so, dass manchmal das „richtige“ technische Ding nicht das „richtige“ für den Endbenutzer ist.
Fehlertoleranz gegenüber Konnektivitätsproblemen im Hintergrund
Vor einigen Wochen hatte AWS eine vorübergehende Ausfallzeit. Da wir unsere Server bei Amazon hosten, verursachte die Ausfallzeit natürlich Verbindungsprobleme mit unserem API-Server. Die Websites, auf denen ihr Freemius-Sync-Cron während dieses Zeitraums ausgeführt wurde, wurden mit einer verwerflichen Benachrichtigung über das Verbindungsproblem hinzugefügt, was zu einer Reihe von Supportanfragen von betroffenen Benutzern führte. Der Zweck des Hinweises besteht darin, auf laufende Verbindungsprobleme aufgrund von Firewalls, ISP-Blockierungen usw. hinzuweisen. Er ist nicht für vorübergehende Verbindungsprobleme gedacht. Daher haben wir die Logik verbessert, indem wir einen Fehlertoleranzmechanismus eingerichtet haben, sodass die Benachrichtigung erst nach 3 aufeinanderfolgenden fehlgeschlagenen Verbindungsversuchen (normalerweise 3 Tage) hinzugefügt wird.
Auflösung veralteter Multisite-Netzwerkfunktionen
wpmu_new_blog()
und deleted_blog()
wurden in WP 5.1 als veraltet markiert, was bei der Ausführung im Debug-Modus einen Hinweis auslöste. Wir haben die Multisite-Integration aktualisiert, um stattdessen wp_insert_site()
und wp_delete_site()
entsprechend zu verwenden, wenn sie auf neuen WordPress-Versionen ausgeführt werden. Danke Dario Curvino für deinen Beitrag 🙌
Neue Filter
Wir haben einen neuen Filter hide_freemius_powered_by
eingeführt, mit dem Sie die Registerkarte „Powered by Freemius“ auf den vom SDK generierten Seiten ausblenden können:
my_fs()->add_filter( 'hide_freemius_powered_by', '__return_false' );
Und ein weiterer Filter namens hide_billing_and_payments_info
, um den Abrechnungs- und Zahlungsverlauf auszublenden, der Kunden standardmäßig auf der Kontoseite angezeigt wird:
my_fs()->add_filter( hide_billing_and_payments_info', '__return_true' );
„Anonyme“ Lizenzaktivierung — Wir hören Sie!
Als Startup oder jede Art von Unternehmen haben Sie am Anfang nur begrenzte Ressourcen. Der Fokus Nummer eins liegt auf der Produkt-/Marktanpassung, was Sie natürlich dazu zwingt, Prioritäten zu setzen und Opfer zu bringen. Als wir Freemius gestartet haben, war unsere Analyse des WordPress-Marktes, dass Heimwerker den größten Prozentsatz der Benutzer im Ökosystem ausmachen. Daher wurden einige der Praktiken und UX für dieses Segment entwickelt. Während wir reifen, haben wir in den letzten zwei Jahren enorme Anstrengungen unternommen, um das im Laufe der Jahre gesammelte Feedback anzuwenden, um den Bedürfnissen von Betreuern und Erstellern besser gerecht zu werden. Dies ist zwar ein viel kleinerer Prozentsatz der WordPress-Benutzer, aber ein äußerst leidenschaftlicher und wichtiger!
Zu diesem Zeitpunkt war die überwiegende Mehrheit des im Laufe der Jahre erhaltenen Verhaltensfeedbacks bereits in das WordPress SDK integriert. Aber es gibt immer noch eine sich wiederholende Anfrage, die normalerweise von technisch versierten Benutzern mit einer höheren Datenschutzsensibilität kommt: „Warum muss ich mich anmelden, wenn ich einen Lizenzschlüssel aktiviere?“
Obwohl wir nur einige grundlegende Metriken erfassen, die Benutzern und Produktherstellern bei der Lizenzaktivierung zugute kommen – wie z wollten Sie ansprechen, damit die Benutzer Ihre Produkte unbesorgt genießen können.
Daher planen wir, in der nächsten Version eine neue Option für die Lizenzaktivierung einzuführen, ohne Daten freizugeben, die für die Lizenzaktivierung und die Bereitstellung von Updates nicht erforderlich sind. Anstatt die Datenarchitektur zu überarbeiten, maskieren wir die Daten mit Dummy-Werten, um maximale Privatsphäre zu bieten. Denken Sie daran, dass wir immer noch die Website-URL und IP, die SDK-Version und ob das Produkt aktiv oder inaktiv ist, erfassen müssten. Aber das ist es!
Bis zum nächsten Mal
Haben Sie Feedback zur bevorstehenden „anonymen“ Lizenzaktivierung? Haben Sie irgendwelche Funktionen im Sinn, die wir berücksichtigen sollen? Fühlen Sie sich frei, sie zu unserem Trello-Board hinzuzufügen, und in der Zwischenzeit viel Spaß beim Verkaufen!