Extension:MobileDetect/cs

Category:GPL licensed extensions/cs
Příručka k rozšířením MediaWiki
MobileDetect
Stav rozšíření: neznáméCategory:Extensions with invalid status/cs
Implementace Značka Category:Tag extensions/cs
Popis Detekuje mobilní zařízení a umožňuje ovládat viditelný obsah pomocí tagů <nomobile> a <mobileonly>, parserových funkcí a CSS tříd.
Autoři Matthew Tran (Archivoltdiskuse)
Správci Sophivorus
Nejnovější verze 2.4 (2024-08-25)
MediaWiki 1.35+Category:Extensions with manual MediaWiki version/cs
Licence GNU General Public License 3.0
Stáhnout Category:Extensions in Wikimedia version control/cs
<nomobile>, <mobileonly>, #nomobile, #mobileonly
Přeložte rozšíření MobileDetect, používá-li lokalizaci z translatewiki.net
Problémy Otevřené úkoly · Nahlásit chybu
Category:All extensions/cs

Rozšíření MobileDetect detekuje mobilní zařízení pomocí rozšíření HTTP_USER_AGENT v PHP. Vzhledem k povaze rozšíření by mělo být velmi dobře kompatibilní s novými i starými verzemi MediaWiki.

Rozšíření zavádí funkci s názvem wfMobileDetect(), která vrací hodnotu true, když je detekováno mobilní zařízení, a v opačném případě hodnotu false. Také zavádí tagy <nomobile> a <mobileonly>, funkce parseru a třídy CSS, které uživatelům umožňují ovládat, který obsah se zobrazuje pouze v mobilních prohlížečích a který pouze v prohlížečích na stolních počítačích.

Instalace

  • Stáhněte soubor/y a vložte je do adresáře pojmenovaného MobileDetect ve vaší složce extensions/.
    Vývojáři a přispěvatelé kódu by si místo toho měli nainstalovat rozšíření from Git pomocí:
    cd extensions/
    git clone https://gerrit.wikimedia.org/r/mediawiki/extensions/MobileDetect
    
  • Na konec vašeho souboru LocalSettings.php přidejte následující kód:
    wfLoadExtension( 'MobileDetect' );
    
  • Yes Dokončeno – Přejděte na stránku Special:Version vaší wiki a zkontrolujte, zda bylo rozšíření úspěšně nainstalováno. Category:Extensions still supporting pre-registration versions

Pro ty, kteří používají MediaWiki 1.38 a starší:

Výše uvedené instrukce se týkají instalace přes wfLoadExtension(), což je novější způsob instalace rozšíření. Pokud potřebujete toto rozšíření nainstalovat na starší verzi (MediaWiki 1.38 či starší), musíte místo wfLoadExtension( 'MobileDetect' ); použít:

require_once "$IP/extensions/MobileDetect/MobileDetect.php";

Použití

wfMobileDetect()

Pokud chcete nastavit výchozí téma v závislosti na prohlížeči návštěvníka, můžete do svého souboru LocalSettings.php přidat toto:

wfLoadExtension( 'MobileDetect' );
$mobile = wfMobileDetect();
if ( $mobile ) {
    $wgDefaultSkin = "chick"; # If mobile
} else {
    $wgDefaultSkin = "vector"; # If not mobile
}

S tímto kódem, pokud prohlížeč návštěvníka zobrazí uživatelského agenta z mobilního prohlížeče, bude výchozí šablona chick místo vector. Pokud prohlížeč místo toho zobrazí uživatelského agenta z desktopového/plnohodnotného prohlížeče, výchozí téma bude vector místo chick.

Pokud chcete, aby se určité rozšíření nenačítalo v mobilních prohlížečích, můžete do svého LocalSettings.php přidat:

wfLoadExtension( 'MobileDetect' );
$mobile = wfMobileDetect();
if ( ! $mobile ) {
    wfLoadExtension( 'ConfirmEdit' ); # Only load if desktop browser
}

S tímto kódem by se rozšíření reCAPTCHA načítalo pouze na stolních počítačích/plnohodnotných prohlížečích.

Značky <nomobile> a <mobileonly>

Rozšíření MobileDetect také zavádí tagy <nomobile> a <mobileonly>, které uživatelům umožňují ovládat, který obsah se zobrazuje v mobilních prohlížečích a který v prohlížečích pro stolní počítače/plnohodnotné prohlížeče. Cokoli je obaleno mezi tagy <mobileonly>, se zobrazí pouze v mobilních prohlížečích a cokoli je obaleno mezi tagy <nomobile>, se zobrazí pouze v prohlížečích na počítači/plnohodnotných prohlížečích. Tak například:

<mobileonly>This will not be displayed in desktop/full browsers, only in mobile browsers</mobileonly>
<nomobile>This will not be displayed in mobile browsers, only in desktop/full browsers</nomobile>

Pojmenování a chování tagů <mobileonly> a <nomobile> odpovídá tagům <includeonly> a <noinclude>.

Původní rozšíření nezobrazuje správně veškerý víceřádkový obsah.

Toto rozvětvení vykreslí veškerý víceřádkový obsah správně.

Testovací stránka pro MobileDetect

#nomobile and #mobileonly parser functions

Rozšíření MobileDetect také zavádí funkce parseru #nomobile a #mobileonly, které fungují přesně jako tagy <nomobile> a <mobileonly>, s tím rozdílem, že jejich obsah je parsován, takže mohou obsahovat věci jako {{{1}}} a být použity v šablonách.

Nezobrazují však správně veškerý víceřádkový obsah, proto je používejte hlavně pro vložený obsah.

Původní rozšíření nezobrazuje správně veškerý víceřádkový obsah.

Toto rozvětvení vykreslí veškerý víceřádkový obsah správně.

Testovací stránka pro MobileDetect
Příklad šablony

nomobile and mobileonly classes

Alternativně je také možné použít třídy CSS přímo:

{| class="wikitable nomobile"
|- 
| (Some wikitable stuff.)
|}

Související odkazy

Category:Mobile/cs
Category:All extensions/cs Category:BeforePageDisplay extensions/cs Category:Extensions in Wikimedia version control/cs Category:Extensions included in Miraheze/cs Category:Extensions included in WikiForge/cs Category:Extensions still supporting pre-registration versions Category:Extensions with invalid status/cs Category:Extensions with manual MediaWiki version/cs Category:GPL licensed extensions/cs Category:Mobile/cs Category:ParserFirstCallInit extensions/cs Category:Tag extensions/cs