如何从index.php调用插件函数

时间:2012-11-18 作者:Yoga

我在插件中创建了一个函数myplugin 使用名称foo, 如何从前端调用它?

 e.g. index.php?

3 个回复
最合适的回答,由SO网友:Tom J Nowell 整理而成

与其他方式相同:

foo();
在主题文件之前加载活动插件

您可能需要检查插件是否已激活,功能是否可用,以便在忘记激活插件时不会出现问题,例如:

if(function_exists(\'foo\')){
    foo();
} else {
    echo "oh dear you haven\'t activated/installed \'myplugin\', go do that before the \'foo\' feature is available";
}
还要记住foo 是一个非常通用的函数名,也许“omgfoo”插件也有一个foo 作用因此,将函数的前缀/名称空间设置为唯一的

您最终会希望使用操作和过滤器,因为它们更安全,更实用,you can continue to read up on that here

SO网友:fuxia

你不需要。一个主题不应该依赖于插件,除非是在一个非常受控的环境中。使用actions and filters 相反

因此,在主题中,您可以使用:

do_action( \'before_header\' );
…或…

$bg_options = array (
    \'wp-head-callback\' => \'t5_custom_background_frontend\',
    \'default-color\'    => \'f0f0f0\',
    \'default-image\'    => \'\',
);
$bg_options = apply_filters( \'t5_theme_bg_options\', $bg_options );
add_theme_support( \'custom-background\', $bg_options );
add_action( \'login_head\', $bg_options[\'wp-head-callback\'] );
在您使用的插件中add_action()add_filter() 更改或添加新内容。这样,当插件被停用并且您不必使用时,主题仍然可以工作function_exists().

SO网友:Rarst

活动插件在主题模板运行时加载(从技术上讲,它们的文件包括在内,并在WordPress加载期间由PHP处理)。

因此,您的函数应该可用,并且可以作为任何其他函数调用:

<?php foo(); ?>
例如。

结束

相关推荐

Travel Blog Plugins

今年晚些时候,我将使用Wordpress创建一个关于我旅行的博客。我希望该博客具有以下功能我的帖子将被地理定位一张包含帖子位置的地图,可以单击地图上的各个点到达帖子</我正在寻找最好/最合适的插件。谢谢,艾尔。