リソース変更時のイベント発火等

質問全般・改善要望
返信する
iwa
メンバー
メンバー
記事: 30
登録日時: 2015年2月16日(月) 13:35

リソース変更時のイベント発火等

投稿記事 by iwa »

こんにちは。

MODX 細かな要望がありますので、列挙させていただきます。

◆ $modx->clearCache における引数の処理

$modx->clearCache にはいくつかの引数を渡すことができるようです

sub.document.parser.class.inc.php ファイルの clearCache 関数において
数字の引数を記述する事で指定リソースのキャッシュをクリアできるようですが、
現在のソースコードではディレクトリ構成および、パスの参照方法が誤って
いるようで、機能しませんでした。
改善いただけるとうれしいです。

◆ リソース更新時のイベント発火

リソース更新時にいくつかのイベントが発生しますが、以下の処理について
イベント発火の処理がありません。リソースの更新状態を監視したいので、
発火いただけるとたすかります。

* リソース移動
** move_document.processor.php
* リソース削除の取り消し
** undelete_content.processor.php

イベントを発火させていない理由がないのであれば、発火していただけると
助かります。

さらに言えば、DocManager も対応いただけると助かります。

◆ リソース一覧時の並び替えと件数表示

ツリーでは、並び替えの機能が存在するのですが、右側の「リソース一覧」画面
においては、並び替えの機能が存在しません。
リソースが多くなるとつらくなります。できれば、並び替えの機能があるとうれしい
です。
また、件数も表示されるとより分かりやすくなると思います。


お忙しいところ申し訳ありませんが、何卒ご検討の程をよろしくお願いいたします
アバター
yama
管理人
記事: 3236
登録日時: 2009年7月29日(水) 02:50

Re: リソース変更時のイベント発火等

投稿記事 by yama »

了解です、それぞれ対応前提で検討させていただきます。
iwa さんが書きました:◆ $modx->clearCache における引数の処理

$modx->clearCache にはいくつかの引数を渡すことができるようです

sub.document.parser.class.inc.php ファイルの clearCache 関数において
数字の引数を記述する事で指定リソースのキャッシュをクリアできるようですが、
現在のソースコードではディレクトリ構成および、パスの参照方法が誤って
いるようで、機能しませんでした。
こちら具体的に教えていただいてよいですか?

リソース更新時の監視に関しては、とりあえずの対症療法ですが、たとえばmove_document.processor.phpなら$modx->manager->actionが52の時に動作するようなプラグインを書いてOnManagerPageInitなどにフックすると「移動しようとした」という操作の監視はできると思います。
iwa
メンバー
メンバー
記事: 30
登録日時: 2015年2月16日(月) 13:35

Re: リソース変更時のイベント発火等

投稿記事 by iwa »

yama 様

お忙しい中、ご返答いただきありがとうございます。

> $modx->clearCache における引数の処理

取り急ぎ、当方での修正を以下のように行いました。

manager/includes/extenders/sub.document.parser.class.inc.php

コード: 全て選択

199c199
<               $page_cache_path = $modx->config['base_path']."assets/cache/pages/{$filename}.pageCache.php";
---
>               $page_cache_path = "{$base_path}assets/cache/{$filename}.pageCache.php";
* pages ディレクトリを参照
* modx->config を参照

> リソース更新時のイベント発火

OnManagerPageInit ですか。気づきませんでした。
対象リソースの情報は無さそうですが、使えるケースもありそうです。
ありがとうございます。
アバター
yama
管理人
記事: 3236
登録日時: 2009年7月29日(水) 02:50

Re: リソース変更時のイベント発火等

投稿記事 by yama »

sub.document.parser.class.inc.zip
(18.33 KiB) ダウンロード数: 350 回
キャッシュの件は修正パッチを作成しました。こちらを試していただいてよいでしょうか?
iwa さんが書きました:対象リソースの情報は無さそうですが、使えるケースもありそうです。
$_REQUEST['id']でリソースIDを取得できると思います。
iwa
メンバー
メンバー
記事: 30
登録日時: 2015年2月16日(月) 13:35

Re: リソース変更時のイベント発火等

投稿記事 by iwa »

yama 様

返信が遅くなり申し訳ありません。

> キャッシュの件は修正パッチを作成しました。こちらを試していただいてよいでしょうか?

試しました。問題なく動作しているようです。ありがとうございました。

> $_REQUEST['id']でリソースIDを取得できると思います。

なるほどです。query string を忘れていました。管理画面の plugin なので使えるかもしれません。
返信する