Ajax Call для загрузки различных категорий в WordPress, не выбранных для моей пользовательской страницы фильтра - PullRequest
0 голосов
/ 22 марта 2019

Привет. Итак, в настоящее время у меня есть страница блога, которую я сам кодировал, и пытаюсь загрузить ее на веб-сайт WordPress, на котором есть имя и тип шаблона из WordPress, см. Ниже

/*
 * Template Name: blog-page
 * Template Post Type: page
 */
get_header();

require('blog/conn.php');

теперь require('blog/conn.php') работает и подключается к файлу подключения, однако, когда я пытаюсь сделать мой Ajax Call, это не так, и это с blog/loadfilter.php, когда я размещал это на моем локальном хосте, все работало, однако я предполагаю, что с Мой WordPress переписывает мой URL-адрес в / вместо этого, может быть, поэтому он не поднимает его? Я просто запутался, почему коннект работает, но фильтр не работает и получает предупреждение 404 не найдено

мой код выглядит как первые HTML-кнопки для изменения категории

<ul>
   <li class='listcat'>
      <input type="button" name="all news" id="allnews" onclick="window.location = url;" value="All News">
   </li>
   <li class='listcat'>
      <input type="button" name="technologies" id="technologies" onclick="loadXMLDoc('Technologies')" value="Technologies">
   </li>
   <li class='listcat'>
       <input type="button" name="business" id="business" onclick="loadXMLDoc('Business')" value="Business">
   </li>
   <li class='listcat'>
       <input type="button" name="lifestyle" id="lifestyle" onclick="loadXMLDoc('Lifestyle')" value="Lifestyle">
   </li>
</ul>

<div id="SBElite" class="row main-content-blogs-row">

И JavaScript это

<script type="text/javascript">
  function loadXMLDoc(valueFilter) {

    var http = new XMLHttpRequest();
    var url = 'blog/loadfilter.php';
    var params = 'filter=' + valueFilter;
    http.open('POST', url, true);

    //Send the proper header information along with the request
    http.setRequestHeader('Content-type', 'application/x-www-form-urlencoded');

    http.onreadystatechange = function() {
       if (http.readyState == XMLHttpRequest.DONE) {
           if (http.status == 200) {
              document.getElementById("SBElite").innerHTML = http.responseText;
           }
           else if (http.status == 400) {
              alert('There was an error 400');
           } 
           else if (http.status == 404) {
              alert('nope');
           }
           else {
              alert('something else other than 200 was returned');
           }
         }
      }
      http.send(params);
   }

   //back to the all news page
   var url = 'example.com/blog/';
</script>

1 Ответ

0 голосов
/ 22 марта 2019

С помощью Части Джохансон обнаружил, что /blog/loadfilter.php не был правильным полным относительным путем от WordPress, поэтому я исправил его, и теперь он работает

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...