【问题标题】:How to sort and display posts by selected category如何按所选类别对帖子进行排序和显示
【发布时间】:2017-10-15 01:08:42
【问题描述】:

我有一个关于汽车的 Wordpress 博客系统。在一个 div 的主页上,我显示最近的 5 个帖子。

现在我想按用户选择的帖子类别过滤这些帖子。

我的帖子类别有一个下拉列表,用户可以从那里选择一个类别。一旦用户从那里选择了一个类别,我只需要显示与该类别相关的帖子,而不刷新页面。

我怎样才能做到这一点?

谢谢。

【问题讨论】:

  • Dropdown change ,在 url 中传递当前选择的类别 id 作为参数,例如: www.abc.com/currentpageurl?catid=3 使用 php 从 url 中获取 id 值,即 $_GET['catid' ],只需在您的 wp 查询中使用 cat 选项,这将为您提供特定类别的帖子

标签: wordpress sorting filter posts


【解决方案1】:

您可以分两步完成。

    1234563方法作为一个选项。
  1. 在您当前的 WP 主题 functions.php 中创建函数,该函数连接到 wp_ajax_wp_ajax_nopriv_ 动作挂钩。此函数将接收您的类别 ID 作为 $_POST 参数,并将在 WP_Query 中使用它来重新生成过滤后的帖子。

我知道最好和你分享代码,所以你可以在这里找到一个很好的例子https://rudrastyh.com/wordpress/ajax-post-filters.html

【讨论】:

  • 如何在不使用按钮和下拉选择操作的情况下做到这一点
  • 只需将$('#filter').submit(function(){ 方法替换为$('select').change(function(){ 方法即可。
  • 那么我应该在哪里使用 admin-ajax.php 文件中的基于 jQuery 的处理代码?现有代码的开头还是结尾?谢谢。
  • jQuery 处理代码(我想您的意思是 PHP 函数)适用于您当前的主题 functions.php 文件
  • 不,我的意思是您在教程中描述的 jquery 部分,(第 2 步。用于发送请求和接收结果数据的 jQuery 脚本)我应该将该代码放在哪里?
猜你喜欢
  • 2014-08-15
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-03-11
  • 1970-01-01
  • 1970-01-01
  • 2021-01-02
相关资源
最近更新 更多