Предоставление Веб-Сервиса Через Wordpress


Я создаю новый плагин для WordPress, который требует, чтобы внешний веб-сайт использовал веб-сервис. Например, если есть два сайта, A и B, плагин будет установлен на A со всеми связанными данными, хранящимися в WPDB для сайта A. сайт B будет использовать веб-сервис для захвата данных в формате XML с сайта A.

Возможно ли это? Каков был бы самый безопасный способ осуществить это?

Я мог бы просто иметь веб-сервис в виде файла PHP в моем плагине, но для этого потребуется вне домена, чтобы ударить что-то вроде: http://www.domain.com/wp-content/plugins/plugin-folder/web-service.php . мне кажется, что это плохая идея-выставлять уровень глубины настройки Wordpress.

Я мог бы попросить мой плагин создать несколько файлов в корне, чтобы вызов веб-службы был http://www.domain.com/web-service.php , но установка моего плагина за пределами каталога плагинов также кажется плохой практикой.

Еще одна мысль: могу ли я поставить файл в папке плагина, но добавьте строку .htaccess to make http://www.domain.com/web-service.php идти к нему?

Есть ли у кого-нибудь мысли о лучшем, самом безопасном способе решения этой проблемы?

2 3

2 ответа:

Я бы установил правило перезаписи .htaccess позволяет пользователю получить доступ к вашему коду, не зная, где он находится. Я не думаю, что есть простой способ добавить определенные маршруты в WordPress front controller, но вы можете посмотреть, есть ли действие или фильтр для этого.

Правка:

Вот сообщение о добавлении маршрутов https://wordpress.stackexchange.com/questions/26388/how-to-create-custom-url-routes

По моему личному мнению, если бы я установил плагин WP и вы создали новый файл в моем корневом каталоге, я бы либо удалил файл, либо плагин все вместе. Я бы также постарался не добавлять a .файл htaccess. Это снова вызвало бы у меня подозрения.

Что бы я сделал, после установки ping файл на сайте B (ваш сайт), который захватывает расположение папки плагина на сайте A (их сайт), потому что WP может быть установлен внутри каталога, а не в корне. Тогда вы знаете где веб-служба.php " файл находится. Тогда вы можете просто нажать на этот файл, когда вам нужно. Для этого нет никаких оснований .правила htaccess, или создание новых файлов.

Просто предложение :)