(Dodano nową stronę „Globalna funkcja JavaScript <code>importArticles()</code> udostępnia wspólny interfejs do wgrywania na wikii artykułów, które zawierają skrypty i style. Jej funk...”) Znacznik: sourceedit |
Plover-bot (tablica | edycje) m (Robot dodał ja:ヘルプ:追加のJavaScriptとCSSをインクルードする/技術情報) Znacznik: apiedit |
||
Linia 150: | Linia 150: | ||
[[Kategoria:JS]] |
[[Kategoria:JS]] |
||
⚫ | |||
[[de:Hilfe:Einbinden von zusätzlichem CSS und JS/technisch]] |
[[de:Hilfe:Einbinden von zusätzlichem CSS und JS/technisch]] |
||
⚫ | |||
[[es:Ayuda:Incluyendo JavaScript y CSS adicional/técnico]] |
[[es:Ayuda:Incluyendo JavaScript y CSS adicional/técnico]] |
||
⚫ | |||
[[it:Aiuto:Includere CSS e JS aggiuntivi/avanzato]] |
[[it:Aiuto:Includere CSS e JS aggiuntivi/avanzato]] |
||
+ | [[ja:ヘルプ:追加のJavaScriptとCSSをインクルードする/技術情報]] |
||
⚫ | |||
− | [[pt:Ajuda:Como_incluir_JavaScript_e_CSS_adicionais/Técnico]] |
||
[[ko:도움말:자바 스크립트 및 CSS 불러오기/importArticles]] |
[[ko:도움말:자바 스크립트 및 CSS 불러오기/importArticles]] |
||
+ | [[pt:Ajuda:Como incluir JavaScript e CSS adicionais/Técnico]] |
||
⚫ | |||
[[vi:Trợ giúp:Bao gồm JavaScript và CSS bổ sung/kỹ thuật]] |
[[vi:Trợ giúp:Bao gồm JavaScript và CSS bổ sung/kỹ thuật]] |
||
[[zh:Help:導入更多JavaScript與CSS/技術]] |
[[zh:Help:導入更多JavaScript與CSS/技術]] |
||
⚫ |
Wersja z 12:48, 22 sty 2016
Globalna funkcja JavaScript importArticles()
udostępnia wspólny interfejs do wgrywania na wikii artykułów, które zawierają skrypty i style.
Jej funkcjonalność jest podobna jest podobna do funkcji importScriptPage
i importStylesheetPage
. Jednak, importArticles()
pozwala na import artykułów z innych wikii, scalać kilka artykułów w jeden, minifikować je oraz zwracaj w formie pojedynczego żądania. To zmniejsza zarówno rozmiar pliku jak i ruch wywołany pobraniem pliku, dzięki czemu wiki, która używa dużej ilości dodatkowych plików ładuje się szybciej.
Użycie
Funkcja importArticles()
wymaga na zdefiniowaniu modułów do wgrania artykułów. Moduły są obiektami JavaScript z własnościami w formie klucz/wartość. Poniższe właściwości są wymagane dla każdego modułu:
- type – oznacza typ artykułów jaki zostanie zawarty w tym module. Wspierane typy to:
- style – zawierające CSS (np: "MediaWiki:Common.css")
- script – zawierające JavaScript (np: "MediaWiki:Common.js")
- articles – artykuły, które mają zostać zaimportowane. Więcej informacji na temat co tutaj wpisać znajdziesz w sekcji Namierzanie artykułów poniżej.
Do importArticles()
można przekazać dowolną ilość modułów. Ale wszystkie artykuły w danym module muszą być tego samego typu.
Szablon:Notatka
Namierzanie artykułów
Do namierzania artykułów do zaimportowania jest używana prosta składnia. Jest bardzo podobna do i kompatybilna z linkami interwiki:
(Prefiks:{NazwaWiki}:){Artykuł}
To co w nawiasach jest opcjonalne, a to co w klamrach stanowi wartość wpisywaną przez użytkownika. Dwukropek służy do oddzielenia segmentów do parsowania. Prefiksy pozwalają na określenie gdzie i jak chcesz szukać artykułów i po nim z reguły następuje nazwa wiki, z wyjątkiem artykułów na lokalnej wikii.
Lokalne artykuły
Artykuły znajdujące się na lokalnej wiki można namierzyć podając ich tytuł w ten sam sposób jak można je zalinkować. Nie wymagają prefiksu czy nazwy wiki, ale dla wygody dostępny jest również prefiks local (lub w skrócie "l"). Przykładowo, jeśli chcesz zaimportować artykuł MediaWiki:Common.js, zadziała dowolna z poniższych wartości:
MediaWiki:Common.js
l:MediaWiki:Common.js
local:MediaWiki:Common.js
Artykuły zewnętrzne
Artykuły z innych wikii również mogą zostać zlokalizowane w ten sam sposób jak ich zalinkowanie. Jednak, w przeciwieństwie do lokalnych artykułów, zewnętrzne wymagają użycia prefiksu oraz nazwy wiki w celu określenia, z której wikii mają zostać zaimportowane. Wikia wspiera wybieranie na podstawie nazwy bazy danych, gdzie z reguły jest to angielska nazwa wiki, lub na podstawie jej adresu URL. Poszukiwanie na podstawie nazwy bazy danych wykonuje się za pomocą prefiksu external (lub "remote" albo "w" w skrócie), a lokalizowanie na podstawie URL wykonuje się za pomocą prefiksu url (lub w skrócie "u"). Przykładowo, jeśli chcesz zaimportować artykuł {{#NewWindowLink:w:c:dev:Highlight/code.css|Highlight/code.css}} z {{#NewWindowLink:w:c:dev|Wikia Developers Wiki}}, zadziała dowolna z poniższych wartości:
w:dev:Highlight/code.css
remote:dev:Highlight/code.css
external:dev:Highlight/code.css
u:dev:Highlight/code.css
url:dev:Highlight/code.css
u:dev.wikia.com:Highlight/code.css
url:dev.wikia.com:Highlight/code.css
Ta składnia działa też dla wiki w innych językach. Na przykład, jeśli chcesz dodać artykuł {{#NewWindowLink:w:c:it.onepiece:MediaWiki:Common.js|MediaWiki:Common.js}} z włoskiej {{#NewWindowLink:w:c:it.onepiece|One Piece Wiki}}:
u:it.onepiece:MediaWiki:Common.js
url:it.onepiece:MediaWiki:Common.js
url:it.onepiece.wikia.com:MediaWiki:Common.js
Z reguły łatwiej namierzyć zasoby na innych wikiach za pomocą URL niż bazy danych, ponieważ nie zawsze się zgadzają.
Zaawansowane użycie
Za kulisami, funkcja importArticles()
wykonuje trzy kluczowe zadania:
- Generowanie odpowiednie sformatowanego URL do użycia z ResourceLoaderem,
- Wykonanie Sanity testu na modułach w celu sprawdzenia czy są poprawnie sformatowane,
- Wyświetlenie informacji użytkownikowi w przypadku wystąpienia błędu.
Niemniej jednak, użycie tej funkcji nie jest wymagane żeby uzyskać korzyści z łączenia i minifikowania wielu artykułów w jedno żądanie. Jeśli chcesz, możesz ręcznie wygenerować URL i użyć go do wgrania zasobów ręcznie za pomocą innych metod jak @import w CSS czy jQuery.getScript w JavaScript.
Chociaż jest wiele parametrów, które można dodać do URL, poniższe prawdopodobnie będą najbardziej przydatne:
Parametr | Opis |
---|---|
mode
|
Mówi ResourceLoaderowi, że będziemy wgrywać artykuły. Powinien mieć wartość "articles". |
articles
|
Lista artykułów. Jeśli ma zostać wgranych kilka artykułów, powinny zostać oddzielone za pomocą pionowej kreski "|". |
only
|
Typ artykułów do zaimportowania. Powinien mieć wartość "scripts" (JS) lub "styles" (CSS). |
debug
|
Ten parametr nie jest domyślnie wymagany, ale można podać wartość "true", która pozwoli na wyłączenie minifikacji co ułatwi znalezienie problemów w artykułach po imporcie. |
Na koniec powinien powstać adres URL, który wygląda mniej więcej tak:
/load.php?mode=articles&articles=MediaWiki:Jeden.css|MediaWiki:Dwa.css&only=styles
Który może zostać użyty w połączeniu z @import
, w ten sposób:
@import url("/load.php?mode=articles&articles=MediaWiki:Jeden.css|MediaWiki:Dwa.css&only=styles");
Przykłady
Importowanie kilku artykułów ze skryptami, jeden z lokalnej wiki, drugi z innej wikii:
importArticles({
type: "script",
articles: [
"MediaWiki:MyCustomJavaScript.js",
"external:dev:MediaWiki:External_include.js"
]
});
Importowanie kilku artykułów ze stylami, jeden z lokalnej wiki, drugi z innej wikii:
importArticles({
type: "style",
articles: [
"MediaWiki:Common.css",
"external:starwars:MediaWiki:External_include.css"
]
});
Importowanie kilku modułów w jednym wywołaniu funkcji:
importArticles({
type: "script",
articles: [
"MediaWiki:MyCustomJavaScript.js",
"external:dev:MediaWiki:External_include.js"
]
}, {
type: "style",
article: "MediaWiki:Common.css"
});
Przykłady alternatywnej składni
Funkcja importArticles()
pozwala również na uproszczoną, alternatywną składnię dla typowych użyć. Dla wygody zdefiniowana jest również funkcja importArticle()
.
Importowanie jednego pliku na lokalnej wiki:
importArticle({
type: "style",
article: "MediaWiki:Common.css"
});
Zobacz również
- CSS i JS społeczności – jak tworzyć modyfikacje dla Twojej społeczności.
- Zaawansowane CSS i JS – więcej informacji dla chcących się zagłębić w świat edytowania CSS i JS.
- Dostosowywanie CSS i JS – strona zbierająca wszystkie szczegóły na temat CSS i JS.