Intereting Posts
Посты запросов в текущей категории, но не формат вложения получить короткий код элементов контента (страницы, сообщения и т. д.) Нет авторов для пользовательских типов сообщений wp_mail отправляет почту дважды! Должен ли я использовать сброс CSS для WordPress, или это нормально, перезагрузка CSS CSS Eric Meyer? Использование Nonces для AJAX, которое только извлекает данные Получите пост, ближайший к сегодняшнему дню Как применить pre_get_posts к пользовательскому запросу? выставлять загрузку приложения на передний план – деликатный Сделать запрос базы данных с помощью WordPress WooCommerce – многократный мета-запрос не работает Как проверить, имеет ли конкретный дочерний термин общие должности с другим набором дочерних терминов в рамках одной таксономии? Кажется, не фильтрует wp_query по идентификатору текущей категории Удаление иерархических страниц в постоянной ссылке Регистрация новой постоянной ссылки для не-post / page

Использование Subversion для развертывания WordPress

Я использую Subversion с моими сайтами. До сих пор это означало создание нового репо для каждого из моих сайтов. Тем не менее, это полностью неэффективно, так как это означает, что я цепляюсь за весь источник WordPress для каждого из сайтов. Это также означало, что мне приходится копировать плагины между репозиториями и таким образом дублировать код каждый раз.

Так что я хотел сделать, это иметь репо, в котором действительно содержался только файл темы (и, возможно, другие каталоги, относящиеся к конкретному сайту, такие как плагины для конкретного сайта). После этого у вас будет ссылка на тегированный репозиторий WordPress для версии WordPress, с которой я буду строить, и ссылку на мои другие общие плагины-репозитории, так что для того, чтобы выпустить или развернуть для тестирования, мне нужно было бы сделать svn checkout svn://path/to/site/repo и он будет загружать весь репо WordPress, все мои плагины и все материалы, относящиеся к сайту.

Есть какой-либо способ сделать это? Или это плохая идея? Есть ли более простой / лучший способ сделать это вообще? Как это делают другие?

Ну, ничто не мешает использовать Subversion для решения этих задач

Примечание. Некоторые шаги могут отличаться в зависимости от компоновки вашего собственного репозитория для тем / плагинов (я полагаю, они являются внутренними файлами внутри, а все дерево не повторяет стандартный WP-макет: /wp-content/themes/ wp-content/plugins/ )

Для того, чтобы начать, вы должны иметь:

  • Пустое хранилище Subversion, в котором вы можете совершить
  • Основные знания о svn: externals
  • URL-адреса всех компонентов (включая WP-core), которые вы хотите объединить в «дистрибутиве»,

Общее правило:

Все компоненты обслуживаются в собственных репозиториях, наше репо связывает их только в одном месте

Действия:

  • Checkout (пустой) trunk svn co URL/trunk Deploy
  • Напишите все определения компонентов в текстовом файле (externals.txt для образца) (сохраните его в любом месте, он не должен быть частью репо), они появляются в файле что-то вроде

wordpress http://core.svn.wordpress.org/tags/3.5/

wordpress/wp-content/plugins/plugin-one URL-OF-PLUGINONE

...

wordpress/wp-content/themes/Mytheme URL-OF-MYTHEME

(каждая строка представляет собой новое определение внешних элементов, 1-я часть – относительный путь к локальному директорию, пространство (-ы) – разделенная 2-я часть – источник содержимого каталога)

  • cd Deploy
  • Используйте externals.txt для определения всех внешних в корне сундука сразу svn propset svn:externals . -F ../externals.txt svn propset svn:externals . -F ../externals.txt
  • Зафиксировать изменения
  • Обновите (или checkout trunk в новый каталог) и посмотрите все: ядро, необходимые модули и темы, собранные внутри wordpress dir

В следующий раз, когда вы захотите изменить конфигурацию развертываемого WP, вы можете редактировать существующие определения svn: externals ('svn propedit', 'svn commit') и получать после проверки обновленную конфигурацию.

У меня есть одна многоузловая установка с WP, выведенным из SVN, чтобы обновить все сайты, которые мне нужно сделать, это команда svn sw ... и перейти на страницу обновления в wp-admin.

Если все сайты находятся на одном сервере, я бы рекомендовал посмотреть на многосайтовый сайт.

Используйте NetBeans … Когда вы просматриваете копию из SVN, вы можете напрямую использовать ее в качестве исходных файлов для своего проекта и в то же время синхронизировать ее с вашим сервером. NetBeans отслеживает новые файлы, изменяет файлы, вы можете сравнивать версии, фиксировать, обновлять и т. Д. Это потрясающе, не требуется командная строка (за исключением проверки / экспорта / импорта, которую вы делаете из командной строки / терминала).