以前、管理画面の語尾の全てに「だぷー」を追加するコード(MODX版)、 なるプラグインを作ったけど、それをもじって「シャバドゥビMODXプラグイン」を作るという現実逃避。
このプラグインを入れるとこんな画面になります。うるさい上部メニュー。
シャバドゥビタッチリフレッシュ!
リフレッシュ!サイコー!
適当に作って途中で飽きたので変換は適当ですw
ソースコードは次の通り。MODXの管理画面のプラグイン作成で「プラグイン コード 」にそのままぶっこめば即座に反映されます。
/**
* シャバドゥビMODX
*
* @category plugin
* @version 1.00
* @license http://www.gnu.org/copyleft/gpl.html GNU Public License (GPL)
* @author soushi
* @internal @events OnManagerLoginFormPrerender,OnManagerPageInit,OnWebPagePrerender
* @internal @modx_category ネタ系
* @internal @properties &rpl_enbl=有効範囲;list;なし,フロントエンド,バックエンド,全て;全て &replace_strs=置換文字列;textarea;ログイン,\ドライバーオン!//保存,シャバドゥビタッチ保存/編集,編集\プリーズ//複製,\チョーイイネ/コピー/プレビュー,プレビュー\サイコー//MODX,シャバドゥビMODX/サイトをリフレッシュ,\シャバドゥビタッチリフレッシュ!/\シャバドゥビタッチリフレッシュ!//キャッシュディレクトリに,\チョーイイネ!リフレッシュ!サイコー!/キャッシュディレクトリに/ダッシュボード,ダッシュボード\ドライバーオン!//検索,検索\チョーイイネ//リソースを投稿,リソースを投稿\プリーズ//ウェブリンクを作成,ウェブリンクを作成\プリーズ/
*/
$e = &$modx->Event;
$s_str = array();
$r_str = array();
$replace_strs=preg_split("/[\r\n\/]+/",$replace_strs);
foreach ( $replace_strs as $val ){
list($s_tmp,$r_tmp) = explode(",",$val);
if(empty($s_tmp)){continue;}
if( strpos($s_tmp,'/') !== 0 ){
$s_tmp='/'.$s_tmp.'/';
}
array_push($s_str,$s_tmp);
array_push($r_str,$r_tmp);
}
switch ($e->name){
case "OnManagerPageInit":
case "OnManagerLoginFormPrerender":
if( $rpl_enbl == "全て" || $rpl_enbl == "バックエンド" ){
global $_lang;
foreach ($_lang as $key => $val){
$_lang[$key] = preg_replace($s_str,$r_str,$val);
}
}
break;
case "OnWebPagePrerender":
if( $rpl_enbl == "全て" || $rpl_enbl == "フロントエンド" ){
$modx->documentOutput=preg_replace($s_str,$r_str,$modx->documentOutput);
}
break;
}
プラグインの「設定」に「有効範囲」という設定ができているので「フロントエンド」で公開側をシャバドゥビ化、「バックエンド」で管理画面をシャバドゥビ化、「すべて」で両方ともシャバドゥビ化できます。
ネタではあるけど、MODXのプラグイン使うとこういうことも簡単にできますよーという話でした。実際に試したみたい人はMODXデモサイトがあるので、ここで自由に試すことができます。
なお、シャバドゥビの元ネタは「シャバドゥビ タッチ」あたりでgoogle先生に聞くとすぐにわかるよ!
作成日:2012/10/02 01:12:05