caspar.blog

Menu

Tag: #Projekt26

Die WordPress-Registrierung in 2020: das Experiment 💅

#Projekt26 (2/26) | Hier kommt mein Bericht zur Umsetzung des Experiments mit der WordPress-Registrierung – also eine Beschreibung dessen, was ich so installiert und mir selbst zusammen geschrieben habe, um aus der Core-Registrierung ein ansatzweise brauchbares Feature zu machen.

Neun (9) Waghalsige waren bisher so freundlich, den Spaß mitzumachen und sich auf dieser Site zu registrieren – danke euch allen, ihr seid klasse! Und das Folgende ist definitiv noch nicht das letzte Wort zu diesem ganzen Zauber, sondern eine Art Zusammenfassung; um manche Details geht es dann in den kommenden Wochen.

Neuen Leserinnen und Lesern sei noch einmal ans Herz gelegt, dass es hier um ein Experiment geht – also etwas, das meistens nicht funktioniert – und dass die vorgestellten Lösungen teils sehr speziell auf meinen Use Case zugeschnitten sind. Das darf so sein, und gleichzeitig freue ich mich natĂŒrlich, wenn ihr eure Gedanken zu diesem und anderen möglichen Use Cases beisteuert.

Aber nun: ab ins Unterholz


Registrierung

Warteschleife und Freischaltung

Plugin: WP Approve User + Anpassungen

WP Approve User ist Kommentar-Moderation, bloß nicht fĂŒr Kommentare, sondern fĂŒr Profil-Registrierungen; schöner als die Kommentar-Moderation, versendet es optional auch noch Benachrichtigungen bei (Nicht-)Freischaltung.

Zu verdanken haben wir dieses SchĂ€tzchen unserem alten Freund Konstantin Obenland (hallo, Konstantin!), und wie in so einem Fall nicht anders zu erwarten, tut es exakt, was es soll, mit klassisch obenland’scher Eleganz. Ein großartiges Plugin, das mir jeden Tag den Tag rettet, denn ein wenig Kopfzerbrechen bereitete mir zwischendurch der Registrierungsspam 


Spam-Abwehr

Plugin: Eigenbau

Pro Tag landeten zuletzt 10-20 Spammer in der Warteschleife von WP Approve User; das hört sich nach nicht viel an, aber es lĂ€ppert sich. Mit einem reCaptcha waren es deutlich weniger (zuletzt), aber dafĂŒr hatte ich damit ein potenzielles Datenschutzproblem. ZwickmĂŒhle.

Nach einigem Hin- und Her habe ich jetzt eine eigene Lösung gebaut – sehr speziell auf meinen Use Case zugeschnitten, denn ich gehe davon aus, dass die lieben Leute, die keine Bots sind und sich auf meiner Website registrieren, mich irgendwie (er-)kennen. 🙃

Angepasstes Registrierungsformular mit Abfrage meines Vornamens

Kennzahlen zur EffektivitĂ€t meiner Lösung habe ich noch keine, werde aber Bericht erstatten. In den knapp 24 Stunden, in denen sie jetzt lĂ€uft, hatte ich jedenfalls noch keine einzige Spam-Registrierung. đŸ€ž

Angepasste Login-Seite

Plugin: Eigenbau

Ok, ist jetzt nicht der mega Unterschied zur Core-Seite. Eigenes Logo halt, mit Link zur eigenen Site antatt zu Herrn Mullenweg, und ein extra Hinweis auf der Registrierungsseite, wie der Hase lÀuft. Mache ich sicher irgendwann noch mehr draus, sobald ich sowas wie ein Design im Frontend habe.

Profil (Subscriber)

Eigenes Profil löschen

Plugin: Delete me + Anpassungen

Das eigene Nutzungsprofil löschen – warum das nicht per Core geht, ist mir komplett schleierhaft. DafĂŒr gibt’s halt dieses sehr ordentliche Plugin, mit wirklich umfassenden Anpassungsmöglichkeiten fĂŒr die User Experience.

Eigenes Profil in WordPress löschen

Dashboard

Plugin: Eigenbau

Dem WordPress Dashboard – diesem Inbegriff gut gemeinter Nutzlosigkeit kosmischen Ausmaßes – ein Mondstaubkorn Sinnhaftigkeit einzuhauchen, daran sind schon ganz andere als meinereiner gescheitert. Aber sei’s drum, dachte ich mir, die Latte hĂ€ngt dermaßen tief, was kannste da falsch machen.

Heraus gekommen ist eine zweispaltige Ansicht mit einem eigenen Widget links (ein Anfang, ok?) und der core-seitig gelieferten Activity rechts.

Über die Screen Options lĂ€sst sich alles, wie gewohnt, ein- oder ausblenden. Verschieben geht auch, nur habe ich die gestrichelten Platzhalter-KĂ€sten versteckt. Nicht ganz barrierefrei vielleicht, aber so fĂ€llt bei einer leeren Spalte der Dauerreiz zum FĂŒllen derselben weg – wir haben doch eh alle mehr als genug Stress, oder?

Subscriber Dashboard im elegant blauen Farbschema von Altis

Farbschema: Altis

Plugin: Eigenbau (Teil-Fork von Altis)

Das edle Blau stammt nicht von mir, sondern gehört zu Altis, der Plattform meines Arbeitgebers Human Made. Der Code von Altis ist komplett open source, da habe ich mir das CSS einfach mal ausgeliehen, denn das Core-Schwarz mag ich nicht mehr sehen und die anderen Core-Farbschemata noch weniger. GefĂ€llt’s euch?

GitHub-Kontaktfeld

Plugin: Eigenbau

Bisher einfach nur ein Profil-Feld zum AusfĂŒllen, aber mit Potenzial


Zwei-Wege-Authentifizierung

Plugin: Two Factor

SelbsterklĂ€rend, sollte eigentlich ĂŒberall aktiv sein.

Sicherererere Passwörter

MU Plugin: WP Password Bcrypt + Anpassung

WP Password Bcrypt bringt WordPress dazu, den PHP-eigenen (und sichereren) VerschlĂŒsselungsalgorithmus zu nutzen. Es muss als MU-Plugin installiert sein, damit es die jeweiligen pluggable functions in WordPress rechtzeitig ĂŒberschreibt.

Und weil ich es bis jetzt nicht via Composer lade (ja, ja), habe ich in meine Kopie als ErgĂ€nzung noch die Forcierung von mindestens 32 Zeichen eingefĂŒgt. Kann man auch trennen natĂŒrlich 
 sollte man wohl auch 
 mache ich noch, versprochen.

Admin Notices nur fĂŒr Admins

Plugin: Eigenbau (Teil-Fork von Dobby)

Ich kann mir partout keinen Grund vorstellen, warum meine Subscriber die Admin Notices anderer Plugins sehen sollten. Darum bin ich auf Nummer sicher gegangen. đŸ€«

Admin allgemein

Help Tabs hinfort

Plugin: Eigenbau

Wer weiß, was gemeint ist: ja.
Wer’s nicht weiß: genau.

Toolbar aufgerÀumt

Plugin: Eigenbau

Im Backend: Alles raus außer Link zum Frontend (links) und das User-MenĂŒ (rechts); Kommentar-Icon nur dann, wenn es auch was zu moderieren gibt.

Im Frontend: wie oben, plus Customizer- und Edit-Post-Link.

Und „Howdy“ nur, wenn jemand in Texas sitzt 
 Ok, Scherz. WĂ€re datenschutzmĂ€ĂŸig zu kompliziert. Kein Howdy fĂŒr alle.

Kommentare

Spam-Abwehr

Plugin: Antispam Bee

Was sonst. Schon ans pluginkollektiv gespendet?

Automatische Kommentar-Freischaltung fĂŒr eingeloggte Benutzer/-innen

Plugin: Eigebau

Die Überschrift erklĂ€rt’s, oder? Auch wenn jemand zwar ein registriertes Profil, aber noch keinen freigeschalteten Kommentar hat: solange er/sie eingeloggt ist, veröffentlichen sich die Kommentare auf Vertrauensbasis von selbst.

Benachrichtigungen

Plugin: Falcon + eigene Anpassungen

Ebenfalls aus dem Hause Human Made und mit einem „dev“ in der Versionsnummer, macht dieses SchmuckstĂŒck seine Sache richtig, richtig gut. Registrierte Nutzer/-innen können ihre Abos fĂŒr BeitrĂ€ge und Kommentare granular auswĂ€hlen, auf der eigenen Profilseite, oder direkt im Dashboard. (Doch nicht im Dashboard, habe das Widget ausgeblendet; warum, erzĂ€hle ich spĂ€ter.)

Granulare Benachrichtigungseinstellungen fĂŒr BeitrĂ€ge und Kommentare

Hacken muss ich es trotz alledem, aber davon in einem nÀchsten Beitrag mehr


Bearbeitung

Plugin: Simple Comment Editing + eigene Anpassungen

Mein Ehrgeiz, das Editieren ĂŒber Nutzungsrechte zu lösen (nach einem Tip von Bernhard), ist an WordPress leider lĂ€ssig abgeperlt – die Rechtesituation fĂŒr Kommentare ist an edit_posts geknĂŒpft und ansonsten hochgradig komplex. Zu viel fĂŒr meine alternden Synapsen.

Nach einigem Hin und Her und diversen fruchtlosen TauchgĂ€ngen in den Core, bin ich daher nun doch bei der Standardlösung mit dem einschlĂ€gigen Plugin gelandet, plus einer kleinen Anpassung, die den Edit-Link ausschließlich fĂŒr registrierte Nutzer/-innen anzeigt. (Die Eieruhr zum Bearbeiten ist auf 20 Minuten eingestellt.)

Kennzeichnung registrierter Kommentierender

Plugin: Eigenbau

Bernhard hatte den lustigen Vorschlag gemacht, registrierte Nutzer/-innen mit einer Art Anstecknadel als „verified“ Kommentierende auszuzeichnen. Digital-Swag! Mit sowas kriegste mich immer.

Als Badge dient ein Sparkle-Emoji (✹) mit zusĂ€tzlichem Screen-Reader-Text („Verified Member“). Anstatt das Ganze im Theme zu versenken, filtere ich get_comment_author (Backend) und get_comment_author_link (Frontend). Und damit klar ist, wer in den hoffentlich reichlichen Kommentaren das Hausrecht hat, habe ich fĂŒr den/die Beitragsautor/-in noch ein ✍ Badge dazu gezaubert.

Desweiteren im Einsatz

  • Cachify mit HD Cache. (Kannste auch fĂŒr spenden!)
  • Was Eigenes fĂŒr rudimentĂ€re PWA-Features (work in progress).
  • Noch was Eigenes, um Feedly dazu zu kriegen, ein Icon fĂŒr meine Feeds anzuzeigen; funktioniert bloß irgendwie noch nicht. 😣
  • Das Theme Susty von Jack Lennox (sehr, sehr work in progress).

Code?

Der Code der hier genannten Mini-Plugins Marke „Eigenbau“ steht ab sofort in einem – vorerst – privaten GitHub-Repo.

Diejenigen, die sich nach meinem ersten Projekt26-Beitrag registriert hatten, haben bereits eine Einladung dafĂŒr erhalten. Nicht dass es da so wahnsinning Aufregendes zu sehen gĂ€be, aber wer mir den Gefallen getan und bei diesem Registrierungsexperiment mitgemacht hat, soll nun natĂŒrlich auch den Code hinter der Umsetzung begutachten dĂŒrfen.

Wer ebenfalls begutachten möchte, aber noch kein Profil hat: gerne hier registrieren, BestÀtigungsemail abwarten, Profil mit GitHub-Name aktualisieren und sich auf den Invite freuen!

Und ansonsten: gerne Ideen, Tips, Anregungen, Kritik usw in die Kommentare!