1. NetCommons2 使用しているテンプレート名をphpで取得する

投稿日時: 2016/11/14 牟田口

こんにちは、牟田口です。

php側でテンプレート名を使ってプラグラムの動きを変えたかったので、
やり方を調査しました。

下記PHPで実現できます。

componentsの場合
$container =& DIContainerFactory::getContainer();
$block =& $container->getComponent("blocksView");
$block_id = intval($request->getParameter("block_id"));
$block_obj = $block->getBlockById($block_id);

// $block_obj['temp_name'];    //←テンプレート名が取得できる

 

(2018/09/28追記)

view・actionの場合

PHP

 var $block_id = null;
var $blocksView = null;

function execute()
{
$block_obj = $this->blocksView->getBlockById($this->block_id);
$block_obj['temp_name']; //←テンプレート名が取得できる
}

maple.ini

[Action]
blocksView = "ref:blocksView"

参考になれば幸いです。

ではでは。