以前嘗試過《Drupal系列網站用robotstxt模塊生成獨立robots.txt》,可以實現多站點的每個站點都有不同的robots.txt,但缺點是需要逐個編輯,當子站數量多、修改次數多的時候,依然顯得麻煩。
後來也嘗試過程序動态生成robots.txt,但一直沒有成功,昨天還嘗試了在自定義module中編寫,但顯示的内容包含在html.tpl.php, page.tpl.php等模闆之中,也不行。
再多查了一些網上的資料并反複測試,終于是可以實現了,步驟如下:
- 删除原來的robots.txt;
最近在處理一些小問題的時候積累了一些小程序來解決,現在記錄下來以備後用。
Drupal多語言網站是通過.po的翻譯文件來導入翻譯數據的,有一批國家/地區名稱需要導入,而以前的.po文件中包括了一部分,隻需要找出并添加新的詞,這個過程人工來核對比較麻煩,就用了下面這段程序:
<?php // check what countries should be added to translation file // james qi 2013-8-14 祁勁松 $array_country=array(//總的需要導入翻譯的詞列表 &
我們在做大數據量網站的時候,有時遇到原始數據量過大的情況,如果都做成一個網站會讓服務器負載過高、用戶打開很慢,這時往往需要分為多個子網站來做,原始數據也需要進行分割,以便分别導入。
下面是将1個美國數據文件分割為50個各州數據文件的例子usa2state.php:
<?php //程序開頭注釋部分開始 /* usa.tsv分割為各州.tsv */ //程序開頭注釋部分結束 $file_usa="usa.tsv";//需要分割的整個美國文件 $file_ak="ak.t
對于我們這種數據量很大的網站,面臨的一個麻煩是總有人來采集,以前多使用過人工檢查、屏蔽的辦法,這種辦法有效果但太費精力,前段時間也找了插件來自動限制最大連接數,但存在誤屏蔽搜索引擎的問題,最近老夫下決定親自操刀寫程序,把這些采集者都斬草除根,雖然
Drupal網站搭建好、數據導入或者編輯完成後,如果需要大批量修改内容,可以有多種辦法:
1、最原始:MySQL語句
找到MySQL數據庫中需要修改的内容放置的字段,用MySQL UPDATE語句來直接替換,其運行效率最高,但實現不方便、出錯後無法挽回、頁面時間沒有變化;
2、最傻瓜:Scanner模塊
今天找到一個用于search和replace的模塊Scanner,安裝試了一下,很容易使用,替換後是生成一個新的版本,如果有問題可以批量還原,選項也很豐富:大小寫敏感查找、全詞查詢、加前後綴設
今年初在搭建Profile Report網站時寫了一篇《系列網站之間相同主題内頁的互相鍊接》,當時主要是用VB編寫程序來對導出的兩個csv文件進行比較,然後計算出可以鍊接的node id,再用PHP程序或者人工的辦法來添加鍊接,整個過程比較繁瑣、自動化程序不高。
此後又嘗試了添加更多的數據到這個站,并進行按照省份分類等工作,就采取了PHP程序+MySQL數據庫的方式,搜索匹配的效率大大提高,運行時間縮短很多。
近期我們新增了一下幾個網站:
- China Exporters of Canton Fair 11
用Drupal搭建網站中,我們通常是初期導入大量數據,後來再反複修改分類、Views、顯示模闆、菜單等項目來改善用戶體驗,特别是顯示模闆可能會在幾個月、幾年後多次修改,甚至是重要的全面修改,顯示内容已經面目全非了,但搜索引擎的快照中還是以前的内容,沒有及時重新抓取、更新排名。
搜索引擎應該是基本參照網站的xmlsitemap中的頁面最後修改時間lastmod、更新頻率changefreq來決定是否回來抓取、多長時間回來抓取的,而Drupal生成的sitemap中某個頁面的最後更改時間很可能就是當初創建的時間,但顯示内容因為模闆修改而早就不同了,造成修改後的内容無法
還是在Business Profile Report這個網站的設置中,我們有些特别的需求,例如:批量設置産品初始價格、順序添加SKU産品編碼、産品頁面更新日期等,都可以用PHP程序來實現,程序bulk_set.php記錄如下:
<?php
$_SERVER['HTTP_HOST'] = 'report.bizdirlib.com';
$_SERVER['SCRIPT_NAME'] = '/bulk_set.php';
我們用MediaWiki搭建的網站中,一些頁面需要用到内部搜索結果,我們以前的辦法是采用Google Search API,嵌入JavaScript代碼後就可以顯示Google已經收錄的相關頁面,這個辦法簡單易行,缺點是沒有被收錄的頁面無法出現,已經展示的JS内容不會被搜索引擎發現内容。
十八大前後這一陣子Google搜索一直不正常,也影響到我們網站上含有Google搜索代碼的頁面,間歇性會出現打不開或者打開極慢的情況,影響用戶正常訪問我們的頁面。這個問題有可能長期存在,所以必須設法解決了,否則隻好把相關頁面删除。
昨天試了一些辦法,後
以前要修改MediaWiki的頁面輸出内容,都是通過修改頁面或者模闆的代碼來實現的,但最近在做手機版的時候,原始網站中有一些内容不是通過模闆來實現的,而是直接嵌入文本在頁面中,例如--~~~~這樣的簽名、時間,就不好通過修改模闆删除。
今天咨詢了同事,再仔細查看MediaWiki的相關PHP程序文件,終于是找到了修改的辦法和地方,可以修改includes/OutputPage.php這個程序:
/**
* Append $text to the body HTML
&n