Wo finde ich Dokumentation darüber, welche Zeichen in Benutzernamen erlaubt sind und warum?

Ich würde gerne Leerzeichen in Benutzernamen verwenden können, aber das scheint nicht möglich. Gibt es ein Write-up im Codex oder irgendwo, das erklärt, welche Zeichen erlaubt sind und warum es auf dieses Set beschränkt war oder ist es nur Alphas und saugen es auf?

Wenn ich möchte, dass Benutzer etwas anderes als einen Benutzernamen ohne Leerzeichen verwenden, ist meine einzige wirkliche Option ein Plugin, das Benutzern erlaubt, sich mit ihren E-Mail-Adressen anzumelden, aber immer noch einen Alpha-Benutzernamen bei der Kontoerstellung benötigt?

Oh, und ich bin auf einer WPMU / Netzwerkseite.

Solutions Collecting From Web of "Wo finde ich Dokumentation darüber, welche Zeichen in Benutzernamen erlaubt sind und warum?"

Sie können Leerzeichen in Benutzernamen verwenden, kein Problem. Einige Benutzer auf wordpress.org haben Leerzeichen in ihren Benutzernamen.

Der strikte Modus erlaubt nur diese Zeichen: a-z0-9_.\-@

WP ist jedoch nicht auf den strikten Modus voreingestellt.

Jetzt hat Multisite andere Einschränkungen und es kann Räume dort entfernen. Dies liegt daran, dass Benutzernamen verwendet werden, um unabhängige Blogs zu erstellen, beispielsweise bei Installationen mit mehreren Standorten.

Ich denke nicht, dass es eine offizielle Dokumentation darüber gibt, aber Sie können sich die function sanitize_user in wp-includes/formatting.php ansehen:

 function sanitize_user( $username, $strict = false ) { $raw_username = $username; $username = wp_strip_all_tags( $username ); $username = remove_accents( $username ); // Kill octets $username = preg_replace( '|%([a-fA-F0-9][a-fA-F0-9])|', '', $username ); $username = preg_replace( '/&.+?;/', '', $username ); // Kill entities // If strict, reduce to ASCII for max portability. if ( $strict ) $username = preg_replace( '|[^a-z0-9 _.\-@]|i', '', $username ); $username = trim( $username ); // Consolidate contiguous whitespace $username = preg_replace( '|\s+|', ' ', $username ); return apply_filters( 'sanitize_user', $username, $raw_username, $strict ); } 

Sie können diese function verwenden und das Standardverhalten mit Ihren eigenen überschreiben.