首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >elgg_get_context()不工作

elgg_get_context()不工作
EN

Stack Overflow用户
提问于 2014-01-27 18:10:26
回答 3查看 173关注 0票数 0

我一直在尝试在elgg框架上写一个插件。因此,我尝试使用elgg_extend_view()函数为特定页面调用特定的css,但这并不起作用。例如

代码语言:javascript
复制
 if(elgg_get_context()){
     elgg_extend_view('css/elgg', 'myplugin/css');
 }/*This works*/

但是下面的方法似乎不起作用

代码语言:javascript
复制
if(!elgg_get_context()){ //If there is not elggcontext call no_css file
     elgg_extend_view('css/elgg', 'myplugin/no_css');
 }/*This is not working */

有人能告诉我为什么吗?

EN

回答 3

Stack Overflow用户

发布于 2014-01-29 20:36:59

显然,您曲解了elgg_get_context函数的预期行为。

检查:http://reference.elgg.org/pageowner_8php.html#a25fe73eb19442b4a4476f18e63abf382它使用字符串作为上下文名称(它必须首先被推送,通常是在pagesetup事件之前设置的)

由于缓存的原因,elgg/css的条件扩展将无法正常工作。您可能希望改用elgg_register_csselg_load_css

票数 0
EN

Stack Overflow用户

发布于 2014-01-29 20:42:33

elgg_get_context()返回字符串或NULL

感叹号(!)在这种情况下是不好的。

尝试:

代码语言:javascript
复制
if(null!==elgg_get_context()){ //If there is not elggcontext call no_css file
    elgg_extend_view('css/elgg', 'myplugin/no_css');
}

如果在尝试可视化函数返回的内容时遇到任何问题,请参阅:

var_dump(elgg_get_context());

注意: elgg的版本是1.8.18,请检查您是否更新了代码。

票数 0
EN

Stack Overflow用户

发布于 2014-02-02 11:02:47

最好的方法是比较你的插件的上下文,因为elgg总是会维护一些上下文。

所以要像这样做:

代码语言:javascript
复制
 if(elgg_get_context() == 'myplugin'){
     elgg_extend_view('css/elgg', 'myplugin/css');
 }
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/21378036

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档