DokuWiki

It's better when it's simple

ユーザ用ツール

サイト用ツール


ja:plugin:hidingip

差分

このページの2つのバージョン間の差分を表示します。

この比較画面へのリンク

両方とも前のリビジョン前のリビジョン
次のリビジョン
前のリビジョン
ja:plugin:hidingip [2018-06-02 01:31] hokkaidopersonja:plugin:hidingip [2020-07-14 10:08] (現在) – 新バージョン Hogfather と互換性あり hokkaidoperson
行 5: 行 5:
 author     : Hokkaidoperson(北海道ゆっくり放送) author     : Hokkaidoperson(北海道ゆっくり放送)
 email      : dosankomali@yahoo.co.jp  email      : dosankomali@yahoo.co.jp 
-type       : Action +type       : Action, Helper 
-lastupdate : 2018-06-02 +lastupdate : 2018-11-05 
-compatible : Greebo, 2018-04-22 +compatible : Greebo, Hogfather 
-tags       : !experimental, ip, annonymous+tags       : ip, anonymous
  
 downloadurl: https://github.com/hokkaidoperson/DokuWiki-HidingIP-Plugin/archive/master.zip downloadurl: https://github.com/hokkaidoperson/DokuWiki-HidingIP-Plugin/archive/master.zip
行 14: 行 14:
 sourcerepo : https://github.com/hokkaidoperson/DokuWiki-HidingIP-Plugin/ sourcerepo : https://github.com/hokkaidoperson/DokuWiki-HidingIP-Plugin/
 ---- ----
- 
-:!: このプラグインはまだ実験的です。全てのIPアドレスを防げる保証はありません。 
  
 ===== 概要 ===== ===== 概要 =====
行 25: 行 23:
  
 ですが、IPアドレスを晒したくない人も多いかと思います。\\  ですが、IPアドレスを晒したくない人も多いかと思います。\\ 
-このプラグインでは、そのようなIPアドレスを代替テキスト(デフォルトは''非ログインユーザー'')に置き換えます。+このプラグインでは、そのようなIPアドレスを代替テキスト(デフォルトは''非ログインユーザー'')に置き換えます。
  
 管理者は、このプラグインの在り無しに関わらず常にIPアドレスを見れる状態です。 管理者は、このプラグインの在り無しに関わらず常にIPアドレスを見れる状態です。
行 32: 行 30:
  
 [[ja:plugin:plugin|プラグインマネージャー]]と、上記URLを利用すると、プラグインの最新版をインストール出来ます。\\  [[ja:plugin:plugin|プラグインマネージャー]]と、上記URLを利用すると、プラグインの最新版をインストール出来ます。\\ 
-プラグインを手動でインストールする場合は[[ja:Plugins]]をご覧下さい。+プラグインを手動でインストールする場合は[[ja:Plugins|こちら]]をご覧下さい。
  
 ===== 使い方 ===== ===== 使い方 =====
行 38: 行 36:
 特別な設定は不要です。\\ 特別な設定は不要です。\\
 プラグインをインストールした後、次の場所に表示されるIPを隠そうとしてくれます。 プラグインをインストールした後、次の場所に表示されるIPを隠そうとしてくれます。
-  * 最近の更新 +  * 最近の更新(イベント「[[devel:event:html_recentform_output|HTML_RECENTFORM_OUTPUT]]」経由) 
-  * 以前のリビジョン +  * 以前のリビジョン(イベント「[[devel:event:html_revisionsform_output|HTML_REVISIONSFORM_OUTPUT]]」経由) 
-  * 差分表示 +  * 差分表示(イベント「[[devel:event:tpl_content_display|TPL_CONTENT_DISPLAY]]」経由) 
-  * 最終編集者 +  * 最終編集者(イベント「[[devel:event:common_user_link|COMMON_USER_LINK]]」経由) 
-  * 編集ロック+  * 編集ロック(イベント「[[devel:event:common_user_link|COMMON_USER_LINK]]」経由)
  
 表面的にデータを書き換えるだけですので、コアデータは変更されません。 表面的にデータを書き換えるだけですので、コアデータは変更されません。
 +
 +プラグインの稼働タイミングは設定変更出来ます([[#設定変更|後述]])。
 +
 +==== Helperプラグインのオプション ====
 +このプラグインで使用している代替テキスト「非ログインユーザー」のローカライゼーション(テキストの英語版、フランス語版etc.)を、他のプラグインでも使用出来ます。\\
 +
 +コードのサンプルです
 +<code PHP>
 +if (!isset($_SERVER['REMOTE_USER'])) {
 +    if(!plugin_isdisabled('hidingip')) {
 +        $hidingip = plugin_load('helper', 'hidingip');
 +        $user = $hidingip->altText();  // "$hidingip->getLang('notloggedin')"も同じ働きをします
 +}
 +</code>
 +
 +実用的なサンプルについては、拙作の[[plugin:autotweet2|Autotweet2プラグイン]]が参考になると思われます([[https://github.com/hokkaidoperson/DokuWiki-AutoTweet2-Plugin/blob/master/action.php#L71|こちら]])。
  
 ==== どうやって隠しているの? ==== ==== どうやって隠しているの? ====
 === 最近の更新と以前のリビジョンでは… === === 最近の更新と以前のリビジョンでは… ===
-''$event->data->_content['(任意の数字)']['class']''に文字列'user'があった場合、''$event->data->_content['(その次の数字)']''には、ユーザー名もしくはIPアドレスが保持されています。\\+''%%$event->data->_content['(任意の数字)']['class']%%''に文字列'user'があった場合、''%%$event->data->_content['(その次の数字)']%%''には、ユーザー名もしくはIPアドレスが保持されています。\\
 なので、このプラグインではその'user'文字列を検出し、見付かった場合、''$flag''変数にTRUEを代入します。\\ なので、このプラグインではその'user'文字列を検出し、見付かった場合、''$flag''変数にTRUEを代入します。\\
 その''$flag''変数がTRUEの場合に、文字列内にIPアドレスがあるかチェックします。もしあれば、それを非表示にします。\\ その''$flag''変数がTRUEの場合に、文字列内にIPアドレスがあるかチェックします。もしあれば、それを非表示にします。\\
行 57: 行 71:
  
 === 最終更新者と編集ロックでは… === === 最終更新者と編集ロックでは… ===
-単純IPアドレスと思しきユーザー名換えます。\\+:!: **仕組み変更があります** 
 + 
 +''%%$event->data['username']%%''IPアドレスと思われる場合、''%%$event->data['name']%%''込みます。\\
 :!: IPアドレスっぽいユーザー名だった場合、ログイン中であってもうっかり置き換えられてしまいます。例:3.57.2.13((レアケースだとは思うけど)) :!: IPアドレスっぽいユーザー名だった場合、ログイン中であってもうっかり置き換えられてしまいます。例:3.57.2.13((レアケースだとは思うけど))
 +
 +===== 設定変更 =====
 +[[ja:plugin:config|設定管理プラグイン]]から、以下の設定を変更出来ます。
 +
 +^オプション^説明^値のタイプ^既定値^
 +|''whenToHide''|プラグインの稼働タイミング(テキストボックスでは、他のプラグインでHidingipプラグインを補助利用(Helperプラグイン)する際の稼働タイミングを指定出来ます。)|''revision''(以前のリビジョン)、''recent''(最近の変更)、''diff''(差分表示)、''userlink''(COMMON_USER_LINKイベント(編集ロック表示や、最終編集者表示など))からの複数選択|''revision,recent,diff,userlink''|
 +|''rightToSeeIP''|誰がIPアドレスを見れるか(設定「[[ja:config:manager]]」「[[ja:config:superuser]]」参照)|''sp''(スーパーユーザー)、''mg''(マネージャー(スーパーユーザー含む))のプルダウン選択|''sp''|
  
 ===== 開発 ===== ===== 開発 =====
行 68: 行 91:
   * **2018-06-02**   * **2018-06-02**
     * 文字化け修正     * 文字化け修正
 +  * **2018-10-24**
 +    * バグ修正アップデート(WARNINGレベルのエラーが発生していた問題と、[[ja:config:showuseras|サイト設定「showuseras」]]が「''username_link''」もしくは「''email_link''」だった場合にプラグインが上手く作動しなかった問題)
 +  * **2018-10-30**
 +    * オプションの追加(設定項目と、Helperプラグインセクション)
 +  * **2018-11-05**
 +    * 不適切な文法を修正
  
 === 既知のバグや問題 === === 既知のバグや問題 ===
行 84: 行 113:
  
 ===== 議論 ===== ===== 議論 =====
- 
- 
- 
- 
  
ja/plugin/hidingip.1527895878.txt.gz · 最終更新: 2018-06-02 01:31 by hokkaidoperson

特に明示されていない限り、本Wikiの内容は次のライセンスに従います: CC Attribution-Share Alike 4.0 International
CC Attribution-Share Alike 4.0 International Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki