Я новичок в WordPress и, следовательно, столкнулся с некоторыми проблемами.
Сценарий варианта использования выглядит следующим образом:
- Пользователю отображается форма заявки на создание клуба в его школе.
- Пользователь заполняет форму и нажимает кнопку «Отправить».
- Форма должна быть подтверждена.
- Если проверка прошла успешно, тогда данные сохраняются в пользовательской таблице
club_details
в БД, и пользователю показывается какое-то сообщение (например: Спасибо за отправку. Ваша заявка отправлена администратору для утверждения.) В противном случае пользователю показываются соответствующие сообщения об ошибках. - Администратор заходит в админ панель Wordpress, чтобы одобрить ожидающие запросы для клуба. (Данные извлекаются из базы данных и показываются администратору).
Я сделал следующее:
- для 1) Я создал форму заявки / страницу, используя редактор Wordpress HTML.
- для 3) у меня есть файл JavaScript (
validation.js
), который имеет код проверки. - для 4) У меня есть php-файл (
club-functions.php
), который имеет функциюstoreInDB()
для хранения сведений о приложении в пользовательской таблице в БД. - для 5) Я создал свою собственную папку плагинов и добавил php-файл (
club.php
), который отображает детали приложения для администратора на панели администратора Wordpress.
Я застрял в следующем месте: Как обрабатывать отправку формы. Где я должен разместить код, который вызывает функцию проверки JavaScript, а затем вызывает storeInDB()
функцию.
Пожалуйста, дайте мне несколько советов о том, как мне этого добиться, и хорош ли этот подход? Заранее большое спасибо.
/wp-admin/
каталоге. Обратите внимание, что вам не нужно ничего менять или добавлять в этот файл.Во-первых, позвольте мне сказать вам, что проверка JavaScript работает на стороне клиента. так что если пользователь отключит js, у вас будут проблемы.
Таким образом, вы также должны проверить входные значения на стороне сервера.
с этим в мыслях:
Код js можно вызвать прямо со страницы, где находится форма. Атрибут onsubmit - это обычный способ его вызова.
пример
page.php
Это может быть также ваш пользовательский шаблон страницы или single.php. в этом случае 99 - это идентификатор конкретной страницы, которую вы хотите указать пользователю, если он был одобрен или имел ошибку.
источник