如何在ImpressPages 4.x上检查插件是否已安装以及状态?
如果rss插件已安装并处于活动状态,我想显示rss提要链接。是否有任何检查插件状态的功能?我尝试了ipGetOption()
,但无论插件是否处于活动状态,选项都会一直存储。我需要获取isActive
列的Plugin
状态。
<?php if($rss_url = ipGetOption('Rss.rssUrl')): ?>
<li class="rss"><a href="<?php echo $rss_url; ?>" title="RSS" target="_blank">RSS</a></li>
<?php endif; ?>
没有"正确"的方法可以做到这一点。然而,有多种方法可以通过使用内部方法来实现这一点。我相信最简单的方法是:
<?php
$activePlugins = 'Ip'Internal'Plugins'Service::getActivePluginNames();
if(in_array('Rss', $activePlugins)) {
$rss_url = ipGetOption('Rss.rssUrl');
?>
<li class="rss"><a href="<?php echo $rss_url; ?>" title="RSS" target="_blank">RSS</a></li>
<?php } ?>
此服务方法每次都执行一个DB查询。因此,请小心使用。