=== MediaWiki 管理者 ..
271:nobodyさん
07/11/23 11:43:17 BnSwkrBF
Mediawikiの携帯対応のエクステンションってありませんか?
探しているんですけど全く見つからなくて…
272:nobodyさん
07/11/23 12:30:11
>>261
参考にさせていただきました。
別解として。
<?php foreach($this->data['content_actions'] as $key => $tab) if(($this->data['loggedin']==1) or in_array($key , array('nstab-main' ,'viewsource')) ) { ?>
こんな感じでもいけると思います。
タブを増やすときはarrayのなかに ,'edit' などと追加しやすいと思います。
273:nobodyさん
07/11/23 12:34:12
>>260を参考にして。
「ログインもしくはアカウント作成」
「利用者(ページ)」「オプション」「ログアウト」
のみを表示する。
<?php foreach($this->data['personal_urls'] as $key => $item) if(in_array($key , array('anonlogin' ,'userpage' ,'preferences' ,'logout')) ) { ?>
,'preferences' をとるともっとすっきりするかも。
274:nobodyさん
07/11/23 12:45:42
>>268
wiki/メインページ のリンクをindex.htmlに飛ばすなら、>>269のほかに
mod_rewrite等による書き換えも必要だと思います。
.htaccessの中に
RewriteEngine On
RewriteRule /w/index.php?title=メインページ /index.html [L]
かな?自信ないけど。
275:nobodyさん
07/11/23 12:47:09
>>271は俺も気になる
>>251読んだ人。参考になるのか教えてほしい。
276:nobodyさん
07/11/23 19:24:53
>>272-273 添削ありがとうございます。ベン図で書くような複雑な集合関係を元に
条件分岐をするのに悩んでいたのですが、配列を使うときれいになるんですね。
最近、毎回行列計算をしているような感覚です。
277:nobodyさん
07/11/23 20:11:38
>>271 >>275 モバイル対応の関心が少しずつ高まっている気がするので
収集した記事のURLを貼っておきます。
現状ではWikipediaのデータ利用がほとんどですが。
URLリンク(www.mediawiki.org)
URLリンク(en.wikipedia.org)
でいくつかのサービスが紹介されているが、日本語記事を表示できるのは以下の2つ。
Wapedia
URLリンク(wapedia.mobi)
wikipedia.7val.com
(記事を探すには下記のURLのwiki/の後に記事名を入力)
URLリンク(wikipedia.7val.com)
暇つぶしWikipedia
URLリンク(mobile.seisyun.net)
モバイルgoo Wikipedia記事検索
URLリンク(wpedia.mobile.goo.ne.jp)
ウィッキー
URLリンク(wicky.jp)
ローカル環境でのMW(Wikipedia)のデータの利用
Building a (fast) Wikipedia offline reader
URLリンク(www.softlab.ntua.gr)
PHP HACKS #96 PSP版Wikipediaを作成する
URLリンク(www.oreilly.co.jp)
おまけ
OpenMoko
URLリンク(wiki.openmoko.org)
the iPhone Dev Wiki
URLリンク(iphone.fiveforty.net)
278:nobodyさん
07/11/23 21:22:03 BnSwkrBF
LocalSettings.phpの$wgSitenameに日本語のタイトルを入れたいのですが、
日本語だと文字化けしてしまいます。
どのようにしたら日本語のタイトルを入れられるのでしょうか?
279:nobodyさん
07/11/23 22:51:15 iwWWfONr
>>278
UTF-8で入れる
280:278
07/11/23 23:22:16
>279
すいません。よく分からないです…
初心者で申し訳ないのですが
ご教授お願いします。
281:nobodyさん
07/11/23 23:43:28 iwWWfONr
>>280
1. LocalSettings.phpをメモ帳で開く
2. 好きなだけ日本語でタイトルを書く
3. メニューから「名前を付けて保存」を選択
4. ダイアログ下部の「文字コード」の欄で、「UTF-8」を選択
5. LocalSettings.phpに上書き保存する
以上。
282:nobodyさん
07/11/24 00:53:40
>>278
MediaWiki の PHPファイルを書きかえるとき、
ファイルの文字コードが今なにになっているのかメモ帳では分からないと思います。
もし、メモ帳のような簡易すぎるテキストエディタを使っていらっしゃるのでしたら、
ファイルを編集中にどんな文字コードで編集しているのかが分かるような
少し機能が拡張されているようなテキストエディタを使われてはいかがでしょう!?
参考リンク:テキストエディタ一覧@窓の杜
URLリンク(www.forest.impress.co.jp)
そのようなエディタを使っていらっしゃらなかったら…ということでご参考までに〜
283:278
07/11/24 10:21:59
>281さん、282さん
親切にありがとうございました。
解決致しました。本当にありがとうございます!
284:nobodyさん
07/11/25 00:53:35
>>280
できればバイナリエディタで先頭の3バイト(BOM)を飛ばしたほうがいいと思われ。
285:nobodyさん
07/11/25 07:42:37
wikpedia のxmlダンプファイルからtextを抽出する関数って、
mediawiki に含まれていますか? html を抽出する方法はわかるのですが...
286:nobodyさん
07/11/25 10:51:46
>>242
URLリンク(www.mediawiki.org)
ここを参考にして以下を作成してみました。
===
<!-- External Links in a new Window -->
<script type="text/javascript">
var Xterlinks = document.getElementsByTagName('A');
for (var i=0;i<Xterlinks.length;i++) {
var eachLink = Xterlinks[i];
var regexp_isYourdomain="<?php echo $_SERVER["SERVER_NAME"] ?>"; //for example "meta.wikimedia"
var regexp_ishttp=/(http(.)*:\/\/)/;
//Check if the link is valid and is external link
if( (eachLink.href != null) && (eachLink.href.match(regexp_isYourdomain) == null) && eachLink.href.match(regexp_ishttp)!=null ) {
eachLink.target ="_blank";//make the target for this external link
}
}
</script>
<!-- /External Links in a new Window -->
===
これをMonoBook.phpの</body>の直前に入れればOKです。(全角スペースは適宜tabに置換)
※詳しい人添削よろしく。
287:273
07/11/25 10:54:45
>>273
こうかも
<?php foreach($this->data['personal_urls'] as $key => $item) if(in_array($key , array('login' ,'anonlogin' ,'userpage' ,'preferences' ,'logout')) ) { ?>
288:nobodyさん
07/11/25 17:36:34
メーリングリストの一覧が一新されていました。
URLリンク(www.mediawiki.org)
最近新しく創設されたのはwikitext-lでwikiのマニュアルの執筆が急速に進んでいます。
URLリンク(lists.wikimedia.org)
URLリンク(www.mediawiki.org)
半月ほど前にMediaWikiローカライゼーションのサイトが移転しました。
URLリンク(lists.wikimedia.org)
移転先: URLリンク(translatewiki.net)
ローカライゼーションの進行状態は下記のページで確認できます。
URLリンク(www.mediawiki.org)
289:sage
07/11/27 23:16:19 NEMtzNPd
トップページにアクセスすると、title=つきのページにリダイレクトされてしまいます。
hoge.com
↓
hoge.com/index.php5?title=メインページ
非常にみぐるしくて困ってるのですが、hoge.com だけでメインページを表示するにはhtaccess等を使うしかないのでしょうか?
またページ左上ロゴからのトップへのurlも hoge.com にしたいのですが、こちらもテンプレートを弄る必要があるのでしょうか。
ご存知の方がいましたら、教えてくださいませ。
290:丸川珠代/まるたまのパンチラ
07/11/27 23:58:46
丸 川 珠 代/ま る た ま の パ ン チ ラ
スレリンク(psycho板:117番)
スレリンク(soc板:90番)
スレリンク(seiji板:309番)
スレリンク(sfe板:38番)
スレリンク(seiji板:125番)
スレリンク(kyousan板:99番)
スレリンク(owabiplus板:106番)
,イ ノヽ
f ヽ_ _,. - '´ ヽ
( ヽ`ヽ、_____,. -―' ´ 、 ヽ
|ヽ ヽ レrtう _,. -――-、 \ヽ
| ヽ くハ! // \ }
| ヽ / ヽ|
| \ / |
| ヽ- - / |
| ヽ ,' |
! ヽ-! |
小泉チルドレンの 佐 藤 ゆ か り の パ ン チ ラ がなーーーーい!
291:nobodyさん
07/11/28 03:26:51
mediawiki 1.6.10を使っています。
ログイン状態を記録するcookie(hoge_UserNameとhoge_UserID)の有効期限を
セッション終了までとしたいのですが、
$wgCookieExpirationの値を-3600とかにすると、cookieそのものが作成できませんでした。
includes/User.phpのsetCookies()で
$exp = time()-3600;
とか直接設定してみてもダメでした。
何か良い方法はないでしょうか。
292:nobodyさん
07/11/28 03:32:38
>>285
これ使ってみ。Python製だけど。
URLリンク(svn.razil.jp)
293:nobodyさん
07/11/28 07:30:58
>>289
URLリンク(www.mediawiki.org) で紹介されている方法を試して下さい。
ただ、公式サイトがサブディレクトリで運営している通り、ルートディレクトリでURL短縮して
安定した動作をさせるのは難しいです。
294:nobodyさん
07/11/28 07:39:25
>>285
PHP5であればSimpleXML関数があります。
<?php
// XMLファイルを読み込み解析する
$xml = simplexml_load_file('test.xml');
// 複数のページをダンプして2番目のページを取得する
echo $xml->page[1]->revision->text;
// 一つのページをダンプした場合
#echo $xml->page->revision->text;
// オブジェクトの一覧を表示する(確認用)
#print_r($xml);
295:nobodyさん
07/11/28 07:46:19
>>294 の続き
さらに取得したwikitextを手軽にhtmlに変換したい場合は
Text_Wiki_Mediawikiというのがあります。
URLリンク(pear.php.net)
MediaWiki本体でさえwikitextが正常に変換されないことがあるので
変換後にtidy関数などで整形する必要があるかもしれません。
現在アルファ版しか公開されていないので
PEARのインストールコマンドに-alphaを追加します。
pear install Text_Wiki_Mediawiki-alpha
<?php
require_once("Text/Wiki/Mediawiki.php");
$wiki=new Text_Wiki_Mediawiki();
$wiki->setFormatConf('Xhtml', 'translate', HTML_SPECIALCHARS);
$xml = simplexml_load_file('test.xml');
echo $wiki->transform($xml->page[1]->revision->text);
296:nobodyさん
07/11/28 09:52:52
>>291 $wgCookieExpirationは秒数なので負の値は使えません。
ブラウザが終了した時点でログアウトにするのであれば値を0にします。
297:nobodyさん
07/11/28 18:53:46
知ってる人いますか?
wikipediaは、画像リストに無い画像は、ウィキメディアコモンズの画像を表示するそうです。
[[画像:xxx.png]]で。
設定が可能なんでしょうか?もしくはextensionがありますか?
(自分で簡単なextension書いたほうが早いかも知れないが。。。)
298:nobodyさん
07/11/28 19:47:09
>>297 試したこと無いけど[[Manual:Configuration_settings/ja#共有アップロード]]の
$wgFetchCommonsDescriptionsあたりかな。
調べたついでですが、commonsの画像をWikimediaプロジェクト以外の第三者でも
利用できるようにする計画があるそうです。
URLリンク(commons.wikimedia.org)ファースト・ステップ/リユース
URLリンク(www.mediawiki.org)
299:nobodyさん
07/11/29 10:22:46
>>289に関連して
どうやったら次のことができるかを考えてみた。なるべく手をかけずに
[1] Short URL を使用し(/wiki/$1)
[2] メインページのURLを www.example.com/ にする
[3] ブラウザでアクセスしたときのアドレスバーおよびステータスバーは極力[2]にする
[4] SEOを考慮
300:299
07/11/29 10:27:59
>>299
[1] JavaScriptにて /wiki/メインページ へのaタグのhrefを[2]に変更
[2] httpd or htaccess にて、 /wiki/メインページ を[2]に301リダイレクト
これだけでいけるのかな?
301:299
07/11/29 15:22:14
>>299-300
■httpd.confのShortURLを変更
RewriteEngin On
RewriteRule ^/wiki/メインページ$ / [R=301]
RewriteRule ^/$ /w/index.php?title=メインページ [L]
RewriteRule ^/wiki(.*)$ /w/index.php?title=$1 [PT,L,QSA]
■monobook.phpの</body>の直前に追加(外部リンクの別窓化のJSを使いました)
<!-- External Links in a new Window and Change Main Page URL -->
<script type="text/javascript">
var sMain = encodeURI("メインページ");
var Xterlinks = document.getElementsByTagName('A');
for (var i=0;i<Xterlinks.length;i++) {
var eachLink = Xterlinks[i];
var regexp_isYourdomain="<?php echo $_SERVER["SERVER_NAME"] ?>"; //for example "meta.wikimedia"
var regexp_ishttp=/(http(.)*:\/\/)/;
var sHref = eachLink.href.slice(eachLink.href.lastIndexOf("/",eachLink.href.length)+1);
var eHref = escape(sHref);
//Check if the link is valid and is external link
if( (eachLink.href != null) && (eachLink.href.match(regexp_isYourdomain) == null) && eachLink.href.match(regexp_ishttp)!=null ) {
eachLink.target ="_blank";//make the target for this external link
}else if((sHref == sMain) || (eHref == sMain)){
eachLink.href = "/";//Change Main Page URL
}
}
</script>
<!-- /External Links in a new Window and Change Main Page URL -->
一応、winIEとfirefoxで確認しましたが、間違ってたり冗長なところがあれば、添削よろしくお願いします。
302:299
07/11/29 15:29:19
>>301
スレ汚しすみません。
/が抜けてました。
RewriteRuleの最後
RewriteRule ^/wiki/(.*)$ /w/index.php?title=$1 [PT,L,QSA]
303:nobodyさん
07/11/29 19:45:48
MediaWikiで、ユーザごとに見られるページと見られないページを設定することって
出来ますか?
もし、知ってる方がいたら教えてください。
お願いします。
304:nobodyさん
07/11/29 20:09:08
>>303
どういった使い方を言っているのかをもうちょっと詳しく。
ユーザーごとっていうのは、どういう単位で分類されるの?個人個人?
305:nobodyさん
07/11/29 20:41:35
>>304
個人個人です。
使い方はこんな感じです。
1,2,3,4 5,6,7 という7つのページがあるとして、
AさんとBさんは、1,2,3,4ページ見られるけど、 5,6,7ページは見れない。
CさんとDさんは、5,6,7ページ見られるけど、1,2,3,4ぺージは見れない。
こんな感じで、
グループ単位で見ることが出来るページと出来ないページ
を設定出来ないかなと思っています。
306:nobodyさん
07/11/29 20:52:08
>>305
このページが参考になりそうだ
URLリンク(www.mediawiki.org)
307:nobodyさん
07/11/29 21:47:00
>>306
わざわざありがとうございます!
見たところ
hidden namespaces patchというのがあるようですね。
しかし、日本語解説サイトがない 。。。。orz
どうにか試行錯誤してみます。
308:nobodyさん
07/11/29 23:53:06
>>293
横からすみません。
その「不安定」という表現が具体的にどういう状態を表しているのかが気になっていました。
自分はそこにある説明の通りの方法で ドメイン.net/記事名 というURLにしていて、
特に何の不具合もなく運用できています。
なにか目に見えない部分でまずいことなどがあるのでしょうか。
309:nobodyさん
07/12/01 12:32:57 g4AkB+ru
ソースにあるけど不可視状態になってるものに、
1.「表示」(サイドバーの上のほう)
2.「個人用ツール」(1のちょっと下)
3.「検索」(本文の上部)
4.「ナビゲーション」(3と並んでいる)
5.「"記事URL" より作成」(本文の下部)
がある。
2,3,4はMonobook.phpから直に削除して消すことがきたんですけど、
1と4の消し方がわかりません。テキストを不可視にするというのは
検索エンジンのペナルティ対象だったと思うのでどうしても消したいのですが、
無理なんでしょうか。
310:nobodyさん
07/12/01 15:13:52
社員数1万人規模の会社のイントラネット内で使おうと思っています。
mediawiki自体はウィキペディアでの実績があるとおり数百万の項目でも
大丈夫と思いますが、ファイルのアップロードを許可する予定なのでサーバー
のHDD容量とデータベースの容量が気になるところです。
mediawikiの設置は複数のサーバーに分けることは可能なのでしょうか。
それと、例えばファイルのアップロード先がデフォルトでimagesフォルダー
になっていると思いますが、アップロード先だけ別ドライブにすることなど
はできるのでしょうか。
Googleでは複数のサーバーを設置していると聞きます。本家のウィキペディア
同一言語であればサーバーを分散させているのでしょうか。
分散が可能とするとどのように行うのでしょうか。
311:nobodyさん
07/12/01 15:46:47
>>296
291です。
ありがとうございました。
$wgCookieExpiration = 0;だとcookieが作成できなかったため、
includes/User.phpで $exp=0; としたところ動作しました。
312:nobodyさん
07/12/01 16:20:13
>>310
MediaWiki 側で出来るかどうかは諸先輩方にお知恵を拝借するとして、
ファイルサーバとか OS的な観点から、別ドライブや別マシンの HDD
領域を任意のディレクトリ(フォルダ)のために使うことは可能ですよ。
UNIX でいうとマウントすれば OK です。
Windows は詳しくないですが、ファイル共有でフォルダ指定したり
アプリケーション等で冗長構成を手伝ってくれるものを導入すれば
可能という気がします。
なにはともあれ UNIXベースでマウントやファイルシステムについて
詳しくなっておくと、おっしゃっている状況から想像するに、後々作業が
楽になるような気がします。
参考になりましたら幸いです。
313:nobodyさん
07/12/01 16:38:23
>>312
ご回答ありがとうございました。UNIX等では
そうですね、CドライブとかDドライブなどといった
表現ではなくファイルのマウント操作なので、目的
とするHDDをアップロード先に指定すれば良いという
ことですね。
ただ、今回はWindowsでの構築予定でしたので 他に方法があれば
と思っています。
314:nobodyさん
07/12/01 17:41:54 Xe0Pn79k
>>309
1と4の消し方がわかりません。
→ 1と5の消し方がわかりません。
でした。
315:nobodyさん
07/12/01 18:59:45
>>308 もっとも大規模な公式サイトがルートディレクトリで運用されていないことから
バージョンが上がった場合の動作が保証されないのでそのリスクを承知した上で
実行して下さいということです。最近の事例でも1.11に対して個別の対応ページが書かれています。
もちろん自分で問題解決できるというのであれば心配いりません。
ちなみに私個人ではログインはできたがログアウトのページが通常のページと誤認識されるというのを体験しました。
316:nobodyさん
07/12/01 19:57:01
>>309 >>314
1. 表示:以下のh5要素を削除します
MonoBook.php
<div id="p-cactions" class="portlet">
<h5><?php $this->msg('views') ?></h5>
languages/messages/Messages.Ja.php
'views' => '表示',
5.「"記事URL" より作成」:$outの行をコメントアウトします。
SkinTemplate.php
$printfooter = "<div class=\"printfooter\">\n" . $this->printSource() . "</div>\n";
#$out->mBodytext .= $printfooter ;
Skin.php
function printSource() {
global $wgTitle;
$url = htmlspecialchars( $wgTitle->getFullURL() );
return wfMsg( 'retrievedfrom', '<a href="'.$url.'">'.$url.'</a>' );
}
languages/messages/Messages.Ja.php
'retrievedfrom' => ' "$1" より作成',
システムメッセージに関する公式サイトの資料は次のページにあります。
URLリンク(www.mediawiki.org)()
URLリンク(meta.wikimedia.org)
317:nobodyさん
07/12/01 20:57:11
>>313 WikipediaプロジェクトではCommons(URLリンク(commons.wikimedia.org)メインページ)で
ファイルの集中管理をするようにしています。ネットワーク経由でのファイル保存の設定に関しては
URLリンク(www.mediawiki.org) の「共有アップロード」の項目を調べて下さい。
(>>297-298 も参照)
Windowsサーバーでのファイル共有に関してはWindows系のスレで質問するか(「Windows 2003」などでスレタイを検索)
マイクロソフトのサポートページを調べた方が早いと思います。ざっと検索した限りでは
次のサイトでサーバー構築のためのまとまった資料がありました。
Windows Server 2003による社内ネットワークの構築
URLリンク(www.fmmc.or.jp)
Windows 2003とIISのインストールガイドとトラブルシューティングは以下のURLです。
URLリンク(www.mediawiki.org)
企業ユーザー向けのサポートページとメーリングリストがありますが、内容のほとんどが認証関連です。
URLリンク(www.mediawiki.org)
ちなみに現時点でもっとも大規模な企業導入実績例はインテルで社員が10万人以上だそうです。
URLリンク(www.mediawiki.org)
318:nobodyさん
07/12/01 22:00:19
>>316 のついでですが、インクの節約のために
"URL"より作成・最終更新を印刷しないようにするだけなら
commons/commonPrint.cssに以下のセレクタを追加します。
.printfooter, #credits {
display: none;
}
319:nobodyさん
07/12/04 11:41:10
[ケーススタディ] エンタープライズ 2.0の先進企業のシステム事例〜カシオの場合〜 | エンタープライズ2.0 Forum
URLリンク(e.impressrd.jp)
CsPediaという名前を付けて社内用語の整備に利用。
真の Web 2.0: ユーザー生成型コンテンツの代表格、ウィキペディア
URLリンク(www.ibm.com)
wikiEd(編集支援)が紹介されている
・URLリンク(en.wikipedia.org)
Engines of Collaboration: A Look Under the Hood of Wikimedia
URLリンク(whygive.wikimedia.org)
紹介されているエクステンション
・URLリンク(www.mediawiki.org)
・URLリンク(www.mediawiki.org)
320:nobodyさん
07/12/04 12:17:30
Wiki の方を略したんk…
321:nobodyさん
07/12/05 15:33:35
wikiであることよりもpedia(encyclopedia)であることを前面に押し出したってことか
322:nobodyさん
07/12/05 15:36:22
>>310
WindowsXPでMediaWikiを使っています。
imagesフォルダ以下を別物理ディスクにすることはWindowsの機能で可能です。
また、imagesフォルダ以下は
images\5\5e
といった具合に、いくつかのフォルダに分けて保存されているので、
それぞれ物理ディスク分けるとさらに大容量&高速化が可能かと思います。
※$wgHashedUploadDirectoryがtrue(デフォールト)になっている必要があります。
323:nobodyさん
07/12/06 12:54:19
>>303 >>305
前のスレでページ名さえ知っていれば読み込み制限されているページでも
{{:ページ名}}でインクルードできる問題が指摘されていましたが
1.10.0以降であれば$wgNonincludableNamespaces変数で
名前空間のインデックスを指定することでインクルードを拒否できるようになります。
例えば通常の記事はMain名前空間に所属してインデックス番号は0なので次のようになります。
$wgNonincludableNamespaces[] = 0;
324:nobodyさん
07/12/06 18:45:42
MediaWikiをサーバー(xreaの無料版)に入れて、インストールも完了しましたが、index.phpに何も表示されません。
正確に言うと"<"だけ表示されてはいるのですが・・・。ちなみにVerは1.9.3です。
どこに原因があるのかさっぱり分からない状態ですが、思い当たる原因が分かる方はいらっしゃいますでしょうか?
325:nobodyさん
07/12/06 19:10:54
>>324に便乗して質問させてください。
ときどき、xrea の名前が出てきますが、
MediaWiki を運用するにあたってオススメでしょうか!?
ssh でログインできる等、他にオススメのレンタルサーバがありましたら
お教えいただけましたらありがたく、よろしくお願いいたします。
326:nobodyさん
07/12/06 20:40:11
>>325
xreaを使うよりは、coreserver.jpのほうが安心だと思う。
URLリンク(www.coreserver.jp)
327:nobodyさん
07/12/06 20:42:21
>>324
過去ログの統計から行くと、文字コード周りを疑ってみると良いと思われます。
328:nobodyさん
07/12/06 22:09:27
>>325
以前、xreaの無料版でMediaWikiインストールして、さあ使おうと思っていたら、
2週間くらいでアカウント削除されてしまったことがある。
広告は表示させていたのだが。
問い合わせてみたところ、自動削除されていたらしく、原因の調査は出来ないとのことだった。
それから自動削除ルールが変わっているかどうか分からないが、細心の注意を払っておいた方がいいと思う。 (´・ω・`)
329:nobodyさん
07/12/06 22:47:10
>>328
xreaで広告免除して使ってるけど、付属のアクセス解析を見ると
リクエストはあってもページビューとしてカウントされないようだった。
CGI呼出のみの利用とみなされて規約違反とされたのかも?
330:328
07/12/06 23:14:54
>>329
2週間以上使えてる?
331:nobodyさん
07/12/07 09:06:28
>>324 XREA無料版の場合、広告の自動挿入がアプリケーションの正常な動作を妨げることがあります。この場合、自動挿入を停止させてMonoBook.phpなどのスキンファイルに広告を手動で貼ります。
それと>>267で1.11.0と1.12αの動作が報告されているので、なるべく新しいバージョンを利用することをお勧めします。
>>328 トップページにindex.html・index.cgi・index.phpなどが存在しないと自動的に削除されます。VALUE-DOMAIN.COMで広告免除を一度でも購入したサーバアカウントは削除されません。
広告付きの無料アカウントの継続方法
URLリンク(sb.xrea.com)
332:nobodyさん
07/12/08 18:21:16
>>322さんありがとうございました。
いろいろやってみて上手く行きました。やったことは次の
ようなことです。
他のドライブやフォルダーにファイルをアップロードする
方法
1 当該フォルダー下のファイルがクライアントからの
リクエストに応じることができるようにapacheの設定を
変更する。apacheの再起動が必要。
<IfModule alias_module>以下に次のように記述
Alias /upfile/ "e:/upfile/"
<Directory "e:/upfile">
Order allow,deny
Allow from all
</Directory>
2 mediawikiが他のドライブやフォルダーにファイルをアップロード
するようにLocalSettings.phpに次のように記述。
$wgUploadDirectory = "E:/upfile";
3 mediawikiが他のドライブやフォルダーを参照できるように
LocalSettings.phpに次のように記述。
$wgUploadPath = "/upfile";
この場合"E:/upfile"のように記述してはいけない。
333:nobodyさん
07/12/10 05:17:29
MediaWikiの各ページにアクセス用のショートカットを
設定するエクステンションがリリースされました
URLリンク(openoffice-ja.org)
↑
こんな感じのURLになります
334:nobodyさん
07/12/10 21:45:02
>>333 最近短縮URLサービスがスパムやセキュリティ問題を抱えているそうなので
それらの対策としてもよさそうですね。
335:nobodyさん
07/12/11 20:32:33
>>327
>>331
遅くなりましたがありがとうございました。
文字コードを変えると上手くいったんですが、今度は何をしてもメインページが表示できず・・・。
最新バージョンに入れ替えて、どうにか事なきを得ましたが・・・難しいです。
336:nobodyさん
07/12/13 15:38:03
履歴の一部を消すプラグインって、ありませんか?
利用者がわりとこまめに保存するために履歴が大量に残ってしまっています。
(例えば同じ人が2〜3時間内に10の履歴とか)
履歴が残ること自体はいいのですが、履歴が見づらくなってしまい困っています。
利用者に注意を促していますが、システム側でも対応したいと思っています。
全ての履歴を消してしまうと問題があるので、
短時間内の複数の履歴を1つにまとめるために、
(手動で)履歴の一部を消すプラグイン(テーブルからの物理削除でもOK)って、ありませんか?
ベストなのは、以下のようなものです。
1.自分の履歴しか消せない。(管理者を除く)
2.自分の連続した履歴しか消せない。
皆様のお知恵を拝借したくお願いします。
337:nobodyさん
07/12/13 23:13:24
>>336
それは俺も気になる。
338:nobodyさん
07/12/15 06:20:24
>>336
プラグインは無いが操作とメンテナンススクリプトの組み合わせでできる
削除したいページを一旦消す。
消したページの履歴の上の方にある削除された版の履歴と復帰のリンクを開いて
残したい版だけチェックして復帰。履歴だけならこれできれいになる。
何度も同じページでやろうとすると昔消した版も時系列で並ぶのに注意。
ま、手間はかかるがアーカイブの管理なんて泥臭いもんだ。
DBから削除するときには /maintenance にarchive(削除した版)に入った履歴をDBから消すスクリプトがあるのでそれで。
mediawikiにはいわゆる一般的な意味での削除の機能はない。全て一般利用者からの隠蔽。
mediawikiのインターフェースから削除するとログが増える分DBは肥大する。
まあInnoDB自体が肥大し続けるから強制的にMyISAMにでもしてないと何をしても付け焼き刃だけど。
339:nobodyさん
07/12/15 06:32:21
と書いて思い出したが一時期連続投稿をまとめるスクリプトどっかにあったな。
DB構造変わってなくなったのかね。
340:nobodyさん
07/12/15 07:02:20
たとえば 5分間とか 10分間といったしきい値を設定して、
その時間帯に何回編集しようとも編集したユーザーの編集回数は 1回としてカウントされる
そんな Extension ありそうですけどねぇ…
教えて! Extensions 博士ー!\(^o^)/
341:nobodyさん
07/12/15 13:17:30
ページに毎にskinを変更することはできませんか。
medeawikiをCMSツールとして使い、複数サイトを作成し、
サイト毎に違ったレイアウトにしたいと思っています。
342:nobodyさん
07/12/15 18:33:24
>>251 の本を立ち読みしてきましたが、ページ数が10〜20ぐらいしかなくて
完全なCSS初心者用でした。携帯機能については何も書かれていませんでした。
やはり自分で実装しなければならないということですか。
>>341 異なるユーザーグループごとにwikiを提供したいというのであれば
普通にwikiファームを構築した方が早いと思います。
body要素の範囲内でCSSをカスタマイズするのでよいなら
LocalSettings.phpで名前空間を割り当ててクラスセレクタごとのCSSを用意します。
ページごとのskin変更も同じように記事の名前空間ごとにユーザーオプションを変更する
という方法が考えられますが、オプション変更ボタンの下の注意書きの通り
ブラウザのキャッシュはサーバーサイドではクリアできないので、実装は困難だと思います。
ちなみにデフォルトの匿名と新規ユーザーオプションは$wgDefaultUserOptions変数で設定できます。
343:nobodyさん
07/12/15 19:45:53
>>342
ありがとうございます。
>body要素の範囲内でCSSをカスタマイズするのでよいなら
>LocalSettings.phpで名前空間を割り当ててクラスセレクタごとのCSSを用意します。
ということは
if ($hoge):
$wgDefaultSkin = 'cologneblue';
else:
$wgDefaultSkin = 'monobook';
endif;
このような書き方ができるのでしょうか。
リクエストURLを$hogeに入れる方法はどのようになります
でしょうか。
344:342
07/12/15 22:23:59
>>343 独自の名前空間を割り当てるには下記の記事をご覧下さい
URLリンク(www.mediawiki.org)
記事の例ではFoo名前空間にインデックス番号100を割り当てているので
body要素のクラスセレクタはns-100が追加されます。
公式サイトのCSSのカスタマイズ例は下記のページで見ることができます。
URLリンク(www.mediawiki.org)
書いた後に匿名ユーザーと新規ユーザー限定で
skinを切り替えする方法を思いついたので書いておきます。
例えば「メインページ」「Special:Recentchanges」だけを
standard skinにするには次のようになります。
$urls = array(
"/mediawiki/index.php/%E3%83%A1%E3%82%A4%E3%83%B3%E3%83%9A%E3%83%BC%E3%82%B8",
"/mediawiki/index.php/%E7%89%B9%E5%88%A5:Recentchanges"
);
if(in_array($_SERVER['REQUEST_URI'], $urls)) {
$wgDefaultSkin = 'standard';
}
$_SERVER['REQUEST_URI']から名前空間の部分を取得するには
basename関数とexplode関数を組み合わせます。
$name = '/mediawiki/index.php/Manual:%24wgDefaultUserOptions';
$result = explode(':', basename($name));
echo $result[0];
345:nobodyさん
07/12/16 11:14:46
>>344さんへ
できました。ありがとうございました。
次のようにLocalSettings.phpに記述しました。
この例ではメインページとヘルプページについては
nostalgiaをその他ではmonobookというように目的とすること
はできました。
アドバイスのあった匿名ユーザーと新規ユーザー限定という
ことや名前空間ということを特に考慮はしていないのですが
この例で、全てのユーザーについてnostalgiaとmonobookとに
使い分けできていると思いますが、これでは何かまずい点は
出てくるのでしょうか。
$urls = array(
"/wiki/index.php/%E3%83%A1%E3%82%A4%E3%83%B3%E3%83%9A%E3%83%BC%E3%82%B8", "/wiki/index.php/Help:%E7%9B%AE%E6%AC%A1"
);
if(in_array($_SERVER['REQUEST_URI'], $urls)):
$wgDefaultSkin = 'nostalgia';
else:
$wgDefaultSkin = 'monobook';
endif;
346:nobodyさん
07/12/16 14:12:23
>>345 うまく動作をしているのであれば気にする必要はありません。
私の環境(1.12α)では管理者権限を持つログインユーザーのオプションで
例えばスタンダードを選択したら$wgDefaultSkinに関係なくスタンダードになりました。
それで$urls変数の方を少し改良したので貼っておきます。create_function内の$kは
各配列のインデックス番号を表します。これは省略しても動作します。
array_walk関数では2つの引数を使うという慣習に合わせるためです。
サブページ(メインページ/サブページ)を一切使わないのでしたら
$_SERVER['REQUEST_URI']をbasename($_SERVER['REQUEST_URI'])に置き換える
というのもありです。
$urls = array(
"%E3%83%A1%E3%82%A4%E3%83%B3%E3%83%9A%E3%83%BC%E3%82%B8",
"%E7%89%B9%E5%88%A5:Recentchanges"
);
array_walk($urls, create_function('&$v,$k', '$v = "/mediawiki/index.php/".$v;'));
347:nobodyさん
07/12/16 15:34:18
さらに試したところブラウザのユーザーエージェントでも切り替えできました。
例えば、OperaとIE7の場合はstandardににするには次のようになります。
$useragents = "/MSIE 7.0|Opera/";
if(preg_match($useragents, $_SERVER{'HTTP_USER_AGENT'})) {
$wgDefaultSkin = 'standard';
}else{
$wgDefaultSkin = 'monobook';
}
携帯のユーザーエージェントの切り替えるためにPEAR::Net_UserAgent_Mobile
というライブラリがありますが、MediaWikiで採用しているGPLと矛盾する
PHPライセンスなので再配布はできません。
あと携帯向けに表示する場合はページ分割が必要になりますが
Pear::Pagerが使えると思います。
348:nobodyさん
07/12/17 06:53:13
前スレでXREAといったPHPがセーフモードのサーバーで
タイムゾーンを補正できないことが話題になっていましたが
代わりに匿名ユーザーのオプションを設定することで対応します。
$wgDefaultUserOptions['timecorrection'] = '09:00';
設定をした後で記事のキャッシュをパージすることを忘れないで下さい。
349:nobodyさん
07/12/17 07:22:27
>>336 投稿を統合するよりもむしろ2chのように
投稿時間の間隔を規制する方がベターだと思います。
連投の表示を隠匿するもしくは投稿時に連投を統合する場合、
追加のSQLを発行する必要がでてくるのでサーバー負担が増えますし
データベースの設計に関わるのでカスタマイズの難易度が上がります。
連投を規制する場合はAPIなどで以前の投稿時間を取得して
規制時間の間は投稿ボタンを表示しないようにするという実装で済みます。
action=submitなどで投稿できる可能性があるので
そこまでやる人はあまりいないだろうという前提の元ですが。
350:nobodyさん
07/12/18 13:19:04 Gx8WPDAu
SVNで最新版にアップデートしたら、下記のようなエラーで表示されないんですが。
from within function "Database::select". MySQL returned error "1146: Table 'hoge.protected_titles' doesn't exist (localhost)".
351:nobodyさん
07/12/18 14:55:35 Gx8WPDAu
>>350
事故解決しました。スマソ
352:nobodyさん
07/12/18 20:17:47
>>347 訂正と追記。
PHPでは多重継承ができないので、自分で実装することにしました。
通常の記事のページの分割方法は次のようなものです。
1 本文を変数として取得するには$this->data['bodytext']を使う。
ちなみに通常表示は$this->html('bodytext')です。
2 変数として取得した本文を分割して配列として収納する。
3 例えば、$_GET['id']を使って記事名?id=ページ番号でパラメータを取得して
そのパラメータに対応した本文を収納した配列の要素を表示する。
4 表示の場合分けは上記の$_GET['id']に加えて$_GET['action']などの値を使う。
定義済の変数は
URLリンク(www.php.net)
index.phpに渡すことができるパラメータは
URLリンク(www.mediawiki.org)
を参照して下さい。
編集も携帯でできるようにするにはincludes/EditPage.phpを編集すればよいはずですが未調査です。
分割方法に関して平文のみで文字数で分割する場合、英文ならwordwrap関数が、
日本語の場合は厳密な文字数で分割できませんが、下記の記事が参考になりました。
続:日本語(マルチバイト)でのwordwrap処理 -OKWave
URLリンク(www.mediawiki.org)
ざっと調べた範囲では携帯向けのプロクシサイトのように
一定量のサイズとHTMLブロック単位で分割する方法の解説記事は見つからなかったので、
自分で考える必要があるようです。あとはpuwikiが携帯対応しているのでこちらも参考になるかもしれません。
353:nobodyさん
07/12/19 05:09:12
今さっき、xreaにMediaWikiをインストールして最初のセットアップを完了しました。
そのあとLocalSettup.phpを親ディレクトリに入れたのですが
Warning: require_once(./LocalSettings.php) [function.require-once]: failed to open stream: Permission denied in
/virtual/hoge/public_html/hoge2/mediawiki/includes/WebStart.php on line 86
Fatal error: require_once() [function.require]: Failed opening required './LocalSettings.php' (include_path='.:/usr/local/lib/php') in
/virtual/hoge/public_html/hoge2/mediawiki/includes/WebStart.php on line 86
というエラーが出るのでます。どうすればいいのでしょうか。
354:nobodyさん
07/12/19 06:19:27
>>353
== 質問するときに書いてね ==
>>3-4 をご覧になってお分かりになる範囲の情報を記載しましょう。
回答する方も MediaWiki のバージョンくらいは分からないと困ると思いますので。
xrea に MediaWiki を導入している経験者の方々が多くの情報を残しています。
そちらも参照されると手助けになると思いますのでよければどうぞ。
URLリンク(www.google.co.jp)
355:nobodyさん
07/12/19 08:50:50
すいません
ちなみにver. は1.11.0です。
356:nobodyさん
07/12/19 09:51:13
>>353
とりあえずDocumentRootとLocalSettings.phpのパスを教えてください
/virtual/hoge/public_html/hoge2/
/virtual/hoge/public_html/hoge2/mediawiki/LocalSettings.php
かな?
357:353
07/12/19 10:48:32
>>356
LocalSettup.phpをコンフィグから一度PCにダウソして親ディレクトリにうpしたのでそうだと思います。
そのあとコンフィグは削除しました。
358:nobodyさん
07/12/19 11:01:37
>>357
LocalSettup.php ?
まさか、リネームしてないよね?
359:353
07/12/19 11:42:50
いじらずダウソ、うpしたのでリネームはしてません。
エラーの文章の意味はどういうものなんでしょう?
360:nobodyさん
07/12/19 12:12:42
>>359
パーミッションが無いよと言っている。
LocalSettings.phpの所有者とパーミッション(属性)とindex.php等他のファイルの所有者は何?
361:nobodyさん
07/12/19 14:12:12 I01GQrBL
>>352
phpで動かしてる?
cgiモードだとうまく動くかもよ。
362:nobodyさん
07/12/19 14:12:59 I01GQrBL
>353の間違い
363:353
07/12/19 14:24:47
>360
LocalSettings.phpの属性は600.
index.phpの属性は644でした。
ファイルの所有者ってのはどうやって見るんですか?
>361
cgiモードってのはどうやるんですか?
364:nobodyさん
07/12/19 16:30:28 4oqVnmt9
>>363
XREAでcgiモードは、Mediawiki下の.htaccessに下記を追加
(.htaccessがなければ、新規で作成)
<Files index.php>
AddHandler application/x-httpd-php5cgi .php
</Files>
365:nobodyさん
07/12/19 16:40:15
>>363 私が利用しているXREAサーバーではLocalSettings.phpの属性は707にしています。
さらに動作しなければ属性を755、777で試してみて下さい。
また、ファイルとデータベースのレコードを削除して再度アップロードとインストールをすると
正常に動作するようになることがあります。
ファイルの所有者を調べるにはサーバーの管理のファイルマネージャーの画面を見るか
サーバーを遠隔操作するためにSSH接続をしてls -lもしくはls -allのコマンドを使います。
XREAの仕様ではモジュール版PHPで生成されたファイルの所有者はapacheとなります。
PHPをCGIモードに切り替えるには下記の一行を記した.htaccessファイルを設置します。
AddHandler application/x-httpd-phpcgi .php
PHPをCGIとして動かす方法について
URLリンク(sb.xrea.com)
CGIモードはモジュール版PHPで動かない関数やLinuxコマンドを実行するために利用されます。
セーフモードで動かない関数は以下のページで書かれています。
URLリンク(www.php.net)
366:nobodyさん
07/12/19 16:43:02
>>363
とりあえずLocalSettings.phpを644にしてみて
367:353
07/12/19 16:49:39
>366
とりあえず言われたとおり、644にしてみました。
データベース・エラー
データベース検索の文法エラー。これは恐らくソフトウェアのバグを表しています。 最後に実行を試みた問い合わせ:
(SQLクエリー非表示)
from within function "Article::pageData". MySQL returned error "1267: Illegal mix of collations (ujis_bin,IMPLICIT) and (latin1_swedish_ci,COERCIBLE) for operation '=' (localhost)".
って言われました。
368:353
07/12/19 16:51:48
755 777にしても同じでした。
369:nobodyさん
07/12/19 16:59:12
>>367 データベースを作るときにキャラクタセットはunicodeにしたかな?
370:353
07/12/19 17:05:47
EUC JPっす。
ググッたらこのスレの34でよく似た文章出てきました。
やり直してみます。
371:353
07/12/20 01:09:07
MySQLをUnicodeに属性を644に
変更したら動作しました。
皆さんありがとうございました。
またお世話になるかもしれません。
372:nobodyさん
07/12/20 18:58:18
やっと時間ができたのでスレのまとめページを作りました。
とりあえず>>10-12までを転載しました。
URLリンク(www12.atwiki.jp)
ウィキペディアライクモードがいつの間にか実装されていました。
373:nobodyさん
07/12/21 08:23:19
>>372
すばらしく乙
374:nobodyさん
07/12/21 12:54:32
>>372
乙
ですが、MediaWiki の有用性の分かっているスレ住人のお一人でしたら
MediaWiki を使ったまとめサイトにしていただければ尚嬉しいのですが…
(´・ω・`)
375:nobodyさん
07/12/24 19:28:14
345です。
その節はお世話になりました。
依然としてmediawikiをcmsツールとして利用できないかと
色々TRYしています。
先日は、ページ毎にSkinを変更する手段としてLocalSettings.php
にif文を記載して分岐しましたが、これだとページを作成する度に
LocalSettings.phpに手を加えなくてはなりません。
これを回避するために、ページにSkin名が含まれている場合
当該Skinで表示するということをやろうと思い、次のように
コーティングしましたが上手く行きません。
イベントハンドラをフックに割り当て、フックのイベント
が発生したタイミングでchangeSkinが実行されることを予定してい
ます。
changeSkinでは$wgOut->getHTML()で得たHTML文にSkin名(例ではnostalgia)
が記載されている場合は$wgDefaultSkin = 'nostalgia';となるように
しています。
フックのイベントのタイミングが既にSkinが選択された後であれば
当然上手く行かないでしょうし、また、$wgOutにHTML文が割り当てられて
いない時も上手く行かないと思います。コメント部分で色々と
フックのイベントタイミングを選びましたが、なかなか上手く行きません。
どのようにコーティングすれば当初の目的が果たせるでしょうか。
よろしくお願いします。
なお、書き込みエラーになったのでコードは次に書き込みます。
次ページ最新レス表示スレッドの検索類似スレ一覧話題のニュースおまかせリスト▼オプションを表示暇つぶし2ch
3986日前に更新/385 KB
担当:undef