Im Januar habe ich mir Gedanken über Contact Form 7 und Sicherheit gemacht. Dabei ist mir vor allem aufgefallen, dass das Hochsetzen der erforderlichen WordPress-Version ein ziemliches Sicherheitsproblem darstellt. Denn die weiteren Updates des Plugins (oder Themes) werden für ältere WordPress-Versionen nun nicht mehr angezeigt. Es erscheint so, als ob das Plugin gar kein Update hat. Da nützt auch kein automatisches Update.
Die spannende Frage ist also: Was passiert eigentlich, wenn ich in meinem Plugin versuche einem älteren Zweig (mit kleinerer erforderlicher WordPress-Version) ein Update zu geben? Wird es dann an die entsprechende WordPress-Version ausgeliefert oder kann das System das nicht und liefert nur die letzte Version aus?
Wie ich das manchmal so mache, kenne ich die Antwort auf diese Frage aktuell noch gar nicht beim Schreiben. Ich befürchte dass es nicht geht. Aber starten wir unsere Reise. Wo könnte ich die Antwort dazu wohl finden? Schauen wir mal ins Plugin-Handbuch
Da gibt es eine Seite „How to use subversion“, die erklärt, wie das Plugin-Verzeichnis genutzt wird:
In Kurzform: trunk
enthält die aktuellste Entwicklungsversion. Versionen werden in tags
gespeichert. In assets
finden sich die Screenshots, Icons und Banner. Aber es gibt noch einen weiteren Ordner:
Requires at least – Used for compatibility checking. If a plugin sets the required version to 4.4, then users on versions below 4.4 will not receive update notifications. Use this wisely.
„Use this wisely.“ ist ein Euphemismus für „!!!WARNUNG!!! DENKE SEHR GUT NACH BEVOR DU DAS ZU SCHNELL HOCHSETZT !!!WARNUNG!!!“
WordPress unterstützt im Pluginverzeichnis keine Zweige und ist nicht in der Lage ohne fremde Hilfe festzustellen, ob für eine andere WordPress-Version vielleicht ein Update vorliegen würde.
Ich empfehle daher dringend die Plugins manuell zu kontrollieren oder über ein Plugin zu testen.
Plugin Report zeigt die erforderliche Info seit Version 1.6:
Kennst du noch mehr Plugins, die zeigen, ob ein Update möglich wäre, wenn die erforderliche WordPress- oder PHP-Version vorhanden wäre? Dann ab damit in die Kommentare! Gerne ergänze ich weitere Plugins. Gibt es dazu schon ein Trac-Ticket? Dann freue ich mich ebenfalls über einen Hinweis!
Update: Nach diesem Artikel habe ich weiter gefragt und es ist wohl möglich, dass das Sicherheitsteam bzw. das Plugin-Team ein „Forced Update“ machen können. Dabei werden dann auch unterschiedliche Zweige genutzt, um unterschiedliche WP-Versionen abdecken zu können. Gerade kürzlich bei Jetpack nötig geworden.