1

フロントエンドスコープでのみ機能するイベントをキャッチしようとしていますが、この目的のために観察しているイベント

"controller_front_init_routers"

フロントエンドではなく、グローバルスコープでのみ機能します。ページの読み込み時にディスパッチされた各イベント名を(Mage.phpのdispatchEventメソッド内で)印刷して見つけようとしましたが、それらのイベントはフロントエンドスコープでは機能しませんでした。フロントエンド ページの読み込み時にアクティブになるイベントが必要です。お知らせ下さい。

ありがとう、

4

1 に答える 1

2

タスクに対してイベントをよりモジュール化して効率的にするには、このイベントを使用することをお勧めします。

controller_action_layout_generate_blocks_after

あなたの関数では、次のおかげでより正確なことを行うことができます:

public function yourEvent($event) {
$controller = $event->getAction();
$action = $event->getFullActionName();
if ($action == 'catalog_product_view') //DO SOMETHING SPECIFIC TO PRODUCT PAGE
elseif ($action == 'catalog_category_view') //DO SOMETHING SPECIFIC TO CATEGORY
...

よろしく、

于 2013-02-27T07:58:34.810 に答える