Wie kann ich Theme-Update-Downloads nur auf WordPress-Installationen zulassen?

Ich arbeite an benutzerdefinierten Thema Update-Skript, das funktioniert gut, aber nach dem Update, wenn Sie auf Update Erfolg Benachrichtigung Link “Show Details” klicken, wird der vollständige Link zum Update angezeigt.

Bildbeschreibung hier eingeben

und seit ich das in meinem Download-Skript gemacht habe

if(isset($_GET['download'])){ // run download }else{ exit; } 

Sie konnten den Link kopieren und die ZIP-Datei direkt herunterladen.

Ich überprüfte ein anderes Download-Skript, das nach user_agent sucht, und wenn WordPress String drin ist, erlaubt es den Download, also habe ich einen Mod zu meinem Skript gemacht

 $user_agent = $_SERVER['HTTP_USER_AGENT']; if(isset($_GET['download']) && stristr( $user_agent, 'WordPress' ) == TRUE ){ // run download }else{ exit; } 

jetzt bin ich nicht sicher, wie zuverlässig das ist, meine Frage ist, gibt es eine zuverlässige Zeichenfolge / Header alles, was von update-core.php gesendet wird? action = do-theme-upgrade

dass ich überprüfen kann, ob nur die WordPress-Installation das Update herunterladen darf.

Solutions Collecting From Web of "Wie kann ich Theme-Update-Downloads nur auf WordPress-Installationen zulassen?"

$_SERVER['HTTP_USER_AGENT'] ist etwas, auf das Sie sich nicht verlassen sollten.

Dies kann alles sein von:

 Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/53.0.2785.143 Safari/537.36 

zu

 ☆*:。゜゚・*ヽ(^ᴗ^)ノ*・゜゚。:*☆ ¯\_(ツ)_/¯(ಠ益ಠ)(ಥ‿ಥ)(ʘ‿ʘ)ლ(ಠ_ಠლ)( ͡° ͜ʖ ͡°)ヽ(゚Д゚)ノʕ•̫͡•ʔᶘ ᵒᴥᵒᶅ(=^ ^=)oO 

Du musst also etwas anderes denken, auf das du dich verlassen kannst.


Warum verwenden Sie nicht einfach ein Formular-Aktions- do-theme-upgrade ?

 File: wp-admin/update-core.php 336: function list_theme_updates() { 337: $themes = get_theme_updates(); 338: if ( empty( $themes ) ) { 339: echo '

' . __( 'Themes' ) . '

'; 340: echo '

' . __( 'Your themes are all up to date.' ) . '

'; 341: return; 342: } 343: 344: $form_action = 'update-core.php?action=do-theme-upgrade';