是否可以检查是否定义了(变量)修饰符(函数)?
Is it possible to check if a (variable) modifier (function) is defined?
我正在使用带有智能模板引擎的插件。
在这个插件中有这个功能fn_csc_universal_cdn_convert_font_url
,
可以在模板中使用 $variable|fn_csc_universal_cdn_convert_font_url
当我禁用 mod 时,函数调用仍在管道后面。
是否可以检查函数是否已定义/已经存在?
我想实现这样的目标:
{if 'fn_csc_universal_cdn_convert_font_url' is defined}
$variable|fn_csc_universal_cdn_convert_font_url
{else}
$variable
{/if}
到目前为止,这似乎不可能。
不过我们已经找到了一些解决方法。
通过检查插件是否在注册表中 activated/disabled,如下所示:
if (Registry::get('addons.csc_universal_cdn.status') == "A" )
{
/* ... code to load a dummy replacement function ... */
}
此代码在插件中和在我们自己的 my_changes 插件中都进行了更新。
通过这样做,总是有一个函数定义了插件是否被激活。
我正在使用带有智能模板引擎的插件。
在这个插件中有这个功能fn_csc_universal_cdn_convert_font_url
,
可以在模板中使用 $variable|fn_csc_universal_cdn_convert_font_url
当我禁用 mod 时,函数调用仍在管道后面。 是否可以检查函数是否已定义/已经存在?
我想实现这样的目标:
{if 'fn_csc_universal_cdn_convert_font_url' is defined}
$variable|fn_csc_universal_cdn_convert_font_url
{else}
$variable
{/if}
到目前为止,这似乎不可能。
不过我们已经找到了一些解决方法。
通过检查插件是否在注册表中 activated/disabled,如下所示:
if (Registry::get('addons.csc_universal_cdn.status') == "A" )
{
/* ... code to load a dummy replacement function ... */
}
此代码在插件中和在我们自己的 my_changes 插件中都进行了更新。 通过这样做,总是有一个函数定义了插件是否被激活。