您好,登錄后才能下訂單哦!
這篇文章主要為大家展示了“phpcms v9采集中遇到相對路徑問題怎么辦”,內容簡而易懂,條理清晰,希望能夠幫助大家解決疑惑,下面讓小編帶領大家一起研究并學習一下“phpcms v9采集中遇到相對路徑問題怎么辦”這篇文章吧。
一、采集網址時,遇上網址是相對路徑的問題。(網上抄的,可用)
修改數據庫v9_collection_node,增加兩個字段replace_from,replace_to(varchar(200))
1、 /phpcms/modules/collection/templates/node_form.tpl.php第99行后增加(位置在</table></fieldset>之前)
<tr>
<td width="120">網址替換:</td>
<td>
<input type="text" name="data[replace_from]" value="<?php if(isset($data['replace_from'])) echo $data['replace_from']?>"/>替換為
<input type="text" name="data[replace_to]" value="<?php if(isset($data['replace_to'])) echo $data['replace_to']?>"/>
</td>
</tr>
2、 /phpcms/modules/collection/classes/collection.class.php第177行后增加(位置在:$html = str_replace(array("</a>", "</A>"), "</a> ", $html);之后)
if(!empty($config['replace_from'])){
$html = str_replace($config['replace_from'], $config['replace_to'], $html);}
3、 進入數據庫給 數據庫名_collection_node 增加字段:replace_from 和 replace_to 兩個字段。字數50-100都可以。
然后在采集管理中我們能看到有替換網址的選項啦。將多余的../之類的替換掉就行了。
二、采集內容頁中包含相對路徑的問題。(原創)
修改phpcms/modules/collection/classes/collection.class.php中get_content方法
在return $data;前面加入2行代碼
$data=str_replace('./','',$data);//這句把所有./去掉
$data=str_replace('http://qxj.nanjing.gov.cn/xwzx/qxyw_1',dirname($url),$data);
//這句把錯誤的地址替換為正確地址。其中http://qxj.nanjing.gov.cn/xwzx/qxyw_1這個地址是我的地址,記得換哦。
以上是“phpcms v9采集中遇到相對路徑問題怎么辦”這篇文章的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注億速云行業資訊頻道!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。