M-Blog

チートシート作成

チートシート作成しています。

内蔵フィルター モディファイア

内蔵フィルターのチートシートは完成して、バージョンアップのたびに更新していきます。
カスタムモディファイアはあったら面白そうなものを随時追加しています。
内蔵フィルターチートシート

API

現在はサブパーサーからやっています。
順番に、DB、マネージャ、リソース(優先順位低)、ドキュメントパーサーを追加していきます。
$が付いてるタイトルはメンバ変数です。

APIチートシート

追記:Manager APIとか追加も考えたけど、たぶんすぐには必要ない気がしてきたのでひとまず完成ということで。

APIのチートシートが終わったらシステムイベントかな?

APIの改造

APIを勉強して改造していくことでMODX同士でデータの相互取得ができないか実験

例えば他のDBのMODXタグの展開はプリフィックスをつけて[*prefix->pagetitle*]みたいにして取得するとか

APIの直前に$modx->db->connect()を指定していたら既存のAPIで他のMODXからデータを持ってこられるとかすると便利だけど

無理そうなのでDB APIのみで何とかデータを引っ張るやり方を考えればいいみたい

プラグインとモジュールでなんとかできないかな?

おそらくDBを扱うAPIを下みたいな感じで一通りごにょごにょすればできそうなんだけど

やるかどうかは知らないけどアイデアだけそのうちまとめよう。

//API setdocumentMapで他のMODXからデータを取得
//document.parser.class.inc.phpの変更

    //function setdocumentMap() //変更前
    function setdocumentMap($host = '', $dbname = '', $uid = '', $pwd = '', $persist = 0, $table_prefix='[+prefix+]') //変更後
    {
    	$this->db->connect($host, $dbname, $uid, $pwd, $persist); //追加
        $fields = 'id, parent';
       // $rs = $this->db->select($fields,'site_content','deleted=0','parent, menuindex'); //変更前
       $rs = $this->db->select($fields,$table_prefix.'site_content','deleted=0','parent, menuindex'); 変更後
        $this->documentMap = array();
        while ($row = $this->db->getRow($rs))
        {
            $docid  = $row['id'];
            $parent = $row['parent'];
            $this->documentMap[] = array($row['parent'] => $row['id']);
        }
    }

//同じDBサーバーなら$dbnameと$table_prefixを入れるだけ
//同じDBなら$table_prefixを入れるだけ

//自身のデータを取得
//$modx->setdocumentMap();

//MYSQLサーバーを変更してデータを取得
//$modx->setdocumentMap($host = 'ホスト名', $dbname = 'データベース名', $uid = 'ユーザー名', $pwd = 'パスワード', $persist = 0, $table_prefix='テーブルのプリフィックス');

//DBだけ変更して取得
$modx->setdocumentMap($host = '', $dbname = 'データベース名', $uid = '', $pwd = '', $persist = 0, $table_prefix='テーブルのプリフィックス');
print_r($modx->documentMap);

© 2015 - 2020 M-Blog. Powered by MODX.

(URL:https://modx.mblo.info/,E-mail:info@mblo.info)

ブログについて
MODX Evolutionを使ってブログをしています。基本的にはまとめ、チートシートのメモなど、他にも日常のことをぼちぼち書いています。

コンテンツ
ブログ
MODXまとめ
MODXチートシート

動作環境
このブログはで運用しています。
・Apache 2.2.31
・OS Free BSD
・PHP 7.1.33
・MySQL 5.5.38
・MODX 1.0.22J-beta1

ブログ更新通知
RSS | ATOM

まとめ更新通知
RSS | ATOM

フィードバック

お問い合わせ
Twitter