搜索全站
建站 9 分钟阅读

WordPress 招聘站怎么做?职位管理与简历收集的完整流程

招聘站要同时服务 HR 和求职者。本文用 WP Job Manager 搭职位发布、列表筛选与简历投递流程,讲清附件收集、反垃圾与通知配置,附可用代码。

U
UFO_PF 2019-07-28 · 阅读 9 分钟
Wo 建站
阅读提示
本文约 3,473 字,预计阅读 9 分钟。文中命令与配置均经过实测,可直接参考执行。

引言:职位发出去了,简历却散落在三个邮箱里

企业自建招聘站(尤其是中小企业、园区、行业协会)最常见的混乱是:HR 在后台发职位,求职者看到一个”联系我们”邮箱,简历附件发到公司公共邮箱、HR 私人邮箱、甚至微信里。三个月后想复盘”哪个渠道来的人质量高”,完全无从查起。

招聘站的本质是一条双向表单流程:一端是结构化的职位(有地点、薪资、职能、经验要求),另一端是结构化的投递(简历文件 + 关键字段)。两端都必须落库并且能关联,否则后续的一切筛选、统计、跟进都做不了。WordPress 生态里完成这件事最成熟的方案是 WP Job Manager,它本身就是专门为”前台投稿 + 后台审核 + 列表筛选”设计的。

原理分析:招聘站的四段流程

环节 参与者 关键需求 常见缺陷
职位发布 HR 字段固定、可预览、可过期 用文章代替,无结构化
职位列表 求职者 按职能/城市/薪资筛选 只有长列表,无筛选
简历投递 求职者 附件上传 + 少量字段 只留邮箱,无附件
筛选跟进 HR 后台可查、可标记状态 邮件里翻,无法协作

关键点是职位要有自动过期机制。招聘信息时效性极强,招到人了职位还挂着,求职者投了才发现岗位已关闭,这是最伤品牌的行为。WP Job Manager 自带过期逻辑,这也是它比”用文章发职位”强的地方。

保姆级实操

步骤 1:装插件并放置核心页面

装 WP Job Manager,启用后按向导创建三个页面:职位列表页(放 [jobs] 短代码)、发布职位页(放 [submit_job_form])、职位管理页(放 [job_dashboard])。这三个短代码就是整套系统的骨架。

步骤 2:配置发布方式

在”职位列表 → 设置”里决定是否需要前台登录、是否需要审核后发布。对内招(只发自己公司职位)建议关闭前台投稿,全部后台发布;对行业平台才开启前台投稿 + 审核。

步骤 3:加自定义字段

默认字段不够用,用 submit_job_form_fields 过滤器加薪资、经验要求等字段:

add_filter( 'submit_job_form_fields', function ( $fields ) {
    $fields['job']['job_salary'] = array(
        'label'       => '薪资范围',
        'type'        => 'text',
        'required'    => false,
        'placeholder' => '如 15k-25k · 13薪',
        'priority'    => 5,
    );
    $fields['job']['job_experience'] = array(
        'label'    => '经验要求',
        'type'     => 'select',
        'required' => false,
        'options'  => array( '' => '不限', 'fresh' => '应届生', '1-3' => '1-3 年', '3-5' => '3-5 年', '5+' => '5 年以上' ),
        'priority' => 6,
    );
    return $fields;
} );

字段组名 job 是默认分组,company 是另外一组(公司信息)。加完字段后记得在前台模板里用 get_post_meta( get_the_ID(), '_job_salary', true ) 取值输出。

步骤 4:简历投递的两种方式

方式一:职位里填 application 邮箱,投递走邮件(简单但不可查);方式二:装官方的 WP Job Manager – Applications 扩展,投递成为后台可管理的条目,支持附件、状态标记和备注。只要招聘量超过每月 20 份简历,就必须用方式二。

步骤 5:附件上传的类型与大小限制

WordPress 默认不允许上传 doc / pdf 之外的很多格式,而简历常见为 PDF 和 docx。用 upload_mimes 过滤器放开,并限制大小:

add_filter( 'upload_mimes', function ( $mimes ) {
    $mimes['pdf']  = 'application/pdf';
    $mimes['doc']  = 'application/msword';
    $mimes['docx'] = 'application/vnd.openxmlformats-officedocument.wordprocessingml.document';
    return $mimes;
} );

add_filter( 'upload_size_limit', function () {
    return 5 * 1024 * 1024; // 5MB
} );

同时把上传目录设为不可执行 PHP(很多主机默认已配),避免上传漏洞。

步骤 6:投递成功后立刻通知双方

挂 job_manager_job_submitted 处理职位发布,投递侧则用 Applications 扩展自带的通知。岗位侧示例:

add_action( 'job_manager_job_submitted', function ( $job_id ) {
    $title   = get_the_title( $job_id );
    $company = get_post_meta( $job_id, '_company_name', true );
    wp_mail(
        get_option( 'admin_email' ),
        '新职位待审核:' . $title,
        sprintf( "职位:%s\n公司:%s\n后台:%s", $title, $company, admin_url( 'post.php?post=' . $job_id . '&action=edit' ) )
    );
} );

步骤 7:反垃圾

前台投稿必须加验证码(reCAPTCHA 或 hCaptcha)和”审核后发布”。另外把职位过期天数设为 30 天,到期自动转为草稿,避免僵尸职位堆积拉低整站质量。

常见踩坑

  1. 用普通文章发职位:没有过期机制,也没有职能/城市字段,求职者无法筛选。
  2. 投递只留邮箱:简历散落各处,无法统计与协作,也无法标记面试状态。
  3. 没放开 docx 上传类型:求职者上传失败直接放弃投递,且不会告诉你原因。
  4. 附件不限制大小:收到 50MB 的作品集压缩包,把主机磁盘塞满。
  5. 前台投稿不加验证码:招聘站是垃圾外链的重灾区,一周能收几百条虚假职位。
  6. 忘了过滤上传目录的 PHP 执行:上传漏洞会导致整站被控制,务必确认 uploads 目录不解析 PHP。
  7. 案例:某产业园招聘站的”简历黑洞”:该站 20 多家企业发布职位,投递统一走一个公共邮箱,半年攒了 1400 封简历邮件,HR 只能靠搜索找人,重复联系、漏联系频发。改造为 Applications 扩展后,投递变成后台条目,可按职位筛选、标记”待筛选/面试/录用”,招聘周期平均缩短 9 天。

总结

招聘站是否合格,看三个指标:职位是否 100% 带结构化字段(城市、职能、薪资)、投递是否 100% 落库可查、HR 是否能在后台标记跟进状态。行动清单:先用 WP Job Manager 建三个核心页面,再用 submit_job_form_fields 补齐薪资与经验字段,然后装 Applications 扩展让投递落库并放开 docx 上传,最后加验证码、审核机制和 30 天自动过期。这套流程跑通后,招聘站才真正替代掉邮箱。投递表单的邮件通知要配好认证,见 外贸站邮件营销 EDM 接入;如果站点还要承载商家入驻与付费,可参考 黄页商家目录站。

U
UFO_PF作者

专注 WordPress 生态的实战作者,内容以「可复制、可验证」为第一原则。

留下你的想法

邮箱地址不会被公开。带 * 的为必填项。