Auch untrailingslashit() und trailingslashit() sind eher weniger bekannt. Beide Funktionen machen etwas total simples, was aber immer wieder benötigt wird.
<?php
function untrailingslashit( $string ) {
	...
}
?><?php
function trailingslashit( $string ) {
	...
}
?>Es gilt jeweils:
- $string (string) 
 Eine URL an die ein Slash angehängt oder entfernt werden soll.
Zurückgegeben wird der Eingabe-String mit oder ohne endenden Slash (/).
Beispiel:
Die WordPress Funktion rest_url() gibt in der Regel die URL zur REST-API ohne endenden Slash aus. In einem meiner Plugins schrieb ich den Wert mittels wp_add_inline_script() in eine Variable. Der Output sah dann ungefähr so aus:
var MM_OPTIONS = { "rest_url": "https://example.com/wp-json" };Mittels jQuery konnte ich dann darauf zugreifen und einen AJAX-Request absetzen:
jQuery.ajax( {
  'url':  MM_OPTIONS.rest_url + '/path/to/route'
} );Irgendwann meldete sich ein Kunde bei mir, dass es ihm nicht möglich sei, mein Plugin vollständig zu nutzen. Es stellte sich heraus, dass ein Dritthersteller-Plugin den rest_url-Filter nutzte und die Funktion trailingslashit() darauf anwendete. 
Das Resultat war, dass meine JavaScript-Dateien nicht mehr funktionierten, da diese eine Anfrage an
https://example.com/wp-json//path/to/routestellten (mit doppeltem Slash). Manchmal werden solche doppelten Slashes auch von Webservern gefiltert. Das passierte in diesem Fall allerdings auch nicht. Dadurch Schlug jeder Aufruf an jeden REST-API Endpunkt fehl.
Die Lösung war, die untrailingslashit()-Funktion darauf anzuwenden:
<?php
$vars = [
	'rest_url' => untrailingslashit( rest_url() )
];
wp_add_inline_script(
	'wpb-rs-admin-posts',
	"var MM_OPTIONS = " . json_encode( $vars ) . ";",
	'before'
);
?>