Manual:Interface/Sidebar/ja

MediaWiki:Sidebarはサイドバー、つまりウィキ上の最も重要な位置へのリンクを置き、サイト管理者が永続的なリンクをまとめて追加する場所をどこに提供するか定義します. ほとんどのウィキの例では、コミュニティの議論のページや便利な複数のツールにリンクしています.

外装がMonobookとVectorの場合、サイドバーは検索バーやツールボックスとともに画面左上から始まり（書字方向が右から左の言語では右上）、外装が変わると場所も変わることがあります. サイドバーはモバイル版サイトのユーザーには表示されません.

サイドバーをカスタマイズする
ウィキで MediaWiki:Sidebar をカスタマイズするには、まず最初に「インターフェイス編集」(editinterface)権限のある利用者 (管理者であれば既定で権限がある）としてログインします. （グループまたは利用者への権限付与についての情報は、 を参照. )

次に、自分のウィキのページへのリンクを開き、URL/アドレスバーに書かれたウィキページ名（例： ）を  に書き換えてから、ページを読み込みます - すると変更後のサイドバーが表示されるはずです. （URLが長文の場合は //yourdomain/yourwiki/index.php?title=MediaWiki:Sidebar&action=edit の構文を使用する必要があります. ）

もしサイドバーの内容が既に変更してある場合は、 Edit か Edit source（編集/ソースを編集）リンクをクリックします. あるいは Create か Create source（作成/ソースを作成）を押してページを最初から作成します.

ご注意: ページを新しく作ることになった場合、エディター画面に既定のサイドバーが表示されます. 「MediaWiki:Sidebar」というページをきちんと作成するには、内容を変更してから保存してください.

サイドバーに用いるコードのサンプル：
 * navigation
 * mainpage|mainpage
 * Special:RecentChanges|Recent changes
 * new heading
 * portal-url|portal
 * http://www.mediawiki.org|MediaWiki home

上記の記述のサンプルは下記のサイドバーを表示します.

見出し
サイドバーを区切り、個別の見出しを作ることができます. 区切りごとの見出しは1番目のレベルの要素から拾います（上記のサンプルでは「navigation」と「new heading」）.

もし見出しの語句がインタフェースのメッセージ（MediaWikiの名前空間にある同名のページ）と一致する場合は、そのページ名がラベルとなります. その他の場合、区切りの見出しは指定どおりです.

To make sure the internationalized version is used, you can use the

** randompage-url|

リンク
2番目のレベルの要素はリンクで（上記のサンプルの「mainpage|mainpage」）、以下の書式を使います. ** target|link text


 * ターゲット
 * リンクのターゲット（リンク先）はインターフェイスメッセージの名前（MediaWiki 名前空間のページ名）あるいはウィキページの名前もしくは外部のリンクが入ります. どの場合にもリンクは内部リンク、ウィキ間リンク、外部リンクのどれも該当し、特定の場合（記号「&」を含むリンク）はインターフェイスメッセージの設定が必要です. リンクのターゲットは個人設定で指定した利用者の言語に依存しません.
 * The link target can be the name of an interface message (page in the MediaWiki namespace) or wiki page, or an external link. In either case, the link can be internal, interwiki, or external. In some cases (such as links with the "&" character), an interface message is necessary. The link target cannot be made dependent on the interface language set in the preferences.


 * アルゴリズムは以下のとおり:
 * ターゲットテキストを取得.
 * その名前の既存または既定のインタフェースメッセージがある場合、そのメッセージの内容を代用.
 * 出力が有効なURLである場合（http://または他のURLプロトコルで始まる）は、リンクはそのURLを指す.
 * 有効なURLでない場合は、それをwikilinkのリンクターゲットとして扱う（そのページ名またはインターウィキへリンク）.
 * もし ' - ' にリンクする場合、入力内容を全てサイドバーから削除する（リンクを保持しているメッセージの変更を利用して実行できるため、特定のエントリをすべての言語版から削除したいときに使える方法）.


 * 例:
 * " " MediaWiki:Portal-urlの文字列を使用 (出力は"").
 * " " リンク先はSpecial:最近の更新. 一致するインタフェースメッセージがないため.
 * " " 同じ理由でw:Fooにリンク.
 * " " 同じ理由でhttp://www.mediawiki.orgにリンク.


 * リンクの文字列
 * インタフェースメッセージの名称と同じ（MediaWiki 名前空間のページ）または平文（プレーンテキスト）でよい.
 * リンクの文字列が既存もしくは既定のインタフェースメッセージと一致すると、メッセージの内容を使用. MediaWiki は自動で地域化バージョンを照会する. 例えば使用言語がfr（フランス語）でリンクの文字列がインタフェースメッセージ「forum」だったと仮定すると、「forum/fr」を照会してから「forum」を使用する.
 * それ以外の場合には、リンクの文字列をそのまま使用.
 * 通常のウィキリンクと異なり、リンクの文字列は必須. リンクの文字列がないと その項目は無視される ことに注意.
 * The link text can be the name of an interface message (page in the MediaWiki namespace) or plain text.
 * If the link text is the name of an existing or default interface message, the content of that message will be used. MediaWiki will check for localized versions; for example, if the current language is fr (French) and the link text is the interface message "forum", it will check for "forum/fr" before using "forum".
 * Otherwise, the link text is used as the target as-is.
 * Notice that the link text is not optional as in normal wiki links. If the link text is missing, the item is ignored.


 * 例:
 * uses MediaWiki:Mainpage (which contains "").
 * uses "Recent changes", since there is no interface message of that name.

要素の順序
サイドバーの要素には既定の順序があり、「ナビゲーション」、「検索」、「ツールボックス」、「言語」の順です. 順序の変更は（MediaWiki 1.13+）MediaWiki:Sidebarに見出し構文を用いて特殊なキーワード（SEARCH、TOOLBOX、 LANGUAGES）を追加します. 例として、次のコードで検索ボックスをサイドバーのいちばん上に移動します.
 * SEARCH
 * navigation
 * mainpage|mainpage
 * Special:Recentchanges|Recent changed
 * new heading
 * portal-url|portal
 * http://www.mediawiki.org|MediaWiki home

Tooltips and Accesskey
If you add an item to the sidebar, it will have no tooltip associated. But you can create such a tooltip by doing the following:
 * create a wiki page named "MediaWiki:Tooltip-n- "
 * and put the tooltip in that page.

Accesskeys can also be created by doing the following:


 * create a wiki page named "MediaWiki:Accesskey-n- "
 * and put the accesskey in that page.

Example:


 * uses MediaWiki:Tooltip-n-mainpage-description and MediaWiki:Accesskey-n-mainpage-description.

翻訳
文字列を翻訳して使用するには、MediaWiki 名前空間で該当するページを編集します.

例: 「メインページ」という名の項目を置換する文字列は、MediaWiki:Mainpageから取ります. ドイツ語版ウィキを使用するユーザーのために文字列を設定/変更するには、使いたい文字列をMediaWiki:Mainpage/deに記入します.

これでMediaWikiのインタフェースを使ってリンクの文字列を簡単に置換できます.

注意事項としてMediaWikiが既定で使用するサイドバーページは、その 言語つまりあなたのウィキの既定の使用言語のものです. 例えば仮にフランス語が既定の使用言語だとすると、MediaWiki:Mainpage/frを編集すると、個人で言語設定を変更していなくても、あるいは匿名の利用者を含むすべての利用者に対し、フランス語版のサイドバーが表示されます.

さらに高度な翻訳の解説は を参照してください.

高度なカスタマイズ
サイドバーを思い通りにカスタマイズするにはJavaScriptもしくはCascading Style Sheetsを実行、あるいは直接、PHPファイルを編集します. これらの方法に取りかかる前に以下の注意点に目を通してください.
 * 壊れやすい JavaScript の扱い: JavaScript を無効にした利用者には役立たないほか、ブラウザや外装によりうまく作動しない頻度が高まります.
 * PHP ファイルを編集すると予想外のエラーを招きやすく、新規ファイルを手動で書き換えない限り、変更箇所は次回の更新で失われます.

UI メッセージを強制的に内容に沿わせる
特に多言語版の場合、ページによっては時により内容の言語に合わせて調整する必要があります. その実現には$wgForceUIMsgAsContentMsgの設定を変えます. この方法でそれぞれのメッセージを上書きする場合には、メインページの内容の言語のバージョンに対してサイドバーからリンクを貼り、かつポータルページから以下を渡すように個別に調整します.


 * code

ツールボックスのセクションを追加または削除する（JavaScript）
The toolbox, which appears under the search bar, is a dynamic element and cannot be easily customized without the use of skinning extensions (otherwise it requires programming in PHP.) If you still want to do so, you can copy, creating a new skin. You can then make a custom skin to generate these links in your preferred fashion.

以下に、別のJavaScriptソリューションを示します.

For this solution to work on the entire MediaWiki site, this script has to be copied to MediaWiki:Common.js (MediaWiki:Common.js is available for MediaWiki 1.9 +).

For this solution to work only for a specific user, add this script to Special:MyPage/common.js (or the JS page for the user's current skin, such as Special:MyPage/monobook.js).

次に、どのセクションにどのリンクを表示するかを設定するだけです. また、必要に応じていくつかのリンクを削除することもできます.


 * code


 * Usage
 * has to be customized for adding or removing links in specific sections:



 If you want to restrict the modification of the links to a specific user group (e.g. bureaucrat), change: to
 * 特定の利用者グループへの変更を制限する

For restricting the modifications to IPs instead of a specific user group, use

ツールボックスのセクションを追加または削除する（PHP）
You can add in your file LocalSettings.php the hook described on this page. With this, you can modify via MediaWiki:Sidebar the links in the toolbox panel (remove some links, change their name) and add custom links (e.g. add the "Recent changes" link there instead of the navigation panel.

Make expanding/collapsing sidebar for all users (Monobook skin only)
If you use the Monobook skin and don't want to miss the expandable menu bar from e.g. Vector skin, paste the following code into MediaWiki:Monobook.js of your wiki.

Sidebar width in Monobook skin (CSS)
You can change the width of your sidebar by adding the following CSS rules to your MediaWiki:Monobook.css; note that this is an article, not a file. This changes the width to 15em, the actions position and portlet width should be an em or so less, so I've set them to 14em in this example.

Change sidebar content when logged in (PHP)
You can modify the sidebar using a hook. Create a small extension of your own or put the code directly into your LocalSettings.php file.

Some example code adding a 'navigation' sidebar block with a login link for logged out users.

Parser functions in sidebar
Although it is not exactly recommended, the sidebar does support parser functions (such as ParserFunctions), provided the  is outside the parser function, and the parser function does not span multiple lines. For example:
 * Heading

works. However the following would not work since the parser function spans multiple lines:
 * Heading

Changes not showing up
MediaWiki aggressively caches content if possible, which often causes the navigation bar to persist after changes. Purging the cache of affected pages should correct the situation. To perform a mass-purge of all caches at once, touch the  file or truncate the   table in your database (you may have to do both).

You also need to have $wgUseDatabaseMessages set to.

If you are a user or average wiki admin, you will not be able to do the advanced stuff above to get changes to show up. If purging does not work either, you can sometimes still see CSS changes right away in preview (especially when changing your personal CSS). For example; changing the sidebar width, padding, or margins. Changes can take awhile to show up after saving though. If nothing shows up after awhile you may need to contact the overall wiki, or wiki farm, sysop.

Lowercase link labels
If your links are not being capitalized as intended, try adding spaces around the bar character; for example: ** http://www.example.com/download.php?file=44555 | Download

Sections disappear or show unexpected content
If a section does not display or displays unexpected content, check that the header text isn't the name of an interface message by searching Special:AllMessages. If it is, use a different header text, or create a new interface message and use it.

For example, if you want to use "Sidebar" as header text, create the interface message "MediaWiki:Sidebar-header" containing only "Sidebar". Then, use  as header.

Sections are not displayed if there are no links of the form  (e.g. when the target was forgotten).

Broken links after updating Special:Version
This will happen e.g., each time there are newer translations for your site language's sidebar items. One could add new redirect pages each time, but a better solution would be to use one's own sidebar item names instead of trying to keep track of the current MediaWiki translations.

Ancient versions of MediaWiki
If you have a pre-release version of 1.5 Beta, or earlier, it is still possible in some cases to edit the sidebar:
 * Prior to 1.5 branching (between rev:9150 and rev:9177) the message utilized was briefly MediaWiki:Navbar.
 * Before this, version 1.4 had (from rev:5528 to rev:9150) a global variable, titled $wgNavigationLinks.

関連項目

 * w:User:Mike Dillon/Sidebar
 * User:Goldbishop/Sidebar (updated for MW 1.19)
 * - Unsupported PHP modifying hacks that used to be on this page
 * w:User:Mike Dillon/Sidebar
 * User:Goldbishop/Sidebar (updated for MW 1.19)
 * - Unsupported PHP modifying hacks that used to be on this page
 * - Unsupported PHP modifying hacks that used to be on this page