Как правильно настроить плагин wordpress?

#php #wordpress #plugins #wordpress-theming #wordpress-rest-api

Вопрос:

У меня есть сайт wordpress, который использует плагин WP travel. На странице оформления заказа единственным способом оплаты является Paypal, но вместо этого я хочу использовать полосу. Когда я нажимаю на кнопку формы, я отправляю запрос axios на functions.php где я пытаюсь выполнить wptravel_book_now() (что касается подтверждения бронирования/регистрации),однако я столкнулся с большим количеством ошибок. первый из них заключается в том, что ABSPATH is undefined я попытался жестко закодировать путь к wptravel_book_now() функции, но, похоже, у меня нет доступа к функциям wordpress, потому что я получаю ошибки типа add_action не определено, wp_verify_nonce не определено.

checkout.php:

 const paymentFct=(e)=> {
        e.preventDefault();
        const formData= new FormData();

       //Loop over the form inputs and append values to formData;
       Array.from( e.target).forEach(element => {           
        formData.append(element.name,element.value);
       });

       formData.append('axios_request',true);

    axios({
    method: 'post',
    url: 'http://localhost/myAdventure_wp/wp-content/themes/valley-child/functions.php',
    data: formData,
    headers: {'Content-Type': 'multipart/form-data' }
    })
    .then(function (response) {
       
        console.log(response);
    })
    .catch(function (response) {
       
        console.log(response);
    });
    
    }
// Event listener on form submit.
document.getElementById('wp-travel-booking').addEventListener('submit',function(e){paymentFct(e)});
 

functions.php:

 if(isset($_POST['axios_request'])){

//include_once ABSPATH.'wp-content/plugins/wp-travel/inc/class-wp-travel-email.php';

$_POST['wp_travel_book_now']=true; 

include_once 'C:xampphtdocsmyAdventure_wpwp-contentpluginswp-travelincbooking-functions.php';

wptravel_book_now();

}else{

//filters and actions that goes here
}
 

Я также попытался создать новый php-файл (в той же папке checkout.php) для получения запроса axios, но у него также не было доступа к функциям wordpress. Как мне настроить свою тему /плагины WordPress ? есть ли файл, в который я должен добавить пользовательский код, имеющий доступ к функциям wordpress ?