[英]magento disable modules script
我正在对新功能进行一些测试,但是,与我们正在运行的模块存在冲突。 我必须禁用etc文件夹的xml文件(将active设置为false)中的模块来进行测试,但是再次打开它以检查兼容性是否固定。 这很麻烦,我想知道是否有一个脚本可以在我运行时将其关闭和打开。
这不是我第一次遇到这个问题。
我是magento的新手,所以我只想确保自己做的正确。 到目前为止,这是我提出的内容,但是可能需要更正,而且我不确定在某些地方应该加些什么。 这是为了禁用模块。
<?php
$dom=new DOMDocument();
$dom->load("myExt.xml");
$root=$dom->documentElement;
$modules=$root->getElementsByTagName('module');
foreach ($modules as $module) {
$active=$module->getElementsByTagName('active')//Not sure how to end this line
$active='false'; //This is probably incorrect
}
$dom->save('myExt.xml');
?>
提前致谢!
考虑只使用xmllint,它比编写php程序更简单地进行简单的xml编辑:
{
echo 'cd //active'
echo 'set false'
echo 'save'
} | xmllint --shell app/etc/modules/YourModule.xml
您甚至可以将其变成一个简单的shell函数:
##
# Toggle Magento module active or inactive
magetogmod() {
{
echo 'cd //active'
echo "set $1" # First argument. Should be 'true' or 'false'.
echo 'save'
} | xmllint --shell "app/etc/modules/$2.xml" # 2nd arg. Should be the filename without '.xml'
}
# Shortcuts so you don't have to type "true" and "false" all the time:
##
# Disable Magento module
magedismod() { magetogmod false "$1"; }
##
# Enable Magento module
mageenmod() { magetogmod true "$1"; }
然后,如果您已打开配置缓存,则需要清除缓存。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.