Мне нужно связать мой установленный PrestaShop с другим веб-приложением, используя его API. Этот новый процесс должен быть выполнен после создания учетной записи или после ее подтверждения (по электронной почте). Поскольку я не занимался разработкой PrestaShop, я не знаком с его папками, файлами, контроллерами и их методами. Я нашел что-то в controller/front/AuthController.php
но я не уверен, что это правильно или нет?
Можете ли вы мне помочь, чтобы найти точную позицию для ввода моих новых кодов?
Если вы только хотите что-то выполнить, когда учетная запись создана в Front office, вы можете использовать hook actionCustomerAccountAdd. При создании учетной записи он выполнит:
Hook::exec('actionCustomerAccountAdd', array(
'_POST' => $_POST,
'newCustomer' => $customer
));
Таким образом, вы можете создать модуль, который использует эту информацию, например blocknewsletter module:
public function hookActionCustomerAccountAdd($params)
{
// do something
}
Если вы хотите выполнить, даже когда клиент добавлен в backoffice, вам необходимо переопределить класс Customer. Создайте файл в переопределении /classes/Customer.php с помощью:
class Customer extends CustomerCore
{
public function add($autodate = true, $null_values = true)
{
$res = parent::add($autodate, $null_values);
if($res){
// customer is added -> do something
}
}
}