Joomla中有什么好方法可以在安装过程中自动启用插件吗?我已经关注了帖子的主题,但没有得到任何直接的解决方案。
我在安装过程中使用了以下代码来自动启用插件:
UPDATE `#__extensions` SET `enabled` = 1 WHERE `element` = 'plugin_name';
但我想知道更好的解决方案。
/感谢
这是我唯一知道的方式;下面详细介绍了其他可能会在尝试如何做到这一点时遇到困难的人。
将scripfile添加到清单(XML)中,位于</description>
标记下方:
<scriptfile>my_script.php</scriptfile>
my_script.php:
class PlgSystemPluginnameInstallerScript
{
public function install($parent)
{
// Enable plugin
$db = JFactory::getDbo();
$query = $db->getQuery(true);
$query->update('#__extensions');
$query->set($db->quoteName('enabled') . ' = 1');
$query->where($db->quoteName('element') . ' = ' . $db->quote('PLUGIN_NAME_GOES_HERE'));
$query->where($db->quoteName('type') . ' = ' . $db->quote('plugin'));
$db->setQuery($query);
$db->execute();
}
}
提示:如果是内容插件,请将PlgSystemPluginnameInstallerScript
替换为PlgContentPluginnameInstallerScript
。