MFI Example Page
Eine fertige Website-Vorlage, die den Mähbarkeitsindex für Ihren Standort anzeigt. Sie holt automatisch Wetterdaten, lässt daraus über die MFI API den Indexwert berechnen und stellt das Ergebnis verständlich dar. Sie laden die Dateien auf Ihren Webspace, durchlaufen einen Einrichtungsassistenten im Browser – fertig.
Sehen, was dabei herauskommt: mep.maehbarkeitsindex.de – eine laufende Installation dieser Vorlage.
Vom Zugangsschlüssel zur fertigen Seite
Der Mähbarkeitsindex bewertet anhand von Wetterdaten, ob gerade gemäht werden sollte. Wer ihn auf der eigenen Website zeigen möchte, kann die MFI API nutzen – steht dann aber vor derselben Arbeit: Wetterdaten beschaffen, in das richtige Format bringen, das Ergebnis speichern und ansprechend darstellen.
Genau diesen Teil nimmt die MFI Example Page ab. Sie ist kein Plugin und kein Baukasten, sondern eine vollständige, lauffähige Website: ein Satz Dateien, den Sie auf Ihren eigenen Webspace legen und danach frei umbauen können.
Was im Hintergrund passiert
- 1. Wetterdaten für Ihren Standort abrufen
- 2. Werte in das Format der MFI API bringen und um eigene Langzeitwerte ergänzen
- 3. Berechnung bei der MFI API anfragen
- 4. Ergebnis in der eigenen Datenbank speichern
- 5. Ergebnis auf der Website anzeigen
Das läuft automatisch im Hintergrund – Besucher sehen immer den zuletzt berechneten Stand.
Was Sie am Ende sehen
Eine Seite mit einer Empfehlung im Klartext, dem Indexwert von 0 bis 100 mit Farbskala und den einzelnen Prüfungen samt Begründung – etwa warum der Rasen gerade zu nass ist oder ob die Temperatur passt. Dazu auf Wunsch eine Tabelle der Messwerte, die in die Berechnung eingeflossen sind.
Am schnellsten überzeugt ein Blick auf das laufende Beispiel.
Live-Beispiel
Unter mep.maehbarkeitsindex.de läuft eine unveränderte Installation dieser Vorlage – genau das, was Sie nach dem Einrichtungsassistenten vor sich haben. Die Seite zeigt den aktuellen Indexwert, die ausgeführten Prüfungen und die gesendeten Messwerte, ohne dass dort etwas angepasst wurde.
Bewusst nicht enthalten: weitere Wetterquellen, Verlaufsdiagramme, Mehrsprachigkeit, mehrere Standorte gleichzeitig, ein einbettbares Widget und ausformulierte Rechtstexte. Die Vorlage bleibt schlank, damit sie verständlich und erweiterbar bleibt.
Ist das etwas für mich?
Die Vorlage richtet sich an beide Seiten – an Menschen, die einfach eine funktionierende Seite möchten, und an solche, die tiefer eingreifen wollen.
Wenn Sie wenig Technikerfahrung haben
Sie brauchen keine Programmierkenntnisse. Nötig ist, dass Sie Dateien auf Ihren Webspace hochladen können und im Kundenmenü Ihres Hosters eine Datenbank anlegen. Alles Weitere erledigt der Einrichtungsassistent im Browser: Er prüft jede Eingabe sofort und sagt Ihnen in verständlichen Worten, was noch fehlt.
- Aufwand: etwa 15 bis 30 Minuten
- Benötigt: Webspace, FTP-Zugang, zwei kostenlose Zugangsschlüssel
- Nicht benötigt: Programmierkenntnisse, Kommandozeile, Git
Wenn Sie entwickeln
Vanilla PHP ohne Framework, ohne Composer, ohne Build-Schritt. Klar getrennte Schichten für Wetterquelle, API-Zugriff, Datenhaltung und Darstellung, eigener Autoloader, durchgehend typisiert. Der Code ist bewusst ausführlich kommentiert, weil er zum Weiterbauen gedacht ist.
- Eigene Wetterquelle über eine schmale Schnittstelle ergänzbar
- Ausgabe über einzelne Bausteine frei platzierbar
- Eigene Anpassungen bleiben bei Updates erhalten
Was die Vorlage mitbringt
Alles ist fertig eingerichtet und im laufenden Betrieb erprobt.
Vollständige MFI-Darstellung
Empfehlung im Klartext, Indexwert mit Farbskala, alle fünf Prüfungen mit den deutschen Begründungen der API sowie Angaben dazu, wann zuletzt gemessen wurde.
Frei platzierbare Bausteine
Die Ausgabe besteht aus drei Bausteinen, die sich einzeln auf jeder Seite einsetzen lassen – auf der Startseite, einer Unterseite oder beidem.
Einrichtung im Browser
Vier geführte Schritte. Jede Eingabe wird mit echten Verbindungen geprüft, nicht nur auf Vollständigkeit. Am Ende entfernt sich der Assistent selbst.
Wetterdaten inklusive
Die Daten kommen aus dem kostenfreien OpenWeather-Zugang und werden automatisch in das Format der MFI API übersetzt. Sie müssen nichts umrechnen.
Langzeitwerte aus eigener Historie
Regensummen, Zeit seit dem letzten Regen und Tiefsttemperaturen berechnet die Vorlage aus den gespeicherten Läufen – Werte, die die Wetterquelle selbst nicht liefert.
Zwei Betriebsarten
Zeitgesteuert im Hintergrund oder beim Seitenaufruf. Damit läuft die Vorlage auch bei Hostern ohne Cronjob-Funktion.
Schutz vor Überlastung
Sperre gegen gleichzeitige Läufe, Mindestabstand zwischen zwei Aktualisierungen und ein hartes Tageslimit. So laufen Sie nicht versehentlich in Grenzen der Dienste.
Eigene Seiten ohne Umwege
Eine Datei im richtigen Ordner ablegen genügt – Adresse, Navigation, Meta-Angaben und Sitemap ziehen automatisch nach.
Updates ohne Verluste
Ihre Seiten, Ihre Gestaltung und Ihre Konfiguration liegen getrennt vom mitgelieferten Bestand und überstehen jede neue Fassung.
Barrierefrei
WCAG 2.2 AA in hellem und dunklem Design, nachgemessene Kontraste, Status nie nur über Farbe erkennbar, vollständig ohne Maus und ohne JavaScript bedienbar.
Datensparsam
Keine Cookies im laufenden Betrieb, kein Tracking, keine externen Schriftarten oder Fremdinhalte. Alles liegt auf Ihrem eigenen Server.
Für Suchmaschinen vorbereitet
Meta-Angaben, Vorschaubilder für soziale Netzwerke und strukturierte Daten sind gesetzt;
sitemap.xml und
robots.txt
entstehen automatisch.
Saubere Fehlerbehandlung
Besucher sehen nie Serverpfade oder technische Fehlermeldungen. Einzelheiten landen in einer Protokolldatei, die nur Sie einsehen.
Diagnose auf einen Schlag
Ein mitgeliefertes Prüfwerkzeug kontrolliert Umgebung, Datenbank, Erreichbarkeit der API und Schreibrechte in einem Durchlauf und benennt Probleme konkret.
Was Sie brauchen
Ein gewöhnliches Webhosting-Paket mit PHP und MySQL genügt – nichts Besonderes, nichts Teures. Composer, npm und Build-Werkzeuge werden nicht benötigt.
| Anforderung | Details |
|---|---|
| PHP | ab Version 8.5 mit den Erweiterungen pdo_mysql, curl, json, mbstring |
| Datenbank | MySQL ab 8.0 oder MariaDB ab 10.4 |
| Webserver | Apache mit mod_rewrite; die nötige Konfigurationsdatei liegt bei |
| MFI-Zugangsschlüssel | kostenlos über die Registrierung |
| Wetter-Zugangsschlüssel | kostenlos bei OpenWeather – Hintergründe unter OpenWeather-Anbindung |
Kurz erklärt, falls die Begriffe neu sind
- PHP ist die Programmiersprache, in der die Vorlage geschrieben ist. Nahezu jedes Hosting-Paket bietet sie an; entscheidend ist die Version.
- Datenbank meint den Ort, an dem die berechneten Werte gespeichert werden. Bei den meisten Hostern legen Sie eine im Kundenmenü mit wenigen Klicks an und erhalten Name, Benutzer und Passwort.
- Zugangsschlüssel (auch API-Key) ist eine lange Zeichenfolge, mit der sich Ihre Website bei einem Dienst ausweist – vergleichbar mit einem Passwort, das nur Ihr Server kennt.
- FTP ist der übliche Weg, Dateien auf einen Webspace zu übertragen. Die Zugangsdaten stehen ebenfalls im Kundenmenü Ihres Hosters.
Beide Schlüssel früh beantragen: MFI-Zugangsschlüssel werden nach der Registrierung von Hand freigeschaltet. Frisch erstellte OpenWeather-Schlüssel brauchen erfahrungsgemäß einige Stunden, bis sie funktionieren. Beides erledigen Sie am besten, bevor Sie mit der Installation beginnen.
Hochladen und Assistent durchlaufen
Es gibt zwei Wege, an die Dateien zu kommen. Variante B ist der einfachere und kommt ohne Kommandozeile aus – wählen Sie diese, wenn Ihnen Git nichts sagt.
Variante A – mit Git
Für alle, die einen Shell-Zugang haben und später bequem aktualisieren möchten.
git clone https://github.com/CSWebations/mfi-example-page.git cd mfi-example-page
Anschließend das Verzeichnis auf den Server bringen oder direkt dort klonen. Aktualisiert
wird später mit git pull;
eigene Inhalte bleiben dabei unangetastet.
Variante B – Download und FTP
- 1. Auf der Projektseite auf die grüne Schaltfläche Code klicken und Download ZIP wählen. Eine bestimmte Fassung finden Sie unter Releases.
- 2. Das Archiv auf dem eigenen Rechner entpacken.
- 3. Den Inhalt des entpackten Ordners per FTP auf den Server laden – nicht den Ordner selbst.
-
4. Dem Verzeichnis
var/Schreibrechte geben (in den meisten FTP-Programmen per Rechtsklick, Wert0775). Dort legt die Vorlage ihre Protokoll- und Sperrdateien ab.
Wohin genau? Der Ordner
public/
enthält alles, was Besucher sehen dürfen, und sollte deshalb Ihr öffentliches
Webverzeichnis sein. Die übrigen Ordner liegen eine Ebene darüber und sind so aus dem
Internet gar nicht erst erreichbar. Lässt sich das bei Ihrem Hoster nicht einstellen,
gibt es einen dokumentierten Weg drumherum – siehe die Frage dazu im
FAQ weiter unten.
Danach: der Einrichtungsassistent
Rufen Sie Ihre Domain im Browser auf. Solange noch keine Konfiguration vorhanden ist, landen Sie automatisch beim Assistenten. Er prüft jede Eingabe sofort mit einer echten Verbindung – Sie erfahren also direkt, ob ein Passwort oder ein Schlüssel stimmt.
| Schritt | Inhalt |
|---|---|
| 1 – System | PHP-Version, Erweiterungen und Schreibrechte werden geprüft |
| 2 – Datenbank | Zugangsdaten werden sofort ausprobiert, nicht nur auf Vollständigkeit geprüft |
| 3 – Zugänge | MFI API und OpenWeather werden mit echten Abrufen getestet |
| 4 – Website | Name, Adresse, Standort, Betriebsart und Aktualisierungsintervall |
Zum Abschluss schreibt der Assistent die Konfiguration, legt die Datenbanktabelle an, berechnet den ersten Indexwert, zeigt Ihnen die passende Cron-Zeile mit Ihrem Serverpfad und löscht sich anschließend selbst – damit ihn später niemand erneut aufrufen kann.
Sie sind allein am Zug: Der erste Aufruf reserviert die Einrichtung für
Ihren Browser – alle anderen sehen bis zum Abschluss nur einen Hinweis. Eine Frist gibt
es nicht: Sie können jederzeit unterbrechen, Zugangsdaten heraussuchen und später
weitermachen. Kommen Sie selbst nicht mehr an die begonnene Einrichtung heran, löschen
Sie die Datei var/setup-claim.json.
Alles in einer einzigen Datei
Sämtliche Einstellungen stehen in
config.php –
außerhalb des öffentlichen Verzeichnisses, sodass niemand sie über das Internet lesen kann.
Der Assistent erzeugt die Datei; danach lässt sich jeder Wert von Hand ändern. Als
Nachschlagewerk dient die ausführlich kommentierte Vorlage
config.sample.php.
Nach der Einrichtung müssen Sie hier normalerweise nichts anfassen.
| Block | Wichtige Schlüssel | Bedeutung |
|---|---|---|
| site | name, url, description, locale, og_image, logo, logo_dark | Name, Adresse, Logo und Angaben für Suchmaschinen |
| mfi_api | api_key, endpoint, health_endpoint, timeout_seconds | Zugang zur MFI API |
| weather | provider | Wetterquelle, ausgeliefert mit openweather |
| weather.location | name, key, latitude, longitude | Standort, für den gerechnet wird |
| weather.openweather | api_key, endpoint, timeout_seconds, max_calls_per_day | Wetterzugang und Tageslimit (Standard 200 Abrufe) |
| database | host, port, name, user, password, charset | Verbindung zur Datenbank |
| display.checks | temperature, soiltemp, rain, wind, humidity | Welche der fünf Prüfungen angezeigt werden |
| runtime | mode, update_interval_seconds, stale_after_seconds, retention_days, cron_token, timezone, debug | Betriebsart, Intervalle und Aufbewahrungsdauer |
Wichtig: Die
config.php
enthält Ihre Zugangsdaten im Klartext. Sie darf niemals öffentlich zugänglich sein und
gehört nicht in ein öffentliches Repository. Solange sie an ihrem vorgesehenen Platz
liegt, ist sie aus dem Internet nicht erreichbar.
Prüfungen ein- und ausblenden
Jede der fünf MFI-Einzelprüfungen lässt sich einzeln steuern:
| Wert | Wirkung |
|---|---|
| auto | nur zeigen, wenn die Prüfung ausgeführt wurde (Standard) |
| always | immer zeigen, auch als „nicht bewertet" |
| never | nie zeigen |
Mit der Voreinstellung auto
verschwindet der Bodentemperatur-Check von selbst, weil der kostenfreie OpenWeather-Zugang
keine Bodenwerte liefert.
Wie die Werte aktuell bleiben
Damit die Anzeige nicht veraltet, müssen regelmäßig neue Wetterdaten geholt und neu gerechnet werden. Dafür gibt es zwei Wege – die Wahl treffen Sie im Assistenten und können sie jederzeit ändern.
Zeitgesteuert im Hintergrund – empfohlen
Ein Cronjob ist eine Aufgabe, die Ihr Server in festen Abständen von selbst ausführt. Er aktualisiert die Daten im Hintergrund, die Website liest nur noch aus der Datenbank. Seitenaufrufe bleiben dadurch schnell und lösen keine Abfragen aus. Die passende Zeile zeigt Ihnen der Assistent fertig an; sie wird im Kundenmenü des Hosters eingetragen.
*/15 * * * * /usr/bin/php /pfad/zum/projekt/bin/update.php --quiet
Bietet Ihr Hoster keine Cronjobs an, übernimmt ein externer Cron-Dienst den regelmäßigen Aufruf einer geschützten Adresse Ihrer Website. Das nötige Token erzeugt der Assistent; ohne Token verweigert die Adresse jeden Zugriff.
https://ihre-domain.de/cron.php?token=IHR_TOKEN
Beim Seitenaufruf
Ganz ohne Cronjob: Sind die Daten älter als das eingestellte Intervall, werden sie beim nächsten Besuch erneuert. Der Nachteil – der erste Besucher danach wartet kurz auf die beiden Abfragen. Eine Sperre verhindert, dass gleichzeitige Zugriffe mehrere Aktualisierungen gleichzeitig auslösen.
Befehle für die Kommandozeile
Optional – nur nötig, wenn Sie einen Shell-Zugang haben und gezielt eingreifen möchten.
php bin/check-setup.php # Einrichtung prüfen (mit --full inkl. Testabruf) php bin/update.php --force # sofort aktualisieren, Mindestabstand ignorieren php bin/cleanup.php # alte Datensätze entfernen
Nicht zu häufig abfragen: Die MFI API lässt pro Zugangsschlüssel standardmäßig nur alle 300 Sekunden eine Berechnung zu. Kürzere Abstände werden mit einer Fehlermeldung abgewiesen. Fünfzehn Minuten sind ein guter Ausgangswert – Einzelheiten stehen unter Regeln & Rate Limits.
Eigene Inhalte, eigenes Aussehen
Die Vorlage ist zum Umbauen gedacht. Die folgenden Abschnitte setzen etwas PHP-Verständnis voraus – für den reinen Betrieb sind sie nicht nötig.
Den MFI frei platzieren
Die Ausgabe besteht aus drei Bausteinen, die auf jeder eigenen Seite zur Verfügung stehen. Die Reihenfolge ist frei wählbar, einzelne Bausteine dürfen entfallen, eigene Abschnitte dazwischenstehen.
<?= mfi_result() ?> // Empfehlung, Indexwert, Prüfungen, Angaben zur Messung <?= mfi_explain() ?> // Erklärkasten „Was bedeutet das?" <?= mfi_input_table() ?> // Tabelle der an die API gesendeten Messwerte
Für eigene Logik stehen zusätzlich
mfi_has_result() und
mfi_data() bereit.
Letzteres liefert unter anderem score(),
mainStatus(),
dataQuality(),
season() und
checks().
<?php if (mfi_has_result()): ?> <p>Aktueller Wert: <?= mfi_data()->score() ?> von 100</p> <?php endif; ?>
Eigene Seiten anlegen
Eine neue Seite entsteht durch eine neue Datei im Ordner
pages/.
Der Dateiname wird zur Adresse: aus
pages/rasenpflege.php
wird /rasenpflege.
Ein kurzer Kommentarkopf steuert alles Weitere – Navigation und Sitemap ziehen automatisch nach.
<?php /** * Title: Rasenpflege im Sommer * Description: Worauf es beim Mähen an heißen Tagen ankommt. * Nav: Rasenpflege * NavOrder: 30 * Sitemap: 0.6 monthly */ ?>
Nav steuert die
Beschriftung in der Navigation – fehlt die Angabe, taucht die Seite dort nicht auf.
NavOrder sortiert
(kleiner heißt weiter vorn), Sitemap
setzt Priorität und Änderungshäufigkeit, und
Noindex nimmt die
Seite aus dem Suchmaschinenindex.
Was Updates übersteht
Alles Eigene liegt getrennt vom mitgelieferten Bestand. Eine Datei aus der rechten in die linke Spalte zu kopieren genügt, um sie zu übernehmen – ab dann gilt Ihre Fassung, und das Original darf sich bei Updates weiterentwickeln.
| Ihr Bereich | Mitgeliefertes Gegenstück |
|---|---|
| pages/ | pages-default/ |
| public/assets/css/user-style.css | user-style.example.css |
| config.php | config.sample.php |
Farben, Logo und Texte
Farben und Abstände laufen über eine eigene Stylesheet-Datei, die nach dem mitgelieferten
Design geladen wird und damit jeden Konflikt gewinnt; die beiliegende Vorlage listet alle
Variablen auskommentiert auf. Die Voreinstellungen erfüllen WCAG 2.2 AA in beiden Designs –
wer Farben ersetzt, sollte die Kontraste nachmessen (mindestens 4,5:1 für Text, 3:1 für
grafische Elemente). Ein Logo tragen Sie in der Konfiguration ein, bei Bedarf mit eigener
Fassung für das dunkle Design. Sämtliche sichtbaren Texte des Grundgerüsts stehen gesammelt
in src/lang/de.php.
Impressum und Datenschutzerklärung müssen Sie selbst anlegen. Beide sind für den Betrieb einer Website in aller Regel verpflichtend, hängen aber von Rechtsform, Hosting und eingesetzten Diensten ab – deshalb kann die Vorlage sie nicht mitliefern. Sie werden wie jede andere eigene Seite angelegt; lassen Sie die Texte im Zweifel rechtlich prüfen.
Was die Wetterquelle liefert – und was ergänzt wird
Der kostenfreie OpenWeather-Zugang liefert Temperatur, Luftfeuchtigkeit, Wind, Böen und den Niederschlag der letzten Stunde. Bodentemperatur und Bodenfeuchte fehlen. Ohne diese Werte überspringt die MFI API den Bodencheck und weist die Datenqualität als „teilweise" aus – vier der fünf Prüfungen laufen also, was für eine belastbare Einschätzung genügt.
Fehlende Langzeitwerte errechnet die Vorlage selbst aus ihren gespeicherten Läufen:
| Wert | Woher er kommt |
|---|---|
| Regenmenge der letzten 12 h, 24 h und 14 Tage | Summe stündlicher Stichproben |
| Zeit seit dem letzten Regen | Abstand zur letzten Messung mit Niederschlag |
| Tiefsttemperatur der letzten 3 h, 3 Tage und 14 Tage | niedrigster Wert im jeweiligen Zeitfenster |
Ein solcher Wert wird nur an die API gesendet, wenn das Zeitfenster zu mindestens 80 Prozent mit Messungen belegt ist. Direkt nach der Installation fehlen die längeren Zeiträume daher noch – sie kommen nach und nach dazu, sobald sich die Historie aufgebaut hat. In der Messwert-Tabelle ist jederzeit erkennbar, welcher Wert von der Quelle stammt und welcher errechnet wurde.
Welche Prüfungen mit welchen Daten laufen und wie sich die Datenlage auf den Indexwert auswirkt, beschreiben die Seiten OpenWeather-Anbindung und Gesamt-Indexwert.
Typische Meldungen und was dahintersteckt
| Meldung | Ursache und Abhilfe |
|---|---|
| „Website noch nicht eingerichtet" | Konfiguration fehlt oder ist unvollständig – Assistent unter /setup.php aufrufen |
| „Die Einrichtung läuft bereits" | Der Assistent gehört einem anderen Browser – var/setup-claim.json löschen |
| „Noch kein Mähbarkeitsindex verfügbar" | Es gab noch keinen erfolgreichen Lauf – Aktualisierung anstoßen oder auf den nächsten Cronjob warten |
| HTTP 401 | MFI-Zugangsschlüssel falsch oder nicht übernommen |
| HTTP 403 | Schlüssel noch nicht freigeschaltet oder deaktiviert; die Freischaltung erfolgt manuell |
| HTTP 422 | Pflichtangaben fehlen – die Wetterquelle liefert keine Temperatur oder keinen Niederschlag |
| HTTP 429 | Zu häufig abgefragt – Intervall erhöhen |
| HTTP 503 | Wartungsmodus der API – später erneut versuchen |
| OpenWeather 401 | Neue Schlüssel werden erst nach einigen Stunden aktiv |
Fehler erreichen den Browser nie im Klartext. Erste Anlaufstelle ist die Protokolldatei
var/error.log;
dort stehen Meldung, Datei, Zeile und Aufrufweg. Fehlgeschlagene Läufe werden zusätzlich mit
ihrer Fehlermeldung in der Datenbank festgehalten. Für die Fehlersuche lässt sich
runtime.debug
vorübergehend einschalten – im Regelbetrieb gehört der Wert auf
false, sonst
werden Serverpfade für jeden Besucher sichtbar.
Häufige Fragen
Von den Grundlagen bis zu den technischen Feinheiten.
Eine vollständige, lauffähige Website. Sie holt selbstständig Wetterdaten, lässt daraus den Mähbarkeitsindex berechnen und zeigt das Ergebnis an – mit Empfehlung im Klartext, Indexwert und den Begründungen der einzelnen Prüfungen. Es ist kein Baukasten und kein Plugin für ein bestehendes System, sondern ein fertiger Satz Dateien, den Sie auf Ihren eigenen Webspace legen. Wie das Ergebnis aussieht, zeigt das laufende Beispiel unter mep.maehbarkeitsindex.de.
Für die Vorlage selbst fallen keine Kosten an. Der Zugang zur MFI API ist kostenfrei, ebenso der benötigte OpenWeather-Zugang in dem hier genutzten Umfang. Bezahlen müssen Sie nur Ihr eigenes Webhosting, sofern Sie noch keines haben.
Sie sollten Dateien auf einen Webspace hochladen können und wissen, wo Sie im Kundenmenü Ihres Hosters eine Datenbank anlegen. Programmierkenntnisse sind für die Einrichtung nicht nötig – der Assistent führt durch alle Schritte und prüft jede Eingabe. Für eigene Erweiterungen sind PHP-Grundkenntnisse hilfreich.
Wenn beide Zugangsschlüssel bereits vorliegen und die Datenbank angelegt ist, sind es meist 15 bis 30 Minuten. Rechnen Sie zusätzlich Wartezeit für die Schlüssel ein: MFI-Zugangsschlüssel werden von Hand freigeschaltet, neue OpenWeather-Schlüssel brauchen einige Stunden, bis sie funktionieren.
Nötig sind PHP ab Version 8.5, eine MySQL-Datenbank ab 8.0 oder MariaDB ab 10.4 und ein Apache-Webserver. Diese Angaben stehen in der Leistungsübersicht Ihres Hosters. Im Zweifel laden Sie die Dateien einfach hoch: Der erste Schritt des Einrichtungsassistenten prüft die Umgebung und sagt Ihnen genau, was fehlt.
Ein API-Key ist ein Zugangsschlüssel – eine lange Zeichenfolge, mit der sich Ihre Website bei der MFI API ausweist. Sie beantragen ihn kostenlos über das Registrierungsformular. Nach der Bestätigung Ihrer E-Mail-Adresse wird der Schlüssel von Hand freigeschaltet. Bewahren Sie ihn wie ein Passwort auf.
Ein Cronjob ist eine zeitgesteuerte Aufgabe, die der Server regelmäßig von selbst ausführt – hier alle 15 Minuten das Abrufen neuer Wetterdaten. Bietet Ihr Hosting keinen Cronjob, gibt es zwei Alternativen: die Betriebsart „beim Seitenaufruf", bei der die Daten erneuert werden, sobald jemand die Seite besucht, oder ein externer Cron-Dienst, der eine tokengeschützte Adresse Ihrer Website aufruft.
Der DocumentRoot ist das Verzeichnis, dessen Inhalt Ihr Webserver nach außen sichtbar
macht. Idealerweise zeigt er auf den Ordner
public/,
damit Konfiguration und Programmcode gar nicht erst erreichbar sind. Lässt sich das bei
Ihrem Hoster nicht einstellen, verschieben Sie den Inhalt von
public/
in Ihr Webverzeichnis und die übrigen Ordner eine Ebene darüber; in zwei Dateien ist dann
ein Pfad anzupassen. Die mitgelieferte Serverkonfiguration sperrt vorsorglich auch dann
den Zugriff auf Konfigurations-, Datenbank- und Protokolldateien.
Nein. Sie können alle Dateien per FTP hochladen und die Einrichtung vollständig im Browser erledigen. Ein Shell-Zugang ist nur bequemer, wenn Sie das Projekt per Git aktuell halten oder die Wartungsbefehle direkt aufrufen möchten.
Voreingestellt sind 15 Minuten. Kürzere Abstände sind nicht sinnvoll: Die MFI API lässt pro Zugangsschlüssel standardmäßig nur alle 300 Sekunden eine Berechnung zu und antwortet sonst mit einer Fehlermeldung. Zusätzlich begrenzt die Vorlage die Wetterabrufe auf 200 pro Tag, damit Sie nicht versehentlich in die Grenzen des kostenfreien Zugangs laufen.
Der kostenfreie OpenWeather-Zugang liefert keine Bodentemperatur und keine Bodenfeuchte. Ohne diese Werte überspringt die MFI API den Bodencheck und weist die Datenqualität als „teilweise" aus. Die Vorlage blendet den Check deshalb standardmäßig automatisch aus – das ist kein Fehler, sondern gewolltes Verhalten.
Langzeitwerte wie die Regenmenge der letzten 14 Tage berechnet die Vorlage aus ihren eigenen gespeicherten Läufen. Diese Historie muss sich erst aufbauen. Ein abgeleiteter Wert wird erst gesendet, wenn das jeweilige Zeitfenster zu mindestens 80 Prozent belegt ist – die längeren Fenster kommen also nach und nach dazu.
Ja, das ist vorgesehen, erfordert aber PHP-Kenntnisse. Die Wetterquelle steckt hinter einer klar abgegrenzten Schnittstelle: Sie legen eine eigene Klasse im Ordner für Wetterquellen an und tragen sie in der Übersicht der verfügbaren Quellen ein. Mit einer eigenen Station stehen dann meist auch Bodenwerte zur Verfügung, sodass alle fünf Prüfungen laufen und die Datenqualität steigt.
Nicht ohne Anpassung. Die Vorlage ist bewusst auf einen Standort ausgelegt, damit sie übersichtlich bleibt. Die Datenbank führt allerdings bereits eine Standortkennung mit, sodass eine Erweiterung möglich ist.
Ja. Farben und Abstände ändern Sie über eine eigene Stylesheet-Datei, die nach dem mitgelieferten Design geladen wird; eine kommentierte Vorlage mit allen Variablen liegt bei. Ein eigenes Logo tragen Sie in der Konfiguration ein, alle sichtbaren Texte stehen gesammelt in einer Sprachdatei. Wer Farben ersetzt, sollte die Kontraste nachmessen, damit die Barrierefreiheit erhalten bleibt.
Ja. Ihre eigenen Seiten, Ihre Gestaltung und Ihre Konfiguration liegen in Bereichen, die von der Versionsverwaltung ausgenommen sind. Die mitgelieferten Gegenstücke dürfen sich bei Updates weiterentwickeln, ohne Ihre Fassung zu überschreiben.
In aller Regel ja – beides ist für den Betrieb einer Website meist verpflichtend. Die Vorlage liefert die Texte bewusst nicht mit, weil sie von Rechtsform, Hosting und eingesetzten Diensten abhängen. Sie legen die Seiten wie jede andere eigene Seite an und lassen die Texte im Zweifel rechtlich prüfen.
Im laufenden Betrieb nicht. Es gibt kein Tracking, keine externen Schriftarten und keine eingebundenen Fremdinhalte – alle Dateien liegen auf Ihrem Server. Ein einziges technisches Cookie wird während der Einrichtung gesetzt, um den Assistenten vor fremdem Zugriff zu schützen. Ihre Website selbst ruft im Hintergrund OpenWeather und die MFI API auf; für Ihre eigene Datenschutzerklärung ist das relevant.
Ja. Es gelten die Nutzungsbedingungen der MFI API; unter anderem ist die Quelle anzugeben. Das mitgelieferte Badge im Fußbereich der Vorlage erfüllt diese Anforderung bereits, weitere Varianten stehen im Styleguide bereit.
Erste Anlaufstelle ist das mitgelieferte Diagnosewerkzeug, das Umgebung, Datenbank, Erreichbarkeit der API und Schreibrechte in einem Durchlauf prüft und Probleme konkret benennt. Bleibt eine Frage offen, helfen die Diskussionen und der Issue-Tracker des Projekts weiter. Fragen zur API selbst beantwortet die API-FAQ.
Loslegen
Zugangsschlüssel beantragen, Vorlage herunterladen, Assistent durchlaufen – mehr braucht es nicht für eine eigene Seite mit dem Mähbarkeitsindex. Ein laufendes Beispiel steht unter mep.maehbarkeitsindex.de.