35
WordPress auto-install : просто о сложном Владимир Самолетов

WordPress auto-install: просто о сложном

Embed Size (px)

Citation preview

Page 1: WordPress auto-install: просто о сложном

WordPress auto-install: просто о сложномВладимир Самолетов

Page 2: WordPress auto-install: просто о сложном

Ручная установка WordPress 1/?1. https://wordpress.org/

2. Качаем последнюю версию

3. Заливаем на сервер

4. Извлекаем из архива и переносим из папки “/wordpress”

5. Создаем wp-config.php

1. Идем в управление MySQL

1. Создаем базу

2. Пользователя

6. Генерируем WordPress.org secret-keys

7. Добавляем дополнительные параметры (WP_SITEURL, WP_HOME, FS_METHOD, WP_POST_REVISIONS)

Page 3: WordPress auto-install: просто о сложном

Ручная установка WordPress 2/?

Page 4: WordPress auto-install: просто о сложном

Ручная установка WordPress 3/?

Page 5: WordPress auto-install: просто о сложном

Ручная установка WordPress 4/?

Page 6: WordPress auto-install: просто о сложном

Готово?

Page 7: WordPress auto-install: просто о сложном

Ручная установка WordPress 5/?

Page 8: WordPress auto-install: просто о сложном

Ручная установка WordPress 5/5

1. Удаляем

1. Тестовые посты, страницы, комментарии

2. Старые Темы

3. Плагины, все кроме Hello Dolly ;)

2. Устанавливаем

1. Свою тему, дочернюю тему

2. Свои любимые плагины

3. Настраиваем

1. Общие настройки

2. Медиафайлы

3. Ссылки

4. Создаем

1. Категории

2. Теги

3. Меню

4. Тестовые записи

Page 9: WordPress auto-install: просто о сложном
Page 10: WordPress auto-install: просто о сложном

WP Quick Installhttp://wp-quick-install.com/

Page 11: WordPress auto-install: просто о сложном

WP Quick Installhttp://wp-quick-install.com/

Page 12: WordPress auto-install: просто о сложном

Плюсы:

1. Качает последнюю версию WP, извлекает из архива

2. Привычный Веб-интерфейс, не консоль

3. Дополнительные настройки (пермалинки, медиа, доп. параметры wp-config.php)

4. Удаление лишнего (постов, страниц, комментариев, тем, плагинов)

5. Установка темы

6. Установка плагинов

7. Добавление тестовых данных (фикстуры)

8. Дополнительная настройка инсталятора через .ini конфигурационный файл

Минусы:

1. БД и пользователя нужно создавать самостоятельно

2. Ограниченный функционал

3. Полуавтоматизация

WP Quick Installhttp://wp-quick-install.com/

Page 13: WordPress auto-install: просто о сложном

Установка через bash/shell/терминал/черное окно

Page 14: WordPress auto-install: просто о сложном

Установка через bash/shell/терминал/черное окно

Page 15: WordPress auto-install: просто о сложном

Установка через bash/shell/териминал/черное окно https://gist.github.com/bgallagh3r/2853221 https://gist.github.com/dongilbert/951776 https://www.rosehosting.com/blog/script-install-wordpress-on-a-debianubuntu-vps/#!/bin/bash # # Install WordPress on a Debian/Ubuntu VPS #

# Create MySQL database read -p "Enter your MySQL root password: " rootpass read -p "Database name: " dbname read -p "Database username: " dbuser read -p "Enter a password for user $dbuser: " userpass echo "CREATE DATABASE $dbname;" | mysql -u root -p$rootpass echo "CREATE USER '$dbuser'@'localhost' IDENTIFIED BY '$userpass';" | mysql -u root -p$rootpass echo "GRANT ALL PRIVILEGES ON $dbname.* TO '$dbuser'@'localhost';" | mysql -u root -p$rootpass echo "FLUSH PRIVILEGES;" | mysql -u root -p$rootpass echo "New MySQL database is successfully created"

# Download, unpack and configure WordPress read -r -p "Enter your WordPress URL? [e.g. mywebsite.com]: " wpURL wget -q -O - "http://wordpress.org/latest.tar.gz" | tar -xzf - -C /var/www --transform s/wordpress/$wpURL/ chown www-data: -R /var/www/$wpURL && cd /var/www/$wpURL cp wp-config-sample.php wp-config.php chmod 640 wp-config.php mkdir uploads sed -i "s/database_name_here/$dbname/;s/username_here/$dbuser/;s/password_here/$userpass/" wp-config.php

# Create Apache virtual host echo " ServerName $wpURL ServerAlias www.$wpURL DocumentRoot /var/www/$wpURL DirectoryIndex index.php

Options FollowSymLinks AllowOverride All

ErrorLog ${APACHE_LOG_DIR}/error.log CustomLog ${APACHE_LOG_DIR}/access.log combined " > /etc/apache2/sites-available/$wpURL

# Enable the site a2ensite $wpURL service apache2 restarton\n"

Page 16: WordPress auto-install: просто о сложном

Плюсы:

• Качает последнюю версию WP, извлекает из архива

• Cоздает БД и пользователя

• Установка без использования браузера

• Дополнительные возможности shell, например возможность создания виртуальных хостов и перезагрузка apache и т.п.

Минусы:

• Консоль нужно знать хорошо :)

• Сложное взаимодействие с WP и конфигурационным файлом

• Многое можно сделать, но затратно по времени

Установка через bash/shell/териминал/черное окно

Page 17: WordPress auto-install: просто о сложном

WP-CLIhttp://wp-cli.org/

Page 18: WordPress auto-install: просто о сложном

WP-CLI / Установкаhttp://wp-cli.org/

$ curl -O https://raw.githubusercontent.com/wp-cli/builds/gh-pages/phar/wp-cli.phar

$ chmod +x wp-cli.phar

$ sudo mv wp-cli.phar /usr/local/bin/wp

Page 19: WordPress auto-install: просто о сложном

WP-CLI / Основные команды 1/3http://wp-cli.org/

$ wp core download

$ wp core config --dbname=<dbname> --dbuser=<dbuser> --dbpass=<dbpass>

$ wp db create

$ wp core install --url=<url> --title=<site-title> --admin_user=<username> — admin_password=<password> --admin_email=<email>

$ wp plugin install <plugin_name> $ wp plugin activate <plugin_name> $ wp plugin status $ wp plugin deactivate <plugin_name>

$ wp theme install <theme_name> $ wp theme activate <theme_name> $ wp theme status $ wp theme deactivate <theme_name>

Page 20: WordPress auto-install: просто о сложном

WP-CLI / Основные команды 2/3http://wp-cli.org/WordPress Update $ wp core update $ wp core update-db $ wp plugin update --all $ wp theme update —all

Export $ wp export $ wp export --max_file_size=<MB> $ wp export --start_date=<date> --end_date=<date> $ wp export --post_type=<post-type> $ wp export --category=<name> $ wp export --post_status=<status> $ wp export —skip_comments

Import $ wp import <file_name.xml> --authors=<authors> [--skip=<data-type>]

DB Export, Import… $ wp db export $ wp db import <dump_file.sql> $ wp db reset $ wp db tables $ wp db query <sql> $ wp db repair $ wp db optimize

Page 21: WordPress auto-install: просто о сложном

WP-CLI / Основные команды 3/3http://wp-cli.org/Search and Replace $ wp search-replace <old> <new> [<table>…]

Manage Users $ wp user list $ wp user create <user-login> <user-email> --role=<role> --user_pass=<password> $ wp user update <user> --<field>=<value> $ wp user delete <user>

Manage Posts $ wp post list $ wp post url <id> $ wp post delete <id> $ wp post get <id> $ wp post meta <add|delete|get|list|update> <id> [val] $ wp post meta set 123 _wp_page_template hoge.php

Add Post $ wp post create [<file>] [--<field>=<value>] $ wp post create --post_title='A future post' --post_status=future —post_date='2020-12-01 07:00:00' $ wp post create ./post-content.txt --post_category=201,345 --post_title='Post from file'

Media $ wp media import <file> $ wp media import ~/Downloads/image.png $ wp media import ~/Pictures/*.jpg $ wp media import http://example.com/style/image.png

Manage Options $ wp option <add|delete|get|update> <key> [val] $ wp option get site_url $ wp option add my_option hoge $ wp option update my_option '{"hoge":"piyo"}' --format=json $ wp option delete my_option

Page 22: WordPress auto-install: просто о сложном

WP-CLI / Power commandshttp://wp-cli.org/$ wp option update timezone_string «Europe/Kiev»

$ wp rewrite structure ‘/%year%/%monthnum%/ %postname%/‘ —hard

$ wp site empty

$ wp search-replace “oldsite.dev” “newsite.com”

$ wp media regenerate —yes

$ wp shell

$ wp scaffold _s $ wp scaffold child-theme $ wp scaffold package-tests $ wp scaffold plugin $ wp scaffold plugin-tests $ wp scaffold post-type $ wp scaffold taxonomy

Page 23: WordPress auto-install: просто о сложном

WP-CLI / Сommunity commandshttp://wp-cli.org/

Advanced CSV Importer, blog-duplicator, CampTix, Co-Authors Plus, DreamObjects, Easy Digital Downloads, Image Gen, Liveblog, More Plugin Info,

Multi Device Switcher, P2 By Email, P2 Resolved Posts, Post Gen, Posts 2 Posts, Safe Redirect Manager, Scheduled Unsticky, SupportFlow, Thinkup Import

WP CLI Commands, Widget Import Export, WordPress to Jekyll Exporter, WP Migrate DB CLI Interface, WP Stream, WP-CFM, WP-Crontrol, wp-deploy-flow,

wp-revisions-cli

Advanced Custom Fields, BackupBuddy, BackUpWordPress, BackWPup, Composer, Developer,

Google Sitemap Generator CLI, Jetpack by WordPress.com, Nginx Cache Controller, W3 Total Cache, WP Migrate DB Pro,

WP Super Cache CLI,

Page 24: WordPress auto-install: просто о сложном

WP-CLI HELPERShttps://github.com/charleslouis/wp_cli_helpers

Page 25: WordPress auto-install: просто о сложном

WP-CLI + bash/shell/терминал/черное окноhttp://www.ltconsulting.co.uk/automated-wordpress-installation-with-bash-wp-cli/

Page 26: WordPress auto-install: просто о сложном

WP-CLI + bash/shell/терминал/черное окноhttps://github.com/vsamoletov/wpinstall

Page 27: WordPress auto-install: просто о сложном

WP-CLI + bash/shell/терминал/черное окноhttps://github.com/vsamoletov/wpinstall

Page 28: WordPress auto-install: просто о сложном

WP-CLI + bash/shell/терминал/черное окноhttps://github.com/vsamoletov/wpinstall

Page 29: WordPress auto-install: просто о сложном

WP-CLI + bash/shell/терминал/черное окноhttps://github.com/vsamoletov/wpinstall

Page 30: WordPress auto-install: просто о сложном

WP-CLI + bash/shell/терминал/черное окноhttps://github.com/vsamoletov/wpinstall

Page 31: WordPress auto-install: просто о сложном

WP-CLI + bash/shell/терминал/черное окноhttp://www.ltconsulting.co.uk/automated-wordpress-installation-with-bash-wp-cli/Плюсы: 1. Качает последнюю версию WP, извлекает из архива 2. Cоздает БД и пользователя 3. Установка без использования браузера 4. Дополнительные настройки (пермалинки, медиа, доп. параметры wp-

config.php) 5. Удаление лишнего (постов, страниц, комментариев, тем, плагинов) 6. Установка темы 7. Установка плагинов 8. Добавление тестовых данных (фикстуры) 9. Огромное количество дополнительных команд для работы с WP

Минусы: 1. Консоль нужно знать, но уже меньше :)

Page 32: WordPress auto-install: просто о сложном

Дополнительно• Composer - getcomposer.org

• Packagist (amazon-webservices-bundle, guzzlephp, php-youtube-api, twbs/bootstrap )

• WP Composer plugin • WordPress Packagist

• Vagrant - vagrantup.com • EasyEngine - rtcamp.com/easyengine

• RPM Package Manager (RPM)

Page 33: WordPress auto-install: просто о сложном

RPM - Install workflowOS

LAMP

WordPress

Composer

Plugins, Themes

Приложение (Файлы и БД)

Page 34: WordPress auto-install: просто о сложном

RPM - Install workflowOS

LAMP

WordPress

Composer

Plugins, Themes

Приложение (Файлы и БД)

Page 35: WordPress auto-install: просто о сложном

Thank you Владимир Самолетов

linkedin.com/in/vsamoletov github.com/vsamoletov

[email protected]