我有以下代码:
if (isset($this->request->get['filter'])) {
$filter = $this->request->get['filter'];
} else {
$filter = '';
}
我想用代替它
if (isset($this->request->get['attribute'])) {
$filter = $this->request->get['attribute'];
} else {
$filter = '';
}
我在vQmod文件夹中尝试了以下操作:
<operation info="After filter request, add attribute request">
<search position="Replace"><![CDATA[
if (isset($this->request->get['filter'])) {
]]></search>
<add><![CDATA[
if (isset($this->request->get['attribute'])) {
$filter = $this->request->get['attribute'];
}
]]></add>
</operation>
我检查了vQmod日志文件,得到错误:SEARCH NOT FOUND
有人能帮我告诉我在if
语句替换中必须使用什么吗。
最简单的解决方案就是像这样替换两个get['filter']
值
<operation>
<search position="replace"><[CDATA[get['filter']]]></search>
<add><[CDATA[get['attribute']]]></add>
</operation>
我试图在我的搜索属性中使用offset
,如<search position="Replace" offset="2">
,但它产生了一些其他错误,所以我决定使用单行搜索,如下所示:
<operation>
<search position="replace"><![CDATA[
if (isset($this->request->get['filter'])) {
]]></search>
<add><![CDATA[
if (isset($this->request->get['attribute'])) {
]]></add>
</operation>
<operation>
<search position="replace"><![CDATA[
$filter = $this->request->get['filter'];
]]></search>
<add><![CDATA[
$filter = $this->request->get['attribute'];
]]></add>
</operation>
希望它能帮助像我这样的其他人