확장기능:UserFunctions
UserFunctions 출시 상태: 안정 |
|
---|---|
구현 | 파서 함수 |
설명 | 현재 사용자에게 동작하는 일련의 파서 함수 제공 |
만든 이 |
|
최신 버전 | 2.8.1 (2022-07-20) |
MediaWiki | 1.35+ |
PHP | 7.2+ |
데이터베이스 변경 | 아니오 |
Composer | mediawiki/user-functions |
라이선스 | GNU General Public License 2.0 or later |
다운로드 | |
예제 | sandbox.semantic-mediawiki.org |
|
|
Quarterly downloads | 24 (Ranked 113rd) |
UserFunctions 확장 기능 번역 (translatewiki.net에서 가능한 경우) | |
UserFunctions 확장기능은 현재 사용자에게 동작하는 일련의 동적인 파서 함수를 제공합니다.
사용법
NS_MEDIAWIKI
namespace, for enabling them in other namespaces, see the examples below.$wgEnableSidebarCache = true;
.Functions (always available)
The following four functions are always available for use:
{{#ifanon:then|else}}
- Tests whether the current user is anonymous.
{{#ifblocked:then|else}}
- Tests whether the current user is blocked.
{{#ifsysop:then|else}}
- Tests whether the current user is a sysop.
{{#ifingroup:group|then|else}}
- Tests whether the current user is a member of the group "group". You can check for multiple groups as well:
{{#ifingroup:group1, group2, group3|then|else}}
Functions (disabled by default)
The following five personal data functions are disabled by default (see #Installation for how to enable them):
{{#realname:alt}}
- Returns the current user's real name. If the user is not logged in, this function returns the given alternate text or the user IP if no alternate is provided.
{{#username:alt}}
- Returns the current username. If the user is not logged in, this function returns the given alternate text or the user IP if no alternate is provided.
{{#useremail:alt}}
- Returns the current user's email address. If the user is not logged in, this function returns the given alternate text or the user IP if no alternate is provided.
{{#nickname:alt}}
- Returns the current user's nickname. If the user has no nickname, returns the username. If the user is not logged in, this function returns the given alternate text or the user IP if no alternate is provided.
{{#ip:}}
- Returns the current user's IP address.
설치
- 파일을 다운로드하고
UserFunctions
폴더를extensions/
디렉토리에 넣어 주세요.
개발자와 코딩 기여자는 Git을 이용해 확장기능을 다운받는 것이 좋습니다.cd extensions/
git clone https://gerrit.wikimedia.org/r/mediawiki/extensions/UserFunctions - 아래의 코드를 LocalSettings.php 코드의 마지막에 추가합니다.
wfLoadExtension( 'UserFunctions' );
- If you want to use any of the following functions:
#realname
,#username
,#useremail
,#nickname
or#ip
, add the following just after that line:$wgUFEnabledPersonalDataFunctions = [ 'ip', 'nickname', 'realname', 'useremail', 'username', ];
- If you are using an older version of the extension, the functions were included in bulk via:
$wgUFEnablePersonalDataFunctions = true;
- If you want to enable functions in other namespaces apart from
NS_MEDIAWIKI
(default), follow the model of some of the examples below. - 완료 – 위키의 ‘Special:Version’에 이동해서, 확장기능이 올바르게 설치된 것을 확인합니다.
이름공간별 허용 설정
By default, user functions only work in NS_MEDIAWIKI
namespace.
Below there are some examples of allowing or disallowing the functions to work in other namespaces. The syntax is based on the one used with subpages.
// Enable user functions additionally in namespace "Main"
// Adds values to the existing array
$wgUFAllowedNamespaces[NS_MAIN] = true;
// Enable user functions in namespaces "Main" and "User", but not in namespace "MediaWiki"
// Replaces values in the existing array
$wgUFAllowedNamespaces = [
NS_MAIN => true,
NS_USER => true
];
// Enable user functions in namespaces with the indexes from 0 to 200
// Replaces values in the existing array
$wgUFAllowedNamespaces = array_fill( 0, 200, true );
More info on namespace numbering.
In other contexts (recognized as NS -1, but not always a Special Page), such as in Page Forms pages, check you have the following parameter enabled:
$wgUFEnableSpecialContexts = true;
The parameter above is enabled by default.
If you experience any problem with bots or maintenance scripts, turn it to false and report it to this talk page.
버전 역사
Authors: Algorithm and others
- Version 2.8.1 () Allow disabling/enabling specific personal data functions - Universal Omega
- Prior to this, the
$wgUFEnabledPersonalDataFunctions
configuration variable was named$wgUFEnablePersonalDataFunctions
, and setting it to true would enable all personal data functions, and was only able to enable/disable all of them or none of them.
- Version 2.8.0 () Convert to ExtensionRegistry and other code cleanups - Universal Omega
- Version 2.7.0 () Removed PHP i18n shim - Kghbln
- Version 2.6.1 () Provided syntax changes - Kghbln, Umherirrender
- Version 2.6.0 () Composer-compatible extension - Toniher
- Version 2.5.0 () Migrated to JSON i18n - Siebrand
- Version 2.4.3 () Accumulated fixes and code cleaning - Chad Uckelman
- Version 2.4.2 () Some code cleaning - Reedy
- Version 2.4.1 () Fixed problems with Sidebar (report Kghbln). Cleared PHP warnings in functions - Toniher
- Version 2.4 () Cleaned using current ParserFunctions models. Fix when editing Semantic Forms - Toniher
- Version 2.3 () fixed problems when using scripts and allowed multiple groups to be checked against in ifingroup. - Toniher
- Version 2.2 () added $wgUFAllowedNamespaces parameter. Users need to define in which allowed NS functions will work. - Toniher
- Version 2.1 () added $wgUFEnablePersonalDataFunctions parameter. Migrated $wgUser to ParserOptions equivalent - Toniher
- Version 2.0 () added i18n and compatibility with other parser function extensions - Toniher
- Version 1.5 () added ip - Kghbln
- Version 1.4 () added realname - Kghbln
- Version 1.3 () added useremail - Wikinaut
- Version 1.2 () added ifingroup - Louperivois
- Version 1.1 () added nickname - Lexw
- Version 1.0 () Algorithm
Issues and feature requests
- Please report them on the talk page.
Troubleshooting
- Invalid magic word
If you are getting an error that looks like this Error: invalid magic word 'ifanon'
, then you should try rebuilding the localization cache. The functions within this extension will not load correctly without this extension's localization information within the cache.
같이 보기
This extension is included in the following wiki farms/hosts and/or packages: This is not an authoritative list. Some wiki farms/hosts and/or packages may contain this extension even if they are not listed here. Always check with your wiki farms/hosts or bundle to confirm. |