2009-06-10 9 views
1

J'utilise Phing pour envoyer une installation wordpress à mon serveur de production. Est-il possible de définir les propriétés de wp-config à l'intérieur de mon fichier de construction, et puis phing remplace le contenu de wp-config pour utiliser ces variables?Configuration Phing et Wordpress

Comme ceci:

<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" /> 

Je veux alors une tâche phing qui prend ces valeurs et remplace mon wp-config avec les bonnes propriétés.

Comment est-ce que je ferais ceci?

Merci

Répondre

8

Oui, je pense qu'il est. La recherche dans le phing documentation m'a conduit à la CopyTask (annexe B) ​​et au filtre ReplaceRegexp (annexe D2).

Essayez d'inclure cette tâche dans votre objectif de construire (après avoir défini vos propriétés):

<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> 

Cette tâche copiera config-sample.php (fourni dans la distribution wordpress) à config.php, effectuer une transformation de fichiers via des filtres de remplacement regex, écrasant ainsi les paramètres d'exemple à vos valeurs souhaitées.

Vous pouvez configurer d'autres paramètres aussi bien, comme DB encodage & collationner, les paramètres de sécurité (au moins ces ones), préfixe de table, langue ...

+0

Merci pour votre commentaire. Je vais vérifier dès que possible. – alexn

+0

Merci encore! Je l'ai fonctionné prop! – alexn

+0

De rien. –

Questions connexes