Jump to content

Erweiterung:MobileFrontend

From mediawiki.org
This page is a translated version of the page Extension:MobileFrontend and the translation is 97% complete.
MediaWiki-Erweiterungen
MobileFrontend
Freigabestatus: stabil
Einbindung Benutzer-Schnittstelle, Hook
Beschreibung Stellt eine für Mobilgeräte geeignete Ansicht bereit
Autor(en)
Letzte Version 2.4.1
Kompatibilitätspolitik Snapshots werden zusammen mit MediaWiki veröffentlicht. Der Master ist nicht abwärtskompatibel.
MediaWiki 1.33+[1]
PHP 5.5.9+
Lizenz GNU General Public License 2.0 oder neuer
Herunterladen
README
Beispiel m.mediawiki.org
  • $wgMFSearchGenerator
  • $wgMFStopRedirectCookieHost
  • $wgMFShowMobileViewToTablets
  • $wgMFLazyLoadImages
  • $wgMFRSSFeedLink
  • $wgMFNamespacesWithLeadParagraphs
  • $wgMFAmcOutreachMinEditCount
  • $wgMFEnableMobilePreferences
  • $wgMFMobileFormatterOptions
  • $wgMFRemovableClasses
  • $wgMFNoindexPages
  • $wgMFShowFirstParagraphBeforeInfobox
  • $wgMFEnableVEWikitextEditor
  • $wgMFVaryOnUA
  • $wgMFLogWrappedInfoboxes
  • $wgMFDisplayWikibaseDescriptions
  • $wgMFEnableJSConsoleRecruitment
  • $wgMobileFrontendFormatCookieExpiry
  • $wgMFLazyLoadSkipSmallImages
  • $wgMFSearchAPIParams
  • $wgMFMobileHeader
  • $wgMFCustomSiteModules
  • $wgMFEnableXAnalyticsLogging
  • $wgMFAutodetectMobileView
  • $wgMFSiteStylesRenderBlocking
  • $wgDefaultMobileSkin
  • $wgMFUseDesktopSpecialEditWatchlistPage
  • $wgMFCollapseSectionsByDefault
  • $wgMFEnableFontChanger
  • $wgMFScriptPath
  • $wgMFEditNoticesConflictingGadgetName
  • $wgMFStopMobileRedirectCookieSecureValue
  • $wgMFAdvancedMobileContributions
  • $wgMFFallbackEditor
  • $wgMFEnableBeta
  • $wgMFSpecialPageTaglines
  • $wgMFQueryPropModules
  • $wgMFAmcOutreach
  • $wgMFBetaFeedbackLink
  • $wgMFDefaultEditor
  • $wgMFManifestBackgroundColor
  • $wgMFManifestThemeColor
  • $wgMFEnableManifest
  • $wgMFEnableWikidataDescriptions
  • $wgMFUseWikibase
  • $wgMFNamespacesWithoutCollapsibleSections
  • $wgMFTrackBlockNotices
  • $wgMobileUrlCallback
  • $wgMFMinCachedPageSize
Quarterly downloads 798 (Ranked 3rd)
Public wikis using 9,025 (Ranked 14th)
Übersetze die MobileFrontend-Erweiterung, wenn sie auf translatewiki.net verfügbar ist
Probleme Offene Aufgaben · Einen Fehler melden

Die MobileFrontend-Erweiterung verbessert das Aussehen einer MediaWiki-Instanz auf mobilen Endgeräten.

Merkmale:

  • erstellt eine separate mobile Seite für den mobilen Datenverkehr;
    • Systemadministratoren können einen anderen Skin bereitstellen, z. B. Skin:Minerva Neue .
  • bietet verschiedene Inhaltsumwandlungen, um die Inhalte ansprechender zu gestalten,
    • insbesondere das Reduzieren von Abschnitten und das Neuanordnen und Entfernen von Inhalten, einschließlich des Platzierens des Hauptabsatzes über dem Hauptfoto oder der Infobox, selbst wenn der Hauptabsatz im Quellcode der Seite darunter liegt.
  • vereinfacht die mobile Fußzeile und fügt einen Link zur Desktop- bzw. mobilen Seite hinzu;
  • stellt einen Beta-Modus mit einem Feature-Management-System für das Hinzufügen von experimentellen Funktionen für anonyme Benutzer bereit.

Diese Seite richtet sich an Endbenutzer, die diese Erweiterung auf ihrer Entwicklungsinstanz installieren möchten. Wenn du uns beim Aufbau und der Verbesserung helfen möchtest, empfehlen wir dir, dich zu engagieren.

Voraussetzungen

Wenn du vor der Installation von MobileFrontend intensiv Vorlagen und/oder Inline-Styles (das style-Attribut) verwendest, solltest du deinen Inhalt überprüfen, um festzustellen, ob er mobilfreundlich ist. Die Erweiterung TemplateStyles kann verwendet werden, um Inhalte so zu gestalten, dass sie auf mobilen Geräten und auf dem Desktop gut dargestellt werden. MobileFrontend wird das nicht magisch für dich beheben!

Insbesondere solltest du deine Startseite (Hauptseite) überprüfen. Siehe Mobile Homepage-Formatierung.

Installation

  • Die Erweiterung herunterladen und die Datei(en) in ein Verzeichnis namens MobileFrontend im Ordner extensions/ ablegen.
    Entwickler und Code-Beitragende sollten stattdessen die Erweiterung von Git installieren, mit:cd extensions/
    git clone https://gerrit.wikimedia.org/r/mediawiki/extensions/MobileFrontend
  • Folgenden Code am Ende deiner LocalSettings.php -Datei einfügen:
    wfLoadExtension( 'MobileFrontend' );
    
  • Falls erforderlich nach Belieben konfigurieren
  • Yes Erledigt – Navigiere zu Special:Version in deinem Wiki, um zu überprüfen, ob die Erweiterung erfolgreich installiert wurde.


Vagrant-Installation:

  • Wird Vagrant benutzt, ist mit vagrant roles enable mobilefrontend --provision zu installieren

In der Nähe-Funktion einrichten

Die In der Nähe-Funktion wurde in MediaWiki 1.40 entfernt. Stattdessen ist eine umgeschriebene Version dieser Funktion in Erweiterung:NearbyPages erhältlich.

Mit einigen Anpassungen stellt MobileFrontend auch die Seite Spezial:In_der_Nähe (kanonischer Name Special:Nearby) bereit. Um dies zum Laufen zu bringen, sind einige optionale Schritte erforderlich:

  1. Wegen der Browsersicherheit musst du eine sichere Webseite über SSL ausführen — Es ist nicht möglich, den Standort eines Benutzers über HTTP anzufordern.
  2. Installiere die GeoData-Erweiterung
  3. Führe update.php aus
  4. Füge in LocalSettings.php $wgMFNearby = true; hinzu
  5. Bestimme Artikelkoordinaten:
    1. Füge Ortsdaten zu deinen Artikeln hinzu, indem du die Parserfunktion coordinates verwendest, zum Beispiel {{#coordinates:37.786971|-122.399677|primary}}. Für Details zur Syntax siehe die Dokumentation zu GeoData .
    2. Alternativ kannst du für In der Nähe eine separate MediaWiki-Installation verwenden, indem du $wgMFNearbyEndpoint in deiner LocalSettings.php-Datei einstellst. Beispielsweise wird $wgMFNearbyEndpoint = 'https://en.m.wikipedia.org/w/api.php'; die Koordinaten von Artikeln aus der englischen Wikipedia verwenden. Der Endpoint zu In der Nähe wird verwendet, um Inhalte, die sich auf einen gegebenen Standpunkt beziehen, zu finden.

Einen Skin einrichten

MobileFrontend stattet dich zusätzlich zu deiner bereits existierenden Desktop-Webseite mit einer mobil formatierten Webseite aus. Du kannst sie nach deinem Belieben skinnen.

// Wähle hieraus einen Skin aus und füge den Code am Ende der LocalSettings.php-Datei ein:
wfLoadSkin( 'MinervaNeue' );
$wgDefaultMobileSkin = 'minerva'; // verwende den Minerva-Skin (Du musst ihn in 1.37 und älter gesondert herunterladen und installieren, sonst wird eine Fehlermeldung anzezeigt)
wfLoadSkin( 'Vector' );
$wgDefaultMobileSkin = 'vector'; // verwende den Vector-Skin
wfLoadSkin( 'Timeless' );
$wgDefaultMobileSkin = 'timeless'; // verwende den Timeless-Skin

Die folgenden Skins sind mit MobileFrontend kompatibel:

Konfigurationseinstellungen

Siehe Erweiterung:MobileFrontend/Konfiguration

All configuration options are detailed in the README.md file.

Zusätzliche Verbesserungen

Das Beste holt man aus MobileFrontend heraus, indem man diese optionalen kompatiblen Erweiterungen hinzufügt:

Lokale Anpassungen

Gestaltung mit CSS

MediaWiki Version:
1.40

Um CSS auf dein mobiles Design anzuwenden, bearbeite MediaWiki:Mobile.css, das Gegenstück zu MediaWiki:Common.css. Damit das Stylesheet funktioniert, musst du eventuell mw.loader.using('mobile.site.styles') zu MediaWiki:Mobile.js hinzufügen.

MobileFrontend lädt nicht das globale MediaWiki:Common.css und keine der Benutzer-Stylesheets.

Weitere Informationen

Wenn du die mobile Erweiterung in einem Desktop-Browser oder auf einem Gerät, das die mobile Version nicht rendert, testen möchtest, kannst du das folgende Key-Value-Paar zu deiner URL-Abfrage hinzufügen: ?useformat=mobile. Zum Beispiel: https://en.wikipedia.org/wiki/MediaWiki?useformat=mobile

Um die mobile Version einer Seite anzuzeigen, ohne die Erweiterung für die gesamte Website zu aktivieren, kann die Zeichenfolge auch an die URL auf dieser Seite angehängt werden.

Historische Funktionen von MobileFrontend

MobileFrontend ist traditionell eine sehr große Erweiterung. Viele Funktionen haben ihre Anforderungen entweder übertroffen oder werden dies zu einem späteren Zeitpunkt tun. Diese sind unten aufgeführt.

API

APIs werden von der MobileFrontend-Erweiterung bereitgestellt, aber langfristig erwarten wir, dass sie zugunsten von Page Content Service abgewertet werden. Sie verwenden diese APIs auf eigenes Risiko. Sie können entfernt werden (wir benachrichtigen Sie rechtzeitig)!

MobileView API

Siehe Erweiterung:MobileFrontend/MobileViewAPI .

Erweitertes action=parse

action=parse nimmt zusätzliche Parameter entgegen:

mobileformat=
Gibt das HTML der gerenderten Seite in einem mobilen Format zurück 1.23+.
mainpage
Wende mobile Hauptseiten-Umwandlungen an.

Beispiel:

Ergebnis
{
    "parse": {
        "title": "Therion (band)",
	    "text": {
            "*": "<div><table class=\"infobox vcard plainlist\" style=\"width:22em\"><tr><th colspan=\"2\" style=\"text-align:center;font-size:125%;font-weight:bold;background-color: #b0c4de\"><span class=\"fn org\">Therion</span></th>\n</tr><tr><td colspan=\"2\" style=\"text-align:center\"><a href=\"/wiki/File:2130860153_281d30b3bf_b.jpg\" class=\"image\">
            ...

meta=siteinfo

Die Domain der mobilen Version der Site (die möglicherweise nicht der normalen Domain entspricht) ist unter der mobileserver -Taste der allgemeinen Siteinfo-Informationen verfügbar.

Für Entwickler und System-Admins

Einrichtung

Du musst eventuell npm install laufen lassen und PHP Composer installieren, um den Pre-Commit-Hook zum Laufen zu bringen, abhängig davon, was du mit der Erweiterung anstellst.

Testen mit Artikeln in einem fremden Wiki (Live-Daten)

Siehe Extension:MobileFrontendContentProvider .

Mobilansicht verwenden

WMF-Seiten

Auf Wikimedia Foundation-Websites verwenden wir Varnish-Caching-Server, um den Benutzeragenten deines Geräts zu überprüfen.

Nicht-WMF-Seiten

Für nicht durch die WMF betriebene Seiten kannst du deine Konfiguration entweder so einrichten, dass sie die Vorgänge in der WMF nachahmt (Geräteerkennung auf der Proxy-Ebene und bestimmte X-Device-Header festlegen) oder einfach "?Useformat=mobile" verwenden, um für einen Artikel die mobile Ansicht zu nutzen. See Extension:MobileFrontend/Configuring browser auto-detection.

Ab der Snapshot-Version 1.28 wurde der Standardwert $wgMFMobileHeader von X-WAP in X-Subdomain geändert. Du kannst entweder $wgMFMobileHeader = 'X-WAP'; setzen oder die Cache-Einstellungen (Varnish) ändern, solange beide übereinstimmen.

Using Apache (.htaccess or httpd.conf)

To set up a mobile domain, add the following rule to .htaccess or http.config

<IfModule mod_headers.c>
<If "req('Host') =~ /^mobile./i">
RequestHeader set X-Subdomain "mobile"
</If>
</IfModule>

In deiner hosts-Datei (vorausgesetzt, deine Desktopseite ist auf localhost):

127.0.0.1  mobile.localhost

In LocalSettings.php:

wfLoadExtension('MobileFrontend');

$wgMFAutodetectMobileView = true;
$wgMobileUrlCallback = fn( $domain ) => "mobile.$domain";

Wenn du auf mobile.localhost navigierst, solltest du die mobile Seite sehen.

Häufig gestellte Fragen

Die folgenden Fragen tauchen häufig auf unserer Diskussionsseite auf. Bitte überprüfe zunächst diese Liste, bevor du auf der Diskussionsseite schreibst, oder erkundige dich in einem vorhandenen Diskussions-Themenabschnitt, falls verfügbar, um ausführlichere Antworten zu erhalten.

F: Wie passe ich das Hauptmenü des Minerva-Skins an?

A: Dies wird bei Phabricator verfolgt, aber in Topic:Tiggc18fvd3stmsf ist eine Übergangslösung zu sehen.

F: Wie füge ich dem Minerva-Skin HTML hinzu, bspw. um Werbund oder weitere script-Tags hinzuzufügen?

A: Dies kannst du machen, indem du die Template-Datei für den Skin bearbeitest (derzeit ist das include/skins/minerva.mustache). Siehe diese Diskussion für Details.

F: Die Erweiterung, die ich nutze, scheint nicht auf MobileFrontend zu funktionieren. Warum?

A: Wahrscheinlich ist die Erweiterung veraltet und die Kompatibilität mit MobileFrontend muss erst hergestellt werden. Bitte kontaktiere den Entwickler der Erweiterung und zeige ihm ResourceLoader/Writing a MobileFrontend friendly ResourceLoader module. Bitte poste nicht auf der Diskussionsseite, da es in diesem Fall besser wäre, bei Phabricator für schnellere Antworten einen Fehler zu melden (du kannst dich dort unter deinem Benutzernamen von MediaWiki.org anmelden).

F: Ich habe ein Upgrade von MobileFrontend durchgeführt und nun erhalte ich eine kritische Fehlermeldung!

A: Du verwendest wahrscheinlich inkompatible Versionen von MobileFrontend und MediaWiki. In den meisten Fällen können wir dir hierbei nicht helfen. Versuche, ein Upgrade von MobileFrontend oder MediaWiki durchzuführen, um dein Problem zu lösen.

F: Nach dem Upgrade von MediaWiki erhalte ich die Fehlermeldung, dass wgMFDefaultSkinClass nicht richtig eingestellt wurde.

A: MobileFrontend nimmt zurzeit an, dass du den Skin Minerva Neue installiert hast. Wenn das nicht der Fall ist, dann musst du ihn installieren oder deine mobile Oberfläche nach den obenstehenden Anweisungen konfigurieren.

Für Entwickler von Erweiterungen

Standardmäßig werden Ressourcenmodule von Erweiterungen nicht in der mobilen Ansicht geladen.

Wenn es nötig sein sollte, dass ein Modul in der mobilen Ansicht geladen wird, ist diese Anleitung zum Schreiben von durch MobileFrontend unterstützte Erweiterungen von Hilfe.

Siehe auch

Anmerkungen

  1. :Fatal error: Uncaught ExtensionDependencyError: MobileFrontend is not compatible with the current MediaWiki core (version 1.32.2), it requires: >= 1.33.0.