exk.inc.phpとexp.inc.php

サマリ携帯とPCとで表示するソースを使い分ける(除外するソースを指定する)
リビジョン1.0
対応バージョン1.4.7
投稿者人造人間しろーと
投稿日2007-05-25 (金) 14:16:46

ひとつのページで携帯でアクセスしたときと、PCでアクセスしたときの表示を自動的に変えます。

使い方(例)

#exk{{{
携帯では表示されない。
携帯の画面は小さいので、ずらずら、いらっしゃいませとか表示したくない。
}}}
#exp
**Wiki文法も使えます。
}}}
#exk{{{
ひとつのページで2回以上出てきてもOK
|表|もOK|
他のプラグインも動きます。
#include(ページ)
ここでは例なので動かないです。
}}}
#exp{{{
PCでは表示されない。
携帯用
}}}

それぞれこのように見えます。

携帯で見たとき

Wiki文法も使えます。

PCでは表示されない。

PCで見たとき

携帯では表示されない。 携帯の画面は小さいので、ずらずら、いらっしゃいませとか表示したくない。 ひとつのページで2回以上出てきてもOK

もOK

他のプラグインも動きます。

#include(): No such page: ページ

ここでは例なので動かないです。

とても短いコードなので貼り付けます。

コピペでどうぞ。

exp.inc.php

<?php
function plugin_exp_convert()
{
	global $agent; 
	if( $agent[ 'profile' ] != 'default' )
	{
		$args = func_get_args();
		$source = array();
		$source = explode( "\r",$args[ 0 ] );
		return convert_html( $source );
	}
} 
?>

exk.inc.php

<?php
function plugin_exk_convert()
{
	global $agent; 
	if( $agent[ 'profile' ] != 'keitai' )
	{
		$args = func_get_args();
		$source = array();
		$source = explode( "\r",$args[ 0 ] );
		return convert_html( $source );
	}
} 
?>

複数行プラグインを有効にしてください。

pukiwiki.ini.phpの

define('PKWKEXP_DISABLE_MULTILINE_PLUGIN_HACK', 1); // 1 = Disabled を

define('PKWKEXP_DISABLE_MULTILINE_PLUGIN_HACK', 0); // 1 = Disabled に

PHP始めて2,3日のしろーとです。 簡単なものなので、問題が起きるとは思えにくいですが、動作も保障しませんしサポートも期待しないでください。 汗
ライセンスはGPL2とかそういうの。

こんな簡単なもの公開するなよって思うでしょうが、これを作るのに大変苦労しました。
最初はごちゃごちゃ作ってましたが、最終的にこんな簡単なコードで出来てしまって驚きというか、骨折り損というか。

  • ひとつのプラグインにまとめてはいかがでしょうか? #ex(mode){{{文章}}} modeでpかkかを指定とか -- 2007-05-25 (金) 15:02:52
  • 自分はわりとたくさん使うため、プラグインの記述を少なくしたかったため、オプション指定もしなくていいように、わざわざ二つにわけました。 あとで、ひとつにまとめたバージョンも載せましょうか。 -- 2007-05-25 (金) 17:01:53
  • 最初はexclude_keitaiとかexclude_pcという名前で作っていましたが、長かったので、exkとexpにしてしまったし。 -- 2007-05-25 (金) 17:03:21
  • ひとまとめにしたバージョン
    たぶん携帯用のソースはPC用のソースから減らすだけで、大概は事足りるでしょうから、携帯用のソース削減をデフォルトにしました。  なので、オプションなしで携帯には表示させない。 オプションにpでPCには表示しないにしました。

コピペでどうぞ。 exkp.inc.php

<?php
function plugin_exkp_convert()
{ 
	global $agent;
	$args = func_get_args();
	if( in_array( 'p', $args ) ){
		if( $agent[ 'profile' ] != 'default' )
		{
			$source = array();
			$source = explode( "\r",$args[ 1 ] );
			return convert_html( $source );
		}
	}else{
		if( $agent[ 'profile' ] != 'keitai' )
		{
			$source = array();
			$source = explode( "\r",$args[ 0 ] );
			return convert_html( $source );
		}
	}
} 
?> 

使用例

#exkp{{{
携帯では見えない。
}}}
#exkp(p){{{
PCでは見えない。
}}}
  • option対応ありがとう。expは『指数関数』や『試験』に使うので・・・
    当方のmathfunc.inc.phpもmathにしたかったのですが、既にプラグインがありました。 -- kahata 2007-05-25 (金) 21:37:53

トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2014-06-20 (金) 20:49:28
Site admin: PukiWiki Development Team

PukiWiki 1.5.2+ © 2001-2019 PukiWiki Development Team. Powered by PHP 5.6.40-0+deb8u7. HTML convert time: 0.246 sec.

OSDN