2012-03-02 11 views
6

ローカルネットワーク上にMediaWikiをインストールする際に問題があります。私はドイツ語でMediaWikiを使用しています。私のwikiには、404エラーを投げるいくつかのフッターリンクがあります。たとえば、フッターにリンクImpressum(英語:免責事項)があります。それは存在しない*NameOfMyWiki*:Impressumを指しています。デフォルトの存在しないフッターリンクを削除する

MediaWiki:Disclaimersに行くと、免責事項が表示されます。これは、*wgSitename*:Impressumの後ろにあるページです。免責事項のリンクをMediaWiki:Disclaimersにする必要があるとは思われません。

おそらく同じ問題に基づいているもう1つの動作は、ユーザーページがまだ空の場合、またはまだ作成されていない場合に、自分のユーザーページで404を取得することです。(右上のリンクをクリックします設定)。別のユーザーが最初のユーザーのユーザーページを編集すると、最初のユーザーはそれにアクセスして編集することもできます。しかし、それがまだ空のとき/定義されていないときはない。

どうすれば修正できますか?

答えて

9

text of the footer linksは、インターフェイスメッセージMediaWiki:Privacy,MediaWiki:AboutsiteおよびMediaWiki:Disclaimersからのものです。これらのリンクを無効にするには、は対応するリンクテキストを単一のハイフン-)に設定します。

また、MediaWiki 1.17以降では、フッターをdefining a hook in your LocalSettings.phpで変更することもできます。

ps。ソースまで進んでみたい人にとっては、これらのリンクを扱うコードはSkin::footerLink()メソッドにあります。対応するメッセージを-に設定することにより、さまざまなインターフェイス機能を無効にする習慣は、実際はMediaWikiではかなり一般的です(一般的ではありません)。歴史的な理由から完全に空白のメッセージは少し変わって扱われるため、「価値なし」のスタンドとしては通常-が使用されます。


編集:私はちょうどあなたがまたユーザーページに関する2つ目の質問を求めていたことに気づいた。 MediaWikiはwikilinkを見ると、必ずしもすべて、ナビゲーションメニューのリンクもありませんが、ほとんどの(

  • :より良いその質問に答えるために、私はMediaWikiの存在しないページを処理する方法を記述することから始めてみましょう同じ方法で処理されます)存在しないページを指している場合は、redlinkと呼ばれるものが作成されます。これらのリンクは、普通のリンクとは違ったスタイルになっています(通常は赤色になります)。action=edit(特別な種類の編集リンクにします)とと表示されているURLにlike this oneのURLをポイントします。

  • それがされていない場合、ユーザーは、ユーザーが作成し、それを編集することが許可されていることを、このようなリンク、MediaWikiの最初のページは平均時間で作成されていないことを確認し、をクリック

    1. ページが存在する場合、ユーザーはページの通常の表示URLにリダイレクトされます。

    2. ページが存在せず、ユーザーが作成できない場合は、通常ビューのURLにリダイレクトされ、HTTP 404ステータスコードとそのページが行うことを示すメッセージが返されます存在しない。 (これは、あなたがWikipediaの管理者でない限り、上記の「このような」リンクをクリックすると起こります)。

    3. 最後に、ページは存在しないが、 MediaWikiはURLを通常の編集リンクのように扱い、編集フォームを表示します。何らかの理由で、あなたのwikiに自分のユーザーページへのリンクをクリックすると、新しいユーザーが期待ケース3の代わりに、上記のケース2をヒットしている。これは、user rights問題かもしれないが、同じよう

それはなります。特に、あなたのウィキの通常のログインユーザー(グループuser)がcreatepage権限を持っていることを確認する必要があります。

あなたは、通常のユーザーがのみ自分のユーザーページを作成できるようにしたい場合は、そこにいることを行うための方法がありますが、私の知っていることすべてがextensionをインストールしたり、独自のgetUserPermissionsErrorsフックを書くのいずれか伴います。あなたが望むならそれを行う方法の例をいくつか教えてもらえますが、少しのコーディングが必要です。

+0

その詳細な回答ありがとうございました。 Wordpressのような普通のCMSから来たときに、wikiの仕組み(名前空間、フッターのリンクなど)を理解するのは簡単ではありません。問題は、サイドバーのリンクが赤いリンクではなかったことです。私はページを検索し、見つからなかったのでそれらを作成しなければなりませんでした。その後、意図どおりに動作しました。ユーザー権利について:ユーザーはページを作成する権限を持っています。あなたが言及した拡張子で試してみます。 – Gchtr

0

これらのリンクは、あなたが入力したいかもしれないプレースホルダーです。これらは、新しいwikiの重要な部分を簡単に記入できるように提供されています。

完全なリストについては、http://www.mediawiki.org/wiki/Manual:Footerを参照してください。

実際に無効にする設定はありません。

+0

こんにちは、ハッシュ、そしてStackOverflowへようこそ! :)あなたの答えはそれ以外の点では優れていますが、最後の文は間違っています:MediaWiki:messagesを編集するだけで、これらのリンクを無効にする方法があります。 –

+1

ありがとう!私は、MediaWikiがPHPファイルからメッセージを取得するためにフォールバックするので、明らかに間違っているページを空白でテストしただけです。 Manual:Footerページへのあなたの追加は正しいです:ハイフンを追加するだけです - –

+0

あなたの助けを借りて、これらのリンクを編集する方法を理解しました。私は各リンクテキストがそれ自身の 'MediaWiki:'ページで定義されていることを理解するのに長い時間がかかりました。 Manual:Footerで実際にハイフンを使うべきだと言います。D – Gchtr

0

イルマリKaronen上記で述べたリンク:

また、MediaWikiの1.17以来、あなたはまた、 defining a hook in your LocalSettings.phpでフッターを変更することができます。

...は、フッターリンクの組み込みリストにリンクを追加する方法を示しています。表示されていないのは、元の質問があった既存のビルトインフッターリンクを削除する方法です。

これは、参照されるフックソリューションに簡単に追加されたことになります。テンプレート配列内の既存のフッターリンクを破棄するだけで済みます。

ほとんどの人は、組み込みフッターリンクを削除するだけでなく、独自のフッターリンクを追加することもできます。 StackOverflowの精神で、ここには両方を行う完全なサンプルソリューションがあります(これは既存のWikiからです)。

これはmediawiki-1.29.2で動作しますが、多くの古いバージョンでも動作します。既存のフッターのリンクを削除し、独自に追加する(私は一番下にそれを置く)あなたのLocalSettings.phpファイルにこのコードを入れてください:

# Remove all existing footer links and add my own 
$wgHooks['SkinTemplateOutputPageBeforeExec'][] = function($sk, &$tpl) { 

     # IMPORTANT: this is the secret sauce - remove all existing footer links 
     $tpl->data['footerlinks']['places'] = array(); 

     # To add new footer links to local wiki pages: 
     # 
     # 1) You MUST create your new pages in your (Main) namespace first, for example: 
     # 
     #  http://<your-site>/wiki/index.php/About_Us 
     #  http://<your-site>/wiki/index.php/Contact_Us 
     #  http://<your-site>/wiki/index.php/Disclaimer 
     #  http://<your-site>/wiki/index.php/Download 
     #  http://<your-site>/wiki/index.php/Privacy_Policy 
     # 
     # 2) You MUST then create each of these pages in your MediaWiki namespace: 
     # 
     #  http://<your-site>/wiki/index.php/MediaWiki:Aboutpage 
     #    - Insert 1 line, with "About Us" (no quotes) 
     #  http://<your-site>/wiki/index.php/MediaWiki:Contactpage 
     #    - Insert 1 line, with "Contact Us" (no quotes) 
     #  http://<your-site>/wiki/index.php/MediaWiki:Disclaimerpage 
     #    - Insert 1 line, with "Disclaimer" (no quotes) 
     #  http://<your-site>/wiki/index.php/MediaWiki:Downloadpage 
     #    - Insert 1 line, with "Download" (no quotes) 
     #  http://<your-site>/wiki/index.php/MediaWiki:Privacypage 
     #    - Insert 1 line, with "Privacy Policy" (no quotes) 
     # 
     # 3) Add new footer links like this: 

     $tpl->set('aboutpage', $sk->footerLink('aboutpage', 'aboutpage')); 
     $tpl->data['footerlinks']['places'][] = 'aboutpage'; 
     $tpl->set('contactpage', $sk->footerLink('contactpage', 'contactpage')); 
     $tpl->data['footerlinks']['places'][] = 'contactpage'; 
     $tpl->set('disclaimerpage', $sk->footerLink('disclaimerpage', 'disclaimerpage')); 
     $tpl->data['footerlinks']['places'][] = 'disclaimerpage'; 
     $tpl->set('downloadpage', $sk->footerLink('downloadpage', 'downloadpage')); 
     $tpl->data['footerlinks']['places'][] = 'downloadpage'; 
     $tpl->set('privacypage', $sk->footerLink('privacypage', 'privacypage')); 
     $tpl->data['footerlinks']['places'][] = 'privacypage'; 

     return true; 
}; 

重要:指示に従うと、あなたを作成することを忘れないでください自身のページとそれに対応するMediaWikiのリダイレクト、またはリンクが表示されない、またはリンクが壊れている可能性があります。

関連する問題