php – WordPress过滤多个下拉分类法,通过ajax显示自定义字段

前端之家收集整理的这篇文章主要介绍了php – WordPress过滤多个下拉分类法,通过ajax显示自定义字段前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我目前有一个名为newcpt的自定义帖子类型.这有2个分类,区域和城市.
在区域我有regiona和regionb,在城市我有citya和cityb.

我目前正在使用wp_dropdown_categories来获取regiona的下拉列表.有没有一个快速或简单的解决方案来显示第二个下拉列表,只有当它还有regiona作为分类时才会显示.

所以举个例子.我有一个testpost的帖子,在regiona和citya,当从下拉列表中选择regiona时,我想第二次下拉到这个地区的城市,所以在这种情况下citya

一旦选择了城市,它将从同一页面上的匹配分类获取此cpt中的所有帖子.任何提示或有用的链接都非常感谢!!

我认为最好的解决方案是使用 PHP生成数据集并使用例如AngularJS在客户端站点显示.

JavaScript

  1. angular
  2. .module('app',[])
  3. .controller('controller',[
  4. '$scope','$attrs',function ($scope,$attrs) {
  5. $scope.data=JSON.parse($attrs.selects);
  6. $scope.region = {};
  7. $scope.city = {};
  8.  
  9. $scope.loadCitys = function () {
  10. $scope.region = JSON.parse($scope.region);
  11. };
  12.  
  13. $scope.loadPosts = function () {
  14. $scope.city = JSON.parse($scope.city);
  15. };
  16. }
  17. ]);

和HTML

  1. <!DOCTYPE html>
  2. <html ng-app="app">
  3.  
  4. <head>
  5. <script src="https://code.angularjs.org/1.5.8/angular.js"></script>
  6. <link rel="stylesheet" href="style.css" />
  7. </head>
  8.  
  9. <body ng-controller="controller" data-selects='[{"name":"Region 1","citys":[{"name":"City 1","posts":[{"title":"Post 1","id":1},{"title":"Post 2","id":2}]}]},{"name":"Region 2","citys":[{"name":"City 2","posts":[{"title":"Post 3","id":3},{"title":"Post 4","id":4}]},{"name":"City 3","posts":[{"title":"Post 5","id":5},{"title":"Post 6","id":6}]}]}]'>
  10. <div>
  11. Region: {{region.name}} <br>
  12. City: {{city.name}}
  13. </div>
  14.  
  15. <select ng-model="region" ng-change="loadCitys()">
  16. <option ng-repeat="tregion in data" value="{{tregion}}">{{tregion.name}}</option>
  17. </select>
  18.  
  19. <select ng-model="city" ng-change="loadPosts()">
  20. <option ng-repeat="tcity in region.citys" value="{{tcity}}">{{tcity.name}}</option>
  21. </select>
  22.  
  23. <select ng-model="post">
  24. <option ng-repeat="tpost in city.posts" value="{{tpost}}">{{tpost.title}}</option>
  25. </select>
  26.  
  27. <script src="script.js"></script>
  28. </body>
  29.  
  30. </html>

活例:https://plnkr.co/edit/gyzCxMpn9luAcGsLZHYD

(你必须敲定它)

猜你在找的PHP相关文章