Как получить доступ к базе данных WP внутри ipn.php?

Это мой ipn.php, который отправляет почту пользователю, когда транзакция PayPal завершена.

Проблема в том, что мне также нужно изменить состояние заказа в базе данных WP, а не просто отправить электронное письмо.

Я знаю уникальную переменную $code (целое число) этой транзакции (я сохранил ее, когда форма была отправлена, и пользователь перенаправлен для завершения процесса на странице PayPal), и PayPal отправляет его обратно в файл ipn.php внутри настраиваемого поля $_POST['custom'] .

Таким образом, код в ipn.php (доступ к PayPal как notify_url при успешной транзакции) выглядит следующим образом:

 <?php $req = 'cmd=_notify-validate'; foreach ($_POST as $key => $value) { $value = urlencode(stripslashes($value)); $req .= "&$key=$value"; } // post back to PayPal system to validate $header .= "POST /cgi-bin/webscr HTTP/1.0\r\n"; $header .= "Content-Type: application/x-www-form-urlencoded\r\n"; $header .= "Content-Length: " . strlen($req) . "\r\n\r\n"; $fp = fsockopen ('ssl://www.sandbox.paypal.com', 443, $errno, $errstr, 30); // CUSTOM VARIABLE $code = $_POST['custom']; if (!$fp) { // ERROR } else { $email = "emailtouser@email.com" ; $subject = "Test" ; $message = "Your code is {$code}" ; mail($email, $subject, $message, "From:" . $email); fclose ($fp); } 

Таким образом, письмо отправляется в порядке со значением кода, каким оно должно быть.

Тем не менее, мне также нужно получить электронную почту пользователя из базы данных WP на основе кода $, который уникален для каждого пользователя (тип сообщения), а затем изменить состояние порядка в db.

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

Как это сделать?

Я имею в виду, как получить доступ к WP db здесь:

 } else { // BEFORE SENDING I NEED TO ACCESS WP DB HERE... // AND THEN SEND THE EMAIL $email = "emailtouser@email.com" ; $subject = "Test" ; $message = "Your code is {$code}" ; mail($email, $subject, $message, "From:" . $email); fclose ($fp); }