Чтобы получить ID страницы, с которой была отправлена форма Contact Form 7 в момент события `wpcf7_mail_sent`, вы можете использовать объект `$submission`, который содержит информацию о отправленной форме, включая ID страницы.
Вот пример кода, который можно добавить в файл `functions.php` вашей темы или в плагин:
```php
add_action('wpcf7_mail_sent', 'my_custom_function');
function my_custom_function($contact_form) {
// Получаем объект отправки
$submission = WPCF7_Submission::get_instance();
if ($submission) {
// Получаем ID страницы
$current_post_id = url_to_postid($submission->get_posted_data('_wpcf7'));
// Либо можете просто использовать
$current_post_id = get_post($submission->get_posted_data('_wpcf7_submitted')['_wpcf7']);
// Пример использования ID страницы
error_log('ID страницы: ' . $current_post_id);
}
}
```
В этом коде:
- Мы используем хук `wpcf7_mail_sent` для вызова функции после отправки формы.
- Получаем доступ к данным отправки через `WPCF7_Submission::get_instance()`.
- Используем `url_to_postid()` для получения ID страницы на основе URL, в котором была отправлена форма.
Обратите внимание, что в некоторых случаях, для получения ID страницы, может понадобиться передать дополнительные параметры или использовать методы, специфичные для вашей установки. Убедитесь, что ваша версия плагина Contact Form 7 актуальна, так как в будущем API может изменяться.