Жестко закодируйте плагин в тему
Привет, я смотрю на жесткое кодирование плагина wp в тему, плагин Календарь.
Вот что я сделал до сих пор:
1) Переместил файлы из wp-контента/плагинов в папку в папке темы и внес изменения, чтобы правильно следовать путям.
2) Установите для заполнения базы данных с помощью SQL-запроса, а не с помощью активации плагина
3) Изменены ограничения ролей, чтобы участники могли добавлять/удалять заказы и т. Д.
Что я теперь я хочу удалить функциональность, которую необходимо редактировать в панели управления wp-admin (хотя ее больше нет в папке плагинов, она по-прежнему требует редактирования в wp-admin из-за того, как плагин устанавливает меню и т. Д.) И, скорее, чтобы post_author редактировал ее на созданной странице в теме (edit_booking.php).
Это не так просто, как вынимать куски кода и добавлять их в edit_booking.php (работает только html), я ищу способ, как перенести все это и вдали от wp-администратора я предполагаю, что в wp-admin есть функции, вызываемые через верхний/нижний колонтитул, которые также необходимо перенести в мою собственную тему functions.php есть ли у кого-нибудь опыт в подобных делах и не хочет ли он поделиться несколькими поучительными кусочками информации о том, как это сделать.
С уважением Мартин
2 answers
Моя первая рекомендация: Не делай этого!
Если автор подключаемого модуля выпустит обновление, вы можете и столкнуться с конфликтами. Особенно, если кто-то устанавливает и новый плагин, и вашу тему одновременно. Гораздо более безопасный способ - встроить поддержку плагинов в вашу тему. Сделайте так, чтобы все изящно ухудшалось в случае, если плагин не существует, но на самом деле не кодируйте плагин в своей теме.
Если вы все еще намерены жестко кодировать вещи ...
Поместите весь плагин в подпапку для вашей темы. Затем, исходя из вашей темы, позвоните activate_plugin()
чтобы включить плагин.
Вероятно, это не то, что вы хотите услышать, но, судя по быстрому просмотру кода, этот плагин не использует ни одной практики WP для форм, JS и безопасности. Он не позволяет API WP обрабатывать данные, не очищает входные данные, не экранирует выходные данные...
Я настоятельно рекомендую вам не использовать этот код без серьезной переписывания форм, которые потребовались бы для обеспечения, по крайней мере, надлежащих аспектов безопасности.