Задать вопрос
Natasha000
@Natasha000

Как в php програмно открыть страницу и нажать на кнопку?

Есть сайт WordPress . В нем установлен плагин market (он создает группы и цены для них)
Импорта групп нет, для этого плагина. Все группы создаются вручную из админки.
Я импортирую группы с помощью wp all import - но группы создаются стандартными и не работают с market .
Нужно через админку плагина market заходить и сохранять заново каждую группу.
Хочу написать скрипт который будет после импорта заходить на страницу админки плагина market и нажимать на кнопку "сохранить" (то есть группа существует но нужно ее пере сохранить в плагине market )

Пробовала добавить плагин со следующим кодом:
$data = array ('submit' => 'Save Group');
$url5 = "https://www.mysite.ru/wp-admin/admin.php?page=vsw-market&tab=groups&group_id=337"; // URL на который посылаем запрос

$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url5); // Устанавливаем URL на который посылать запрос
curl_setopt($ch, CURLOPT_HEADER, 0); //  Результат будет содержать заголовки
curl_setopt($ch, CURLOPT_RETURNTRANSFER,1); // Результат будет возвращём в переменную, а не выведен.
curl_setopt($ch, CURLOPT_TIMEOUT, 3); // Таймаут после 4 секунд
curl_setopt ($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_POST, 1); // Устанавливаем метод POST
curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
$html = curl_exec($ch);
curl_close($ch);
echo $html;

безрезультатно..
Смотрела класс плагина market = в нем прописано в функциях много html и метода POST .
То есть, на сколько я поняла - там формируется html с полями и с него берет функция методом POST.(пока не сформирован вывод html метод $_POST будет пустым).
Помогите пожалуйста...
  • Вопрос задан
  • 314 просмотров
Подписаться 1 Простой Комментировать
Пригласить эксперта
Ответы на вопрос 2
Adamos
@Adamos
Открыть "страницу админки плагина market".
Нажать F12 и перейти на вкладку "Сеть".
Вручную заполнить форму и нажать заветную кнопку.
Проанализировать, POST-запрос с какими полями, заголовками и куками был отправлен на сайт.
Повторить такой запрос с нужными данными из CURL-а.

Ну, а если это все происходит на вашем же сайте - лучше посмотреть, как этот загадочный плагин пишет данные в БД и писать их аналогично - самостоятельно.
Ответ написан
@GennadyGA
...что-нибудь автоматизировать...
1. Сделать js функцию которая по id запускает кнопку, кликает Сохранить, обернуть if post 'save', дальше со своей странице Аяксом отправлять post 'save'.
2. Найти строку отправки на сохранение и продублировать на необходимой странице не заходя в админку.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы