我以这种方式使用Pimcore的片段:
<?php echo $this->snippet("mySnippet"); ?>
如何从视图/控制器中获取代码段(“mySnippet”)的名称?
感谢。
答案 0 :(得分:1)
获取可编辑片段的名称是一项有点困难的任务,因为嵌入式片段未获得任何有关其容器的知识(请参阅源文件/pimcore/models/Document/Tag/snippet.php
)。我能想到的最好的解决方案(虽然有点难看)是将名称作为参数传递给片段,如下所示:
<?php echo $this->snippet("mySnippet", array("snippetName" => "mySnippet")); ?>
然后在摘录视图中获取此参数的值:
<?php echo $this->request->snippetName; ?>
另一种方法是编辑Pimcore的源文件以自动传递名称,但请记住,在更新到新版本的Pimcore时,这可能会导致问题。但是,如果要使用此方法,请将以下内容添加到文件/pimcore/models/Document/Tag/snippet.php
:
$params["snippetName"] = $this->name;
位于函数$params["document"] = $this->snippet;
中的frontend()
行下方。 (在pimcore 2.1.0中这将是第91行)