Extension:PageImages
Stav rozšíření: stabilní |
|
|---|---|
| Implementace | API , Rozšíření syntaktického analyzátoru |
| Popis | Ukládá informace o obrázcích představujících stránku |
| Autoři | Max Semenik (MaxSem diskuse ) |
| Nejnovější verze | průběžné aktualizace |
| Zásady kompatibility | Vydání snímků současně s MediaWiki. Hlavní vývojová větev není zpětně kompatibilní. |
| MediaWiki | 1.37+ |
| PHP | 7.3.19+ |
| Změny v databázi | Ne |
| Licence | WTFPL 2.0 |
| Stáhnout | |
|
|
| Přeložte rozšíření PageImages, používá-li lokalizaci z translatewiki.net | |
| Problémy | Otevřené úkoly · Nahlásit chybu |
Rozšíření PageImages shromažďuje informace o obrázcích použitých na stránce.
Jeho cílem je vrátit nejvhodnější miniaturu přidruženou k článku.
PageImages také poskytuje metadata protokol OpenGraph pro články na wiki, která mohou extrahovat třetí strany, jako je Facebook.
Instalace
- Stáhněte soubor/y a vložte je do adresáře pojmenovaného
PageImagesve vaší složceextensions/.
Vývojáři a přispěvatelé kódu by si místo toho měli nainstalovat rozšíření from Git pomocí:cdextensions/ gitclonehttps://gerrit.wikimedia.org/r/mediawiki/extensions/PageImages - Na konec vašeho souboru LocalSettings.php přidejte následující kód:
wfLoadExtension( 'PageImages' );
- Vyžaduje nastavení v konfiguračním souboru.
- Pro prvotní přiřazení obrázků stránek ke stránkám spusťte skript "initImageData.php" z adresáře údržby rozšíření. (
/path/to/extensions/PageImages/maintenance/) - Yes Dokončeno – Přejděte na stránku Special:Version vaší wiki a zkontrolujte, zda bylo rozšíření úspěšně nainstalováno.
Konfigurace
$wgPageImagesDenylist je pole zdrojů pro seznamy zakázaných obrázků. Obrázky v seznamu nebudou nikdy vybrány jako obrázky stránek. Příklady:
$wgPageImagesDenylist = [ // Stránka na místní wiki [ 'type' => 'db', 'page' => 'MediaWiki:Pageimages-denylist', 'db' => false, ], // Stránka na Wikimedia Commons, pro další projekty Wikimedie využívající přímý přístup k databázi [ 'type' => 'db', 'page' => 'MediaWiki:Pageimages-denylist', 'db' => 'commonswiki', ], // Stránka na Commons pro weby třetích stran využívající webový přístup [ 'type' => 'url', 'url' => 'http://commons.wikimedia.org/w/index.php?title=somepage&action=raw', ], ];
Lze použít více než jeden zdroj současně.
Seznam zakázaných odkazů by měl obsahovat wiki odkazy na soubory. Zbytek obsahu je irelevantní (a může obsahovat odkazy na jiné stránky). Například:
* [[:File:First denylisted file.png]] * [[:File:Second denylisted file.jpeg]] ...
Nezapomeňte, že odkazy na soubory, které vedou k přidání obrázků na stránku, nebudou fungovat (tyto soubory jsou z nějakého důvodu na seznamu zakázaných, že?), takže nezapomeňte před odkazy umístit :.
| Název | Popis | Výchozí |
|---|---|---|
| $wgPageImagesDenylistExpiry | Určuje, jak dlouho bude seznam uložen v mezipaměti, v sekundách. | 15 * 60 (15 minutes) |
| $wgPageImagesExpandOpenSearchXml | Pokud je nastaveno na hodnotu true, PageImages přepíše detekci obrázků v modulu opensearch API vlastními, přesnějšími výsledky.
|
false
|
| $wgPageImagesNamespaces | Pole jmenných prostorů, na kterých budou aktivovány PageImages.
Po změně budete muset spustit skript refreshLinks.php , abyste vygenerovali informace o obrázku stránky pro tyto jmenné prostory (doufejme, že můžete použít parametr |
NS_MAIN
|
| $wgPageImagesOpenGraph | Povoluje nebo zakazuje meta tagy OpenGraph (může být užitečné, pokud tyto tagy spravují jiná rozšíření) (1.39+). | true
|
| $wgPageImagesOpenGraphFallbackImage | URL adresa záložního obrázku, která se zobrazí, pokud na stránce není žádný obrázek. | false
|
Aktualizace na MediaWiki 1.37+ poznámky
Od verze MediaWiki 1.37 byly $wgPageImagesBlacklist a $wgPageImagesBlacklistExpiry přejmenovány na $wgPageImagesDenylist a $wgPageImagesDenylistExpiry.
Od verze MediaWiki 1.37 se výchozí hodnota stránky pro $wgPageImagesDenylist změnila z MediaWiki:Pageimages-blacklist na MediaWiki:Pageimages-denylist.
Není přidán žádný kód zpětné kompatibility, který by akceptoval staré názvy, takže byste měli názvy proměnných během upgradu změnit nebo obě proměnné definovat předem v rámci přípravy na aktualizaci.
Pokud jste na své wiki přidali obsah do MediaWiki:Pageimages-blacklist, měli byste jej přejmenovat na nový název.
Také nastavte $wgPageImagesBlacklist (starý název proměnné) na nový název stránky. Při aktualizaci bude použita výchozí hodnota, která by měla odpovídat vaší předchozí změně.
API
Rozšíření PageImages poskytuje informace o obrázcích přidáním proměnné prop=pageimages do rozhraní API properties pro dotaz action=query.
prop=pageimages (pi)
- This module requires read rights.
- Source: PageImages
- License: WTFPL
Returns information about images on the page, such as thumbnail and presence of photos.
- piprop
Which information to return:
- thumbnail
- URL and dimensions of thumbnail image associated with page, if any.
- name
- Image title.
- original
- URL and original dimensions of image associated with page, if any.
- Values (separate with | or alternative): name, original, thumbnail
- Default: thumbnail|name
- pithumbsize
Maximum width in pixels of thumbnail images.
- Type: integer
- Default: 50
- pilimit
Properties of how many pages to return.
- Type: integer or max
- The value must be between 1 and 50.
- Default: 50
- pilicense
Limit page images to a certain license type:
- free
- Only free images.
- any
- Best image, whether free or non-free.
- One of the following values: any, free
- Default: free
- picontinue
When more results are available, use this to continue. More detailed information on how to continue queries can be found on mediawiki.org.
- Type: integer
- pilangcode
Code for the language the image is going to be rendered in if multiple languages are supported
- Get name and 100-pixel thumbnail of an image on the Albert Einstein page.
- api.php?action=query&prop=pageimages&titles=Albert%20Einstein&pithumbsize=100 [open in sandbox]
Odpověď
{ // piprop.name (a obrázek existuje) pageimage?:string// Název zdrojového souboru obrázku (základní název original.source). // piprop.thumbnail (a obrázek existuje) thumbnail?:{ source:string// URL adresa miniatury. width:number// Šířka miniatury v pixelech. height:number// Výška miniatury v pixelech. } // piprop.original (a obrázek existuje) original?:{ source:string// URL zdrojového obrázku. width:number// Šířka zdrojového obrázku v pixelech. height:number// Výška zdrojového obrázku v pixelech. } }
Žádost o vzorek
| Výsledek |
|---|
{ "query":{ "normalized":[ { "from":"Lightbox_demo", "to":"Lightbox demo" } ], "pages":{ "162510":{ "pageid":162510, "ns":0, "title":"Lightbox demo", "thumbnail":{ "source":"https://upload.wikimedia.org/wikipedia/commons/thumb/e/e9/Crystal_Clear_app_korganizer.png/50px-Crystal_Clear_app_korganizer.png", "width":50, "height":50 }, "pageimage":"Crystal_Clear_app_korganizer.png" } } } } |
Jak to funguje
Když je stránka uložena s lokálním obrázkem, analyzátor spustí háčky ParserMakeImageParams a LinksUpdate.
Rozšíření PageImages reaguje na tyto (a další háčky) a vkládá novou vlastnost pro stránku do tabulky page_props .
Použité názvy vlastností jsou page_image a page_image_free. Hodnota je název obrázku.
Pokud má stránka obě vlastnosti, pak se jejich hodnoty liší.
Rozšíření ukládá pouze název vybraného obrázku. Další funkce mohou obrázek zobrazovat, například informace o stránce, vyhledávací karty a mobilní vyhledávání při psaní.
Výběr obrázku
Jak mohu zkontrolovat, který obrázek je přiřazen k dané stránce?
Obrázky stránek budou uvedeny na stránce ?action=info.
Jak vybírá obrázky?
Všechny obrázky na stránce jsou shromážděny a pro každý obrázek je vypočítáno skóre. Obrázek s nejvyšším skóre je vybrán jako obrázek stránky. Pokud je wiki konfigurována tak, že obrázky obsahují metadata, která specifikují, že obrázky nejsou volně licencovány, uloží se také obrázek s nejlepším skóre, který je také volně licencován. Pokud není nalezen žádný vhodný obrázek nebo všechny obrázky mají špatné skóre (tj. záporné skóre), stránka nebude obsahovat žádné obrázky.
Pokud je $wgPageImagesLeadSectionOnly nastaveno na hodnotu true, budou brány v úvahu pouze obrázky v úvodní sekci. To platí pouze pro projekty Wikipedie. Všechny ostatní projekty mohou stahovat obrázky zvenčí úvodu.
Jak se hodnotí obrázky?
Nejlepší možný obrázek stránky na wikinách Wikimedie je jeden z prvních čtyř obrázků v článku, s poměrem šířky/výšky mezi 400-600 pixely a výškou/šířkou dvojnásobkem hodnoty druhého rozměru.
- Algoritmus je konfigurovatelný.
- Skóre se vypočítává kombinací:
- Šířky obrázků definované v
$wgPageImagesScores['width']- Na wikinách Wikimedie jsou obrázky menší než 119 pixelů váženy negativně. Upřednostňují se obrázky se šířkou mezi 400px a 600px, s preferencí pro dolní hranici.
- Obrázky v galeriích jsou hodnoceny samostatně pomocí
$wgPageImagesScores['galleryImageWidth'].- V galerii wikin Wikimedie se obrázky menší než 100 pixelů ignorují.
- Pozice v dokumentu je také považována za definovanou v
$wgPageImagesScores['position'].- Na wikinách Wikimedie se berou v úvahu pouze první čtyři obrázky, které se v dokumentu objevují.
- Poměr šířky a výšky obrázku je považován v
$wgPageImagesScores['ratio'].- Na wikinách Wikimedie je povolen poměr 0.4 ku 3.1, preferuje se poměr 0.6 ku 2.1.
- Výchozí hodnota je
$wgPageImagesScores['ratio'] = ["3" => -100, "5" => 0, "20" => 5, "30"=> 0, "31"=> -100];, kde klíč představuje šířku dělenou výškou, zaokrouhlenou na desetiny a desetinnou čárku posunutou o jednu pozici doprava. Obrázek o šířce 400 pixelů a výšce 300 pixelů by měl hodnotu 13. Hodnota klíče je násobek skóre spojený s tímto poměrem. Klíče jsou vybírány a zvyšují se od nuly, přičemž nový bodovací násobek se projeví až po dosažení nebo překročení hodnoty klíče, ale nepřekročení hodnoty dalšího klíče. Všechny ostatní obrázky budou hodnoceny negativně a budou zahozeny.
- Šířky obrázků definované v
Jak se aktualizují obrázky stránek?
Funkce Pageimages naplní obrázky vždy, když je spuštěn háček LinksUpdate , např. při úpravě stránky.
Mohu vyloučit určité obrázky stránky?
Ano!
Pro celou wiki existuje stránka, kterou mohou administrátoři upravovat na MediaWiki:Pageimages-denylist (příklad). Obrázky, které se zde objeví, nebudou použity jako obrázky stránek pro žádný článek.
Pro konkrétní stránky přidejte kód |class=notpageimage ke každému obrázku, který chcete vyloučit. Například [[File:Example.png|class=notpageimage]].
Více informací naleznete na adrese phab:T301588.
Mohu požádat o obrázek stránky s konkrétním obsahem?
Od verze MediaWiki 1.44.0 můžete označit obrázek, který splňuje kritéria uvedená v části Jak vybírá obrázky?, přidáním hodnoty |class=pageimage k obrázku.
Obecně se to doporučuje jako poslední možnost, protože to přepíše algoritmus hodnocení obrázků, což znamená, že obrázek nemusí být vhodný pro místo, kde se zobrazuje (např. rozlišení, licence nebo pozice).
Pokud je to možné, je vhodné přidat preferovanou miniaturu jako první obrázek v článku.
Jak si mohu zobrazit obrázek stránky?
Aktuálně vybraný obrázek si můžete prohlédnout pomocí odkazu Informace o stránce v postranním panelu (nebo přidáním ?action=info k URL adrese).
Jak mohu odstranit špatný obrázek?
Obrázek stránky se změní pouze tehdy, když se změní odkaz v článku. V případě nouze prosím přidejte/odeberte odkazy ze stránky a v případě potřeby vraťte původní nastavení zpět. Vyčištění nebude fungovat. V případě větších nouzových situací prosím vyplňte požadavek Phabricatoru.
Proč je obrázek mé stránky prázdný rámeček?
To se pravděpodobně týká video obsahu ve vašem článku. Pokud video soubor začíná prázdnou obrazovkou, stane se výchozí miniaturou videa a pokud je použita jako obrázek stránky, stane se obrázkem stránky. Momentálně pracujeme na opravě, která vám umožní změnit výchozí miniaturu videa. Další informace viz: phab:T92457 a phab:T22647.
Související odkazy
- Stable extensions/cs
- API extensions/cs
- Parser extensions/cs
- WTFPL licensed extensions/cs
- Extensions in Wikimedia version control/cs
- ApiOpenSearchSuggest extensions/cs
- BeforePageDisplay extensions/cs
- InfoAction extensions/cs
- ParserAfterTidy extensions/cs
- ParserModifyImageHTML extensions/cs
- ParserTestGlobals extensions/cs
- SearchResultProvideThumbnail extensions/cs
- SpecialMobileEditWatchlist::images extensions/cs
- All extensions/cs
- Extensions bundled with MediaWiki 1.34/cs
- Extensions used on Wikimedia/cs
- Extensions included in BlueSpice/cs
- Extensions included in Canasta/cs
- Extensions available as Debian packages/cs
- Extensions included in Fandom/cs
- Extensions included in Miraheze/cs
- Extensions included in MyWikis/cs
- Extensions included in ProWiki/cs
- Extensions included in ShoutWiki/cs
- Extensions included in wiki.gg/cs
- Extensions included in WikiForge/cs
- Search engine optimization extensions/cs