Extension:Logotipo/ru
From MediaWiki.org
Статус: stable |
|
|---|---|
| Области применения | Parser function |
| Используемые hook'и | LanguageGetMagic |
| Описание | Пример функции изменения $wgLogo на каждой из страниц |
| Автор(ы) | Карл Остин Беннетт |
| Версия | 1.0 (22 vfhnf 2008) |
| MediaWiki | 1.11 - 1.13 |
| Ссылка для скачивания | logotipo.php |
Довольно простой пример анализатора функции: #logotipo: принимает один параметр (URL, указывающий на изображение) и копирует это значение в $wgLogo.
Любые специальные символы удаляются и кэшируется отдельная страница, на которой эта функция была отключена. Затем функция возвращает пустую строку.
Один из примеров использования этого расширения: http://desciclopedia.org/wiki/Rede_Globo - эта страница шуточно заменяет логотип "батат" в логотип сети Globo TV.
Код расширение logotipo.php, должен быть сохранён в виде файла на сервер, который затем связывается (с использованием require_once()) в LocalSettings.php:
[edit] logotipo.php
<?php /** * #logotipo - a crude and simple parser function used * to set $wgLogo on a per-page basis * * @author Carl Austin Bennett * @copyright Copyright © Carl Austin Bennett * @link http://www.mediawiki.org/wiki/Extension:Logotipo */ #Extension credits that will show up on Special:Version $wgExtensionCredits['other'][] = array( 'name' => 'Logotipo', 'version' => 1.0, 'author' => 'Carl Austin Bennett', 'url' => 'http://www.mediawiki.org/wiki/Extension:Logotipo', 'description' => 'Example of function to change $wgLogo on a per-page basis', ); # Define a setup function $wgExtensionFunctions[] = 'wfLogotipoFunction_Setup'; # Add a hook to initialise as a MediaWiki magic word $wgHooks['LanguageGetMagic'][] = 'wfLogotipoFunction_Magic'; # Setup functions function wfLogotipoFunction_Setup() { global $wgParser; # Set a function hook associating the "logotipo" magic word with our function $wgParser->setFunctionHook( 'logotipo', 'wfLogotipoFunction_Render' ); } function wfLogotipoFunction_Magic( &$magicWords, $langCode ) { # Add the magic word # The first array element is case sensitive, in this case it is not case sensitive # All remaining elements are synonyms for our parser function $magicWords['logotipo'] = array( 0, 'logotipo' ); # return true, otherwise other parser function extensions won't load. return true; } # The #logotipo: parser function itself # This merely sets $wgLogo to a user-supplied URL, special characters removed, # for the currently-displayed MediaWiki page. function wfLogotipoFunction_Render( &$parser, $param1 = '' ) { global $wgLogo; # The parser function itself # The input parameter is a full URL of the desired logo for display, # which is simply copied into $wgLogo; any special characters are # removed and page caching is disabled for this one page. $parser ->disableCache(); $wgLogo = htmlspecialchars($param1); return ""; }
| Язык: | English • Русский |
|---|
