Rozszerzenie:MobileFrontend
MobileFrontend Status wydania: stabilne |
|
---|---|
Realizacja | Interfejs użytkownika, Hak |
Opis | Provides a mobile-friendly view |
Autor(zy) | |
Ostatnia wersja | 2.4.1 |
Polityka zgodności | Snapshots releases along with MediaWiki. Master nie jest kompatybilny wstecznie. |
MediaWiki | 1.33+[1] |
PHP | 5.5.9+ |
Licencja | Licencja GNU General Public License 2.0 lub nowsza |
Pobieranie | README |
Przykład | m.mediawiki.org |
|
|
|
|
Quarterly downloads | 727 (Ranked 3rd) |
Public wikis using | 9,025 (Ranked 14th) |
Przetłumacz rozszerzenie MobileFrontend jeżeli jest dostępne na translatewiki.net | |
Problemy | Otwarte zadania · Zgłoś błąd |
Rozszerzenie MobileFrontend:
This extension is maintained by the Web team. |
Features include:
- Tworzy oddzielną witrynę mobilną dla ruchu mobilnego,
- Administratorzy systemów mogą zapewnić inną skórkę, np. Skin:Minerva Neue .
- zapewnia różne przekształcenia treści, aby uczynić je bardziej przyjaznymi
- W szczególności zwijanie sekcji oraz zmiana kolejności i usuwanie treści, w tym umieszczenie akapitu wiodącego nad zdjęciem wiodącym lub polem informacyjnym, nawet jeśli akapit wiodący znajduje się pod nimi w kodzie źródłowym strony.
- upraszcza stopkę mobilną i dodaje link do strony na komputery/urządzenia mobilne,
- provides a beta mode with a feature management system for adding experimental features for anonymous users.
Ta strona została zaprojektowana z myślą o końcowych użytkownikach chcących zainstalować to rozszerzenie na swoich platformach. Jeżeli chcesz pomóc nam rozwijać lub ulepszać to rozszerzenie, zachęcamy do zaangażowania się. If you are keen to help us build it and improve it we encourage you to get involved.
Wstępna instalacja
Before installing MobileFrontend, if you make heavy use of templates and/or inline styles (the style attribute) you should review your content to see whether it is mobile friendly. The TemplateStyles extension can be used to style content so that it renders nicely on mobile and desktop. MobileFrontend will not magically fix this for you!
In particular, you may want to review your landing page (main page). See Mobile homepage formatting.
Instalacja
- Pobierz i umieść plik(i) w katalogu o nazwie
MobileFrontend
w folderzeextensions/
.
Developers and code contributors should install the extension from Git instead, using:cd extensions/
git clone https://gerrit.wikimedia.org/r/mediawiki/extensions/MobileFrontend - Dodaj poniższy kod na dole twojego pliku LocalSettings.php :
wfLoadExtension( 'MobileFrontend' );
- [[#Configuration settings|* W razie potrzeby odpowiednio skonfiguruj]]
- Zrobione – Przejdź do Special:Version na twojej wiki, aby sprawdzić czy rozszerzenie zostało pomyślnie zainstalowane.
Instalacja Vagranta:
- Jeżeli korzystasz z Vagrant a, zainstaluj poprzez
vagrant roles enable mobilefrontend --provision
Uruchamianie „W pobliżu”
Rozszerzenie MobileFrontend dodaje stronę Specjalna:W pobliżu po drobnej konfiguracji. Aby uruchomić tę funkcję trzeba przejść przez kilka opcjonalnych kroków:
- Ze względów bezpieczeństwa będziesz potrzebować szyfrowanego połączenia SSL ze swoją stroną — żądanie lokalizacji użytkownika przy użyciu protokołu HTTP nie jest możliwe.
- Zainstaluj rozszerzenie GeoData.
- Run update.php
- Dodaj
$wgMFNearby = true;
w swoim plikuLocalSettings.php
. - Zdefiniuj współrzędne artykułu:
- Dodaj dane o lokalizacji do artykułów za pomocą funkcji parsera
coordinates
, na przykład{{#coordinates:37.786971|-122.399677|primary}}
. Szczegółowe informacje na temat składni można znaleźć w dokumentacji GeoData . - Alternatively, you can use a separate MediaWiki installation for Nearby by setting
$wgMFNearbyEndpoint
in yourLocalSettings.php
file. For example,$wgMFNearbyEndpoint = 'https://en.m.wikipedia.org/w/api.php';
will use coordinates of English Wikipedia articles. The nearby endpoint will be used to find content related to a given location.
- Dodaj dane o lokalizacji do artykułów za pomocą funkcji parsera
Set up a skin
MobileFrontend provides you with a mobile formatted website to go alongside your existing desktop website. You can skin it however you want.
// Choose one of these pairs of lines and add chosen code to bottom of LocalSettings.php file:
wfLoadSkin( 'MinervaNeue' );
$wgDefaultMobileSkin = 'minerva'; // use Minerva skin (You need to download and install it separately in 1.37 and older, otherwise you'll get an exception)
wfLoadSkin( 'Vector' );
$wgDefaultMobileSkin = 'vector'; // use Vector skin
wfLoadSkin( 'Timeless' );
$wgDefaultMobileSkin = 'timeless'; // use Timeless skin
The following skins are compatible with MobileFrontend:
- Skin:Minerva Neue (stable, default on WMF wikis)
- Skin:Vector (default desktop skin, uses an experimental responsive mode for mobile)
- Skin:Timeless (experimental skin)
- Skin:MonoBook
- Skin:Citizen (responsive skin)
Configuration settings
Zobacz Extension:MobileFrontend/Configuration
All configuration options are detailed in the README.md file.
Additional tweaks
Get the most out of MobileFrontend by adding these optional compatible extensions:
- Extension:GeoData - Get Special:Nearby and geotag your articles.
- Extension:PageImages - Adds images to search and nearby results.
- Extension:VisualEditor - Add Visual editing to your mobile experience.
Local customisations
CSS styling
Wersja MediaWiki: | ≤ 1.40 |
To apply CSS to your mobile theme, edit MediaWiki:Mobile.css, the counterpart of MediaWiki:Common.css.
In order for the stylesheet to function you may have to add mw.loader.using('mobile.site.styles')
to your MediaWiki:Mobile.js.
MobileFrontend does not load the global MediaWiki:Common.css, neither does it load any of the user stylesheets.
More information
If you would like to test the mobile extension on a desktop browser or your device doesn't render the mobile version, you can append the following key-value pair to the URL query string: ?useformat=mobile
. For example: https://en.wikipedia.org/wiki/MediaWiki?useformat=mobile
If you would like to view the mobile version of a page without enabling the extension across the entire site you can append the string to the URL on that page, too.
Legacy features of MobileFrontend
MobileFrontend has traditionally been a very large extension. Many features have either surpassed their requirements or will do at some future date. These are listed below.
API
APIs are provided by the MobileFrontend extension, but long term we expect to deprecate them in favour of Page Content Service. Use these APIs at your own risk. They may disappear (although we will give you sufficient notice when they do)!
MobileView API
Ta funkcja została całkowicie usunięta z jądra MediaWiki w wersji 1.39. |
Zobacz Extension:MobileFrontend/MobileViewAPI .
Extended action=parse
action=parse
accepts extra parameters:
mobileformat=
- Return rendered page HTML in a mobile format 1.23+.
mainpage
- Apply mobile main page transformations.
Przykład:
Wynik |
---|
{
"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
The domain of the mobile version of the site (which might or might not be the same as the normal domain) is available under the mobileserver
key of the general siteinfo information.
For developers/sysadmins
Setup
You may need to run npm install
and install php composer to get the precommit hook to run, depending on what you're doing with the extension.
Testing with articles on a foreign wiki (live data)
Zobacz Extension:MobileFrontendContentProvider .
Using the mobile view
WMF sites
On Wikimedia Foundation-run sites, we use Varnish caching servers to check the user agent of your device.
Non-WMF sites
For non-WMF sites, you can either set up your configuration to mimic how things are done at the WMF (doing device detection at the proxy layer and setting specific X-Device headers), or you can simply use "?useformat=mobile" to switch an article to use the mobile view. See Extension:MobileFrontend/Configuring browser auto-detection.
$wgMFMobileHeader = 'X-WAP';
or modify your cache (Varnish) header setting, as long as they match.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 your hosts file (assuming your desktop site is on localhost
):
127.0.0.1 mobile.localhost
In LocalSettings.php
:
wfLoadExtension('MobileFrontend');
$wgMFAutodetectMobileView = true;
$wgMobileUrlCallback = fn( $domain ) => "mobile.$domain";
Now if you navigate to mobile.localhost you should see the mobile site.
FAQ
The following questions frequently appear on our talk page. Please check this list before posting about them on the talk page or use the existing talk topic, if available, to receive clarifications.
Q: How do I customise the main menu of the Minerva skin?
A: This is tracked in phabricator but you can see Topic:Tiggc18fvd3stmsf has an interim solution.
Q: How do I add HTML to the Minerva skin, for example to add ads or additional script tags?
A: You can do this by editing the template file for the skin (currently include/skins/minerva.mustache
). See this discussion for details.
Q: The extension I am using doesn't seem to work on MobileFrontend. Why?
A: It's likely the extension is old and needs to add compatibility to MobileFrontend. Please contact the developer of the extension and point them to ResourceLoader/Writing a MobileFrontend friendly ResourceLoader module. Please do not post to the talk page, as in this case it would be better to file a bug on Phabricator (you can login using your MediaWiki.org username) for a quicker response.
Q: I upgraded MobileFrontend and now I'm getting a fatal exception!
A: You are probably using incompatible versions of MobileFrontend and MediaWiki. In most cases, we can't help you here. Try upgrading MobileFrontend or MediaWiki to resolve your issue.
Q: After upgrading MediaWiki I'm getting an exception wgMFDefaultSkinClass is not setup correctly.
A: MobileFrontend currently assumes you have the Minerva Neue skin installed. If you don't you'll need to install this or configure your mobile skin per instructions above.
For Extension Developers
By default resource modules in extensions will not be loaded in mobile view.
Should a module need to be loaded while in mobile view this guide on writing MobileFrontend friendly modules will be of help.
Zobacz też
- Mobile web browsers supported by MobileFrontend
- Extension:TextExtracts
- Commons:Category:MediaWiki extension MobileFrontend
- Extension:MobileDetect
- Extension:Progressive web application: turn any wiki into a mobile app
Przypisy
- ↑ :Fatal error: Uncaught ExtensionDependencyError: MobileFrontend is not compatible with the current MediaWiki core (version 1.32.2), it requires: >= 1.33.0.
To rozszerzenie jest wykorzystywane przez jeden lub więcej projektów Wikimedia. Oznacza to prawdopodobnie, że to rozszerzenie jest stabilne i działa wystarczająco dobrze, aby wykorzystywać je na stronach o dużym natężeniu ruchu. Odnajdź nazwę tego rozszerzenia w plikach konfiguracyjnych Wikimedia CommonSettings.php oraz InitialiseSettings.php, aby zobaczyć gdzie są zainstalowane. Pełną listę rozszerzeń zainstalowanych na określonej wiki można znaleźć na stronie Special:Version na danej wiki. |
To rozszerzenie jest dołączone do następujących farm/hostów wiki lub pakietów: To nie jest pełna lista. Niektóre farmy/hosty wiki lub pakiety mogą zawierać to rozszerzenie nawet jeśli nie są one tutaj wymienione. Zawsze sprawdzaj swoje farmy/hosty wiki, aby to potwierdzić. |
- Stable extensions/pl
- User interface extensions/pl
- Hook extensions/pl
- GPL licensed extensions/pl
- Extensions in Wikimedia version control/pl
- APIGetAllowedParams extensions/pl
- APIQuerySiteInfoGeneralInfo extensions/pl
- AbuseFilter-builder extensions/pl
- AbuseFilter-generateUserVars extensions/pl
- AfterBuildFeedLinks extensions/pl
- ArticleParserOptions extensions/pl
- AuthChangeFormFields extensions/pl
- BeforeDisplayNoArticleText extensions/pl
- BeforePageDisplay extensions/pl
- BeforePageRedirect extensions/pl
- CentralAuthLoginRedirectData extensions/pl
- CentralAuthSilentLoginRedirect extensions/pl
- ChangeTagsListActive extensions/pl
- CustomEditor extensions/pl
- GetCacheVaryCookies extensions/pl
- GetPreferences extensions/pl
- HTMLFileCache::useFileCache extensions/pl
- ListDefinedTags extensions/pl
- LoginFormValidErrorMessages extensions/pl
- MakeGlobalVariablesScript extensions/pl
- ManualLogEntryBeforePublish extensions/pl
- MediaWikiPerformAction extensions/pl
- OutputPageBeforeHTML extensions/pl
- OutputPageBodyAttributes extensions/pl
- OutputPageParserOutput extensions/pl
- PostLoginRedirect extensions/pl
- RecentChange save extensions/pl
- RequestContextCreateSkin extensions/pl
- ResourceLoaderSiteModulePages extensions/pl
- ResourceLoaderSiteStylesModulePages extensions/pl
- SkinAddFooterLinks extensions/pl
- SkinAfterBottomScripts extensions/pl
- SpecialPageBeforeExecute extensions/pl
- SpecialPage initList extensions/pl
- TitleSquidURLs extensions/pl
- UserGetDefaultOptions extensions/pl
- All extensions/pl
- MediaWiki deprecated or obsolete features/pl
- Extensions used on Wikimedia/pl
- Extensions included in Canasta/pl
- Extensions included in Fandom/pl
- Extensions included in Miraheze/pl
- Extensions included in MyWikis/pl
- Extensions included in ShoutWiki/pl
- Extensions included in Telepedia/pl
- Extensions included in WikiForge/pl
- MobileFrontend/pl