【问题标题】:WP Job Manager - Show number of all search results foundWP Job Manager - 显示找到的所有搜索结果的数量
【发布时间】:2016-01-13 14:17:52
【问题描述】:

我正在使用 Wordpress 插件“WP Job Manager”(https://wordpress.org/plugins/wp-job-manager/),我想显示一些所有搜索结果。

目前我使用 jQuery 来执行此操作,但它只计算页面上当前显示的结果数:

$(".job_listing").length;

如何获取找到的工作总数?

【问题讨论】:

  • 您必须编辑显示职位列表的 PHP 模板。

标签: javascript php wordpress


【解决方案1】:

在你的 javascript 中试试这个 sn-p:

$('div.job_listings').on('updated_results', (function(_this) {
    return function(event, results) {
        alert( results.found );
    };
})(this));

基本上,我们在ajax-filters.js 的第 154 行的 WP Job Manager 插件中触发了“updated_results”js 事件。

您需要稍微编辑一下这个 js。我不确定你想对这个值做什么,所以我只是在屏幕上提醒它。

然后在您的主题functions.php 或自定义插件中添加此代码。在这里,我们连接到class-wp-job-manager-ajax.php 第 205 行的“job_manager_get_listings_result”过滤器。我们正在从 WP Job Manager 创建的 WP_Query 对象创建“found”参数。

function result_add_jobs_total_count($result, $jobs){
    $result[ 'found' ] = $jobs->found_posts == 0 ? 0 : $jobs->found_posts;
    return $result;
}
add_filter( 'job_manager_get_listings_result', 'result_add_jobs_total_count', 10, 2 );

我从http://themeforest.net/item/listify-wordpress-directory-theme/9602611 的 Listify 主题中提取了这些 sn-ps,并对其进行了一些修改。

【讨论】:

  • 非常感谢您的回复,但不幸的是这对我不起作用,我收到以下错误:Uncaught TypeError: Cannot read property 'found' of undefined (anonymous function) @ main.js: 262 m.event.dispatch @ jquery.js:3 r.handle @ jquery.js:3 这是一个很棒的发现,它用于 Listify 主题,但我认为结果的数量只是页面上显示的列表的数量搜索结果页没有分页。
  • 不,Listify 确实使用分页,它显示的数字是总计数。我可能有问题,请给我几分钟时间检查
  • @Mike 我错过了一些必要的 php 代码。这适用于默认的 2015 主题。
  • 感谢您的快速回复。不幸的是,这仍然对我不起作用,但由于您的 php 代码,我找到了另一种使其工作的方法:) 我稍后会发布解决方案:]
  • 不用担心,很高兴为您提供帮助。 :)
猜你喜欢
  • 2017-10-11
  • 1970-01-01
  • 1970-01-01
  • 2019-12-26
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-09-29
相关资源
最近更新 更多