Concrete5 - 如何在块控制器中获取所选模板?

时间:2014-08-06 13:33:10

标签: concrete5

我正在使用Concrete5 5.6.0并尝试使用LESS使我的Block更具可定制性。

我按照此处的信息:http://www.codeblog.ch/2014/01/concrete5-use-less-files-for-block-templates/和Remo的代码链接到getCurrentTemplate()

上不存在Controller

让我使用当前模板使用此代码的正确方法是什么?

2 个答案:

答案 0 :(得分:1)

此howto中有一段代码可以获取当前模板名称。不是一个完整的解决方案,但也许它会提供一些想法。

http://www.concrete5.org/documentation/how-tos/developers/load-template-specific-assets/

答案 1 :(得分:1)

这将适用于5.7

$b = $this->getBlockObject();
if (is_object($b)) {
    $bvt = new BlockViewTemplate($b);
    if (is_object($bvt)) {
        $templatepath = $bvt->getTemplate();
        list($junk, $template) = explode('/templates', $templatepath);
        if (strlen($template) > 0) {    // any template name left ?
            // $template holds the rest of the path with the template name
        } else {
            // standard template
        }
    }
}