In einer Standard-Installation von WordPress gibt es die Möglichkeit, verschiedene Dateitypen hochzuladen. Welche Dateitypen das sind, wird in WordPress durch einen Filter geregelt. Häufig reichen die vorgegebenen Dateitypen aber nicht aus. So war es vor einiger Zeit auf diesem Blog, da ich auch Dateien des LEGO Mindstorms Education EV3 hochladen möchte, die WordPress in der Standard-Konfiguration natürlich nicht kennt. Erfreulicherweise ist das Anpassen dieser sogenannten MIME Typen sehr einfach.
MIME Typen hinzufügen
Der Filter trägt den Namen upload_mimes und kann durch eine eigene Funktion erweitert werden. Diese Funktion wird anschließend immer dann aufgerufen, wenn eine Datei hochgeladen wird und WordPress ermitteln möchte, welche MIME Typen unterstützt werden. Das folgende Listing zeigt die Funktion, wie ich sie auch in diesem Blog im Einsatz habe.
1 2 3 4 5 6 7 8 |
add_filter('upload_mimes', 'add_custom_mime_types'); function add_custom_mime_types($mimes){ return array_merge($mimes,array ( 'ev3b' => 'application/octet-stream', 'ev3' => 'application/octet-stream' )); } |
Hinzugefügt wird ein Filter mit der zugehörigen Funktion add_custom_mime_types. Diese Funktion bekommt mit dem Parameter $mimes die aktuellen schon vorhandenen MIME Typen reingereicht. Das ermöglicht es uns, die vorhandenen MIME Typen um eigene zu erweitern, ohne bei jedem Aufruf eigenhändig eine vollständige Liste aufbauen zu müssen, die auch die eigentlich schon bekannten MIME Typen erneut enthält. Durch das Listing werden also nur die Dateiendungen ev3b und ev3 hinzugefügt.
Diese Funktion muss in die Datei functions.php eures aktiven Designs (Themes). Ich habe mir angewöhnt, für solche Zwecke eine zusätzliche Datei zu erstellen, in denen diese Anpassungen gespeichert sind. In nennen die Datei Erweiterungen bzw. Englisch extensions.php.
MIME Typ herausfinden
Es gibt zahlreiche Tools, um den MIME Typ einer Datei herauszufinden. Das ist nützlich, wenn nicht ganz klar ist, welcher Typ zu welcher Datei gehört. Ich nutze häufig Online-Tools wie zum Beispiel http://mime.ritey.com/. Dort können Dateien hochgeladen werden und die Webseite zeigt den MIME Typ an. Natürlich sind solche Online-Tools nur dann sinnvoll, wenn die hochgeladenen Dateien nicht sicherheitskritisch oder sonstwie relevant sind, da natürlich nicht klar ist, was auf der Gegenseite nach der Prüfung mit der Datei passiert.
Auf diese Weise lassen sich schnell und unkompliziert die erlaubten MIME Typen der aktuellen WordPress-Installation erweitern. Unter Umständen kann es auch sein, dass euer eingesetzten Design (Theme) eine Funktion bereithält, mit der diese MIME Typen komfortabel über eine Oberfläche konfiguriert werden können. Dann entfällt der oben gezeigte manuelle Aufwand.
Hi Fabian! Wann geht’s weiter in deinem Blog?
Beste Grüße,
Christoph
Hi Christoph,
vielen Dank für deinen Kommentar.
In Kürze wird es weitergehen. Aufgrund meiner Masterthesis musste ich etwas kürzer treten.
Hast du denn spezielle Themenwünsche?
Viele Grüße
Fabian
kann man mit einen playstation 4 Controller die mindstorms Konsole steuern?
kann mann einen ps4 kontroller mit dem ev3 programm verbinden bitte um rückmeldung
Grus stenkhuntxxswag und kevin
Hallo stenkhuntxxd,
hallo ich frage was,
danke für eure Kommentare. Da beide Fragen identisch sind, gibt es auch nur eine Antwort.
Beim PS4 Controller bin ich mir nicht sicher. Der Xbox Controller sollte gehen. Allerdings dann auch nur über den Umweg eines Computers, der, zum Beispiel mit Java oder C#, den EV3 fernsteuert. Dann kann man dort ein Programm schreiben, das den Controller nutzt.
Im Grunde lautet die Antwort also ja. Es ist allerdings nicht ganz einfach und aufwändig.
Viele Grüße
Fabian
vielen dank ich werde versuchen das ev3 Programm mit dem xbox Controller zuverbinden Dankeschön 🙂
stenkhuntxxd sweg. zufall das wir die selben pläne hatten
auch von meiner seite bin ich dankbar
vielen dank
Beitrag ist sehr wertig und interessant! Danke! Ich warte auch, wann es weiter geht!