/
/
Добавление сайтов в WordPress Toolkit в ispmanager 6

Добавление сайтов в WordPress Toolkit в ispmanager 6

В ispmanager 6 можно управлять версиями, темами и плагинами WordPress в одноименном разделе, если CMS и её компоненты были установлены через панель.

Чтобы добавить установленные вручную WordPress и компоненты в этот раздел, достаточно перейти по пути Все разделы - Управление сайтами - WordPress и нажать Синхронизировать.

Однако, если WordPress был установлен вручную до появления WordPress Toolkit в ispmanager 6, необходимо добавить этот сайт в базу данных панели вручную.

Первоначально необходимо узнать точную версию установленного вручную WordPress, после чего можно приступать к работе с базой данных, подключившись к серверу по SSH.

MySQL

Если при установке панели в качестве основной СУБД была выбрана MySQL, подключитесь к базе данных ispmgr в этой СУБД через консоль:

mysql
mysql> use ispmgr;

После этого, выполните следующие команды для получения необходимых данных:

  1. Узнайте id вашей версии WordPress:
    select id, catalog_id from aps where catalog_id like '%wordpress%<версия_wordpress>%';
  2. Узнайте id сайта с WordPress:
    select id from webdomain where name = '<имя_сайта>';
  3. Проверьте id занятые другими сайтами с WordPress:
    select id from aps_assign;

Также необходимо собрать данные по WordPress и подготовить HTML-блок с параметрами:

<aps_params>
	<username> </username>						-- пользователь-владелец сайта domain.com
	<admin_login> </admin_login>				-- логин администратора WordPress
	<admin_password> </admin_password>			-- пароль администратора WordPress
	<database_server> </database_server>		-- сервер базы данных в ispmanager 6, в которой располжена база данных WordPress
	<database> </database>						-- имя базы данных в ispmanager 6, подключенной к WordPress
	<database_username> </database_username>	-- имя пользователя этой базы данных
</aps_params>

Теперь можно добавить запись в таблицу aps_assign выполнив SQL-запрос следующего вида:

INSERT INTO aps_assign (id, aps, webdomain, path, fast_install_wordpress, parameters, update_error, update_running) VALUES (<незанятый_id_aps_assign>,<id_версии_wordpress>,<id_сайта>,<домашний_каталог_сайта>,'on',<параметры_wordpress>,'','off');

После добавления записи, перейдите по пути Все разделы - Управление сайтами - WordPress и нажмите Синхронизировать: информация о WordPress на сайте станет доступна в WordPress Toolkit.

SQLite3

Если при установке была в качестве основной СУБД была выбрана SQLite3, то запросы необходимо выполнять непосредственно к файлу базы данных по пути /usr/local/mgr5/etc/ispmgr.db:

  1. Узнайте id вашей версии WordPress:
    sqlite3 -header -column /usr/local/mgr5/etc/ispmgr.db "select id, catalog_id from aps where catalog_id like '%wordpress%<версия_wordpress>%';"
  2. Узнайте id сайта с WordPress:
    sqlite3 -header -column /usr/local/mgr5/etc/ispmgr.db "select id from webdomain where name = '<имя_сайта>';"
  3. Проверьте id занятые другими сайтами с WordPress:
    sqlite3 -header -column /usr/local/mgr5/etc/ispmgr.db "select id from aps_assign;"

Также необходимо собрать данные по WordPress и подготовить HTML-блок с параметрами:

<aps_params>
	<username> </username>						-- пользователь-владелец сайта domain.com
	<admin_login> </admin_login>				-- логин администратора WordPress
	<admin_password> </admin_password>			-- пароль администратора WordPress
	<database_server> </database_server>		-- сервер базы данных в ispmanager 6, в которой располжена база данных WordPress
	<database> </database>						-- имя базы данных в ispmanager 6, подключенной к WordPress
	<database_username> </database_username>	-- имя пользователя этой базы данных
</aps_params>

Теперь можно добавить запись в таблицу aps_assign выполнив SQL-запрос следующего вида:

sqlite3 /usr/local/mgr5/etc/ispmgr.db "INSERT INTO aps_assign (id, aps, webdomain, path, fast_install_wordpress, parameters, update_error, update_running) VALUES (<незанятый_id_aps_assign>,<id_версии_wordpress>,<id_сайта>,<домашний_каталог_сайта>,'on',<параметры_wordpress>,'','off');"

После добавления записи, перейдите по пути Все разделы - Управление сайтами - WordPress и нажмите Синхронизировать: информация о WordPress на сайте станет доступна в WordPress Toolkit.

Пример

В качестве примера рассмотрим добавление сайта domain.com с WordPress версии 4.7.

Подключаемся к СУБД и базе данных ispmgr:

root@server:~# mysql
Welcome to the MySQL monitor.  Commands end with ; or \g.
...
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql> use mysql;
Reading table information for completion of table and column names
...
Database changed
mysql> 

Получаем информацию об id из таблиц:

mysql> select id, catalog_id from aps where catalog_id like '%wordpress%<версия_wordpress>%';
+----+--------------------------------------------------------------------------------------------------------------------------------------+
| id | catalog_id                                                                                                                           |
+----+--------------------------------------------------------------------------------------------------------------------------------------+
| 56 | tag:apscatalog.com,2017-05-17:/1.2/WordPress.org/WordPress/4.7.5-241/Plesk/undefined/undefined/undefined|2023-07-13 15:34:09|off|off |
+----+--------------------------------------------------------------------------------------------------------------------------------------+
1 row in set (0.00 sec)

mysql> select id from webdomain where name = 'domain.com';
+----+
| id |
+----+
| 5  |
+----+
1 row in set (0.00 sec)

mysql> select id from aps_assign;
+----+
| id |
+----+
| 2  |
| 3  |
| 4  |
| 6  |
+----+
1 row in set (0.00 sec)

Подготовим строку с параметрами для самой CMS. Например, владельцем сайта является пользователь www-root, сам WordPress подключен к базе данных wp47db на сервере MariaDB 10.5, администратором которой является wp47db_adm:

<aps_params>
	<username>www-root</username>						-- пользователь-владелец сайта domain.com
	<admin_login>admin</admin_login>					-- логин администратора WordPress
	<admin_password>passwd</admin_password>				-- пароль администратора WordPress
	<database_server>mariadb-10.5</database_server>			-- сервер базы данных в ispmanager 6, в которой располжена база данных WordPress
	<database>wp47db</database>							-- имя базы данных в ispmanager 6, подключенной к WordPress
	<database_username>wp47db_adm</database_username>	-- имя пользователя этой базы данных
</aps_params>

Теперь добавляем все данные в один SQL-запрос, выбирая любой id, которого не было в выводе команды select id from aps_assign;:

INSERT INTO aps_assign
(id, aps, webdomain, path, fast_install_wordpress, parameters, update_error, update_running)
VALUES
(1,56,5,'/var/www/www-root/data/www/domain.com','on','<aps_params><username>www-root</username><admin_login>admin</admin_login><admin_password>passwd</admin_password><database_server>mariadb-10.5</database_server><database>wp47db</database><database_username>wp47db_adm</database_username></aps_params>','','off');

После добавления записи, переходим по пути Все разделы - Управление сайтами - WordPress и нажимаем Синхронизировать: информация о WordPress на сайте теперь доступна в WordPress Toolkit.

В этой статье