Настройка Phing и Wordpress - PullRequest
       25

Настройка Phing и Wordpress

1 голос
/ 10 июня 2009

Я использую Phing для установки WordPress на свой рабочий сервер. Можно ли определить свойства wp-config внутри моего файла сборки, а затем использовать phing вместо содержимого wp-config для использования этих переменных?

Как это:

<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 правильными свойствами.

Как бы я это сделал?

Спасибо

1 Ответ

8 голосов
/ 17 июня 2009

Да, я думаю, что это так. Поиск в справочной документации привел меня к 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>

Эта задача скопирует config-sample.php (предоставленный в дистрибутиве WordPress) в config.php, выполнив преобразование файла с помощью фильтров замены regex, перезаписав параметры примера на нужные значения.

Возможно, вы захотите настроить и другие параметры, такие как кодирование и сопоставление БД, параметры безопасности (по крайней мере, те), префикс таблицы, язык ...

...