2009-06-10 64 views
1

我正在使用Phing將wordpress安裝推送到我的生產服務器。是否可以在我的構建文件中定義wp-config屬性,然後用phing替換wp-config內容來使用這些變量?Phing和Wordpress配置

像這樣:

<property name="prod.db_name" value="wordpress" /> 
<property name="prod.db_user" value="root" /> 
<property name="prod.db_password" value="toor" /> 
<property name="prod.db_host" value="prod.host.com" /> 

我再要一個phing任務這需要這些價值觀,並取代我的WP-Config中使用正確的屬性。

我該怎麼做?

謝謝

回答

8

是的,我認爲是的。在phing documentation中搜索將我帶到了CopyTask(附錄B)和ReplaceRegexp過濾器(附錄D2)。

儘量在你的構建目標這個任務(定義後您的屬性):

<copy file="./config-sample.php" tofile="./config.php"> 
    <filterchain> 
    <replaceregexp> 
     <regexp pattern="(define\('DB_NAME', ')\w+('\);)" replace="\1${prod.db_name}\2"/> 
     <regexp pattern="(define\('DB_USER', ')\w+('\);)" replace="\1${prod.db_user}\2"/> 
     <regexp pattern="(define\('DB_PASSWORD', ')\w+('\);)" replace="\1${prod.db_password}\2"/> 
     <regexp pattern="(define\('DB_HOST', ')\w+('\);)" replace="\1${prod.db_host}\2"/> 
    </replaceregexp> 
    </filterchain> 
</copy> 

此任務將複製配置 - sample.php(在WordPress的分佈提供)config.php文件,執行文件轉換通過正則表達式替換過濾器,從而覆蓋示例參數到您想要的值。

您可能需要配置其他參數,以及像DB編碼&整理,安全參數(至少是那些),表前綴,語言......

+0

感謝您的評論。我將盡快檢查出來。 – alexn 2009-06-17 13:11:42