Как и в отличие от публикации с использованием Wordpress Rest API JQuery и AJAX - PullRequest
0 голосов
/ 11 октября 2018

Я хочу добавить систему, в которой обычный пользователь (не нужно входить в систему) может голосовать в сообщении часто задаваемых вопросов.когда он / она нажмет на да или нет, это будет засчитано и показано в моем бэкэнде.Как я могу это сделать??This is user section[![this is background section] 2

1 Ответ

0 голосов
/ 11 октября 2018

Если вы хотите, чтобы пользователь внешнего интерфейса голосовал, вам следует:

  • Отредактировать шаблон вашего сообщения веб-интерфейса (или страницы со списком), добавив необходимый HTML (кнопки)
  • Создатьпользовательский маршрут POST API
  • Создайте маршрут JS-POST к API-интерфейсу с определенным параметром для upvote, другим для downvote и ID сообщения
  • Создайте 2 поля ACF (целое число), чтобы быть увеличенным, в своем посте
  • используйте плагин Admin Columns, чтобы добавить эти столбцы подсчета в вашу бэкэнд-таблицу
  • в методе PHP, обрабатывающем ваш новый маршрут API, увеличьте мету upvote или мету downvoteв зависимости от данных POST.
  • Тот же метод должен проверять:
    • Голосовал ли пользователь уже за этот пост из данных сеанса и в зависимости от вашей логики увеличивал / уменьшал один из мета постов
    • Убедитесь, что голосующий пост является общедоступным и может по праву быть проголосованным
    • сохранить массив в сеансе пользователя, чтобы предотвратить множественное голосование, и выделить кнопки вверх / вниз, если он ужеdy voted
  • Отредактируйте шаблон внешнего интерфейса, чтобы выделить ту или иную кнопку, и не допускайте повышения при нажатии с помощью JS, если уже проголосовали, разрешайте только понижение или ничего и т.д. ... в зависимости от логики, которую выхочу
...