我尝试了两种方法获取操作ID:
$ACT_ID = $this->EE->functions->fetch_action_id("classname", "function");
$ACT_ID = $FNS->fetch_action_id("classname", "function");
但是,它仍然给我这个作为输出:
{AID:classname:function}
当输出到视图中时,它不对其进行解析。我需要做些什么?
我尝试了两种方法获取操作ID:
$ACT_ID = $this->EE->functions->fetch_action_id("classname", "function");
$ACT_ID = $FNS->fetch_action_id("classname", "function");
{AID:classname:function}
在Functions库中存在一个未经记录的方法"insert_action_ids",它可以解析模板中的action_id。 因此,如果您想要从您的插件中简单地获取action ID编号,可以执行以下操作:
$ACT_ID = $this->EE->functions->insert_action_ids($this->EE->functions->fetch_action_id('classname', 'method'));
我应该补充说明,这种方法在任何地方都可以使用 - 前端和控制面板都可以。但是正如一些人所提到的,在模板中为了性能最好使用“insert_action_ids”方法,并让模板解析器将其替换为正确的操作ID。
$this->EE->functions->fetch_action_id()
是 EE2 语法;$FNS->fetch_action_id()
是 EE1 语法。现在 - 你到底想做什么?背景是什么?它返回的内容正是它应该返回的,但它不会被解析 - 它只是作为字符串返回。 - Derek Hogue