browserwerk/bw_jobs

TYPO3 CMS 的职位板扩展。

安装数1,844

依赖项: 0

建议者: 0

安全性: 0

星标: 2

关注者: 1

分支: 0

公开问题: 0

类型:typo3-cms-extension

3.1.1 2024-03-07 14:29 UTC

README

BW Jobs 扩展允许您在 TYPO3 网站上管理和展示开放的职位。

功能

  • 可筛选的列表视图,具有分页功能
  • 列表视图和详细视图的独立插件
  • 可定制的预定义模板
  • 带有文档上传的应用表单
  • 结构化 JSON-LD 数据
  • 包含多种语言(英语和德语)

安装

  1. 使用 composer 安装扩展
  composer require browserwerk/bw_jobs
  1. 将 TypoScript 模板包含在模板模块中
  2. 将详细视图和列表视图插件添加到两个不同的页面
  3. 根据您的喜好配置扩展(请参阅以下可用的常量)
  4. 将以下路由增强器添加到您的站点配置中
routeEnhancers:
  JobsDetail:
    type: Extbase
    limitToPages: [000] # Change this to the pid containing the detail view plugin
    extension: BwJobs
    plugin: Detail
    routes:
      - routePath: '/'
        _controller: 'Frontend::show'
      - routePath: '/{job_position_title}'
        _controller: 'Frontend::show'
        _arguments:
          job_position_title: jobPosition
      - routePath: '/{job_position_title}/apply'
        _controller: 'Frontend::apply'
        _arguments:
          job_position_title: jobPosition
    aspects:
      job_position_title:
        type: PersistedAliasMapper
        tableName: tx_bwjobs_domain_model_jobposition
        routeFieldName: slug
  JobsApi:
    type: Extbase
    extension: BwJobs
    plugin: Api
    routes:
      - routePath: '/api/jobPositions'
        _controller: 'Api::listJobPositions'

可用的 TypoScript 常量

plugin.tx_bwjobs_detail.settings

plugin.tx_bwjobs_list.settings

module.tx_bwjobs.settings

编辑器介绍

此扩展附带五种不同的记录类型

  • 职位
  • 就业类型
  • 联系人
  • 位置
  • 类别

要创建一个 职位,首先创建一个 位置 并将其分配给一个或多个 联系人。然后,创建一个 就业类型。最后,创建一个 职位 并将其创建的 位置 以及 就业类型 分配给它。您还可以选择创建一个 类别 并将其分配给 职位

翻译

默认情况下提供以下翻译

  • 英语
  • 德语

欢迎为添加其他语言做出贡献。

网站地图

添加以下 TypoScript 输出 TYPO3 网站地图中的职位

plugin.tx_seo {
    config {
        xmlSitemap {
            sitemaps {
                jobs {
                    provider = TYPO3\CMS\Seo\XmlSitemap\RecordsXmlSitemapDataProvider
                    config {
                        table = tx_bwjobs_domain_model_jobposition
                        sortField = date_posted
                        lastModifiedField = tstamp
                        pid = 000 # Change this to the pid storing the job positions (same as storagePid)
                        url {
                            pageId = 000 # Change this to the pid containing the detail view plugin
                            fieldToParameterMap {
                                uid = tx_bwjobs_detail[jobPosition]
                            }
                            additionalGetParameters {
                                tx_bwjobs_detail.controller = Frontend
                                tx_bwjobs_detail.action = show
                            }
                            useCacheHash = 1
                        }
                    }
                }
            }
        }
    }
}

结构化数据

此扩展为职位输出结构化 JSON-LD 数据。如果您想禁用它,则覆盖 显示 模板并从该模板的底部删除 bw:structuredData 视图助手。

覆盖 Fluid 模板

要覆盖扩展使用的默认 Fluid 模板,只需将以下 TypoScript 常量设置为所需的路径

# Detail view
plugin.tx_bwjobs_detail.view.templateRootPath = EXT:my_extension/Resources/Private/Templates/
plugin.tx_bwjobs_detail.view.partialRootPath = EXT:my_extension/Resources/Private/Partials/
plugin.tx_bwjobs_detail.view.layoutRootPath = EXT:my_extension/Resources/Private/Layouts/

# List view
plugin.tx_bwjobs_list.view.templateRootPath = EXT:my_extension/Resources/Private/Templates/
plugin.tx_bwjobs_list.view.partialRootPath = EXT:my_extension/Resources/Private/Partials/
plugin.tx_bwjobs_list.view.layoutRootPath = EXT:my_extension/Resources/Private/Layouts/

这将不会完全禁用默认模板,它只是允许您从自己的扩展中覆盖它们。如果您想添加不止一个附加路径,请使用 plugin.tx_bwjobs_detail.viewplugin.tx_bwjobs_list.view 的 TypoScript 设置。

自定义默认样式

您可以从自己的样式表中覆盖以下 CSS 自定义属性

:root {
    /* This is the font size used as base by the custom styling from this extension */
    --bw-jobs-font-size--base: 16px;

    /* You can override these custom properties to change the colors */
    --bw-jobs-color--primary: var(--bs-primary);
    --bw-jobs-color--light: var(--bs-light);
}

请注意:由于使用了现代 CSS 功能,默认样式与 Internet Explorer 11 不兼容。

禁用默认样式

此扩展附带 Bootstrap 5 和一些额外的自定义样式。要禁用这些样式,请通过 TypoScript 取消包含

page.includeCSSLibs.bwJobsBootstrap >
page.includeCSS.bwJobs >

自定义电子邮件

要自定义此扩展发送的电子邮件,请将以下 TypoScript 常量设置为您的自定义扩展中所需的路径

确保这些文件存在于新的模板路径中

  • EmailToApplicant.html
  • EmailToApplicant.txt
  • EmailToContactPerson.html
  • EmailToContactPerson.txt

您可以从 Resources/Private/Templates/Email 中复制这些文件。

新的布局路径可以保持为空,但您也可以在那里添加自定义布局。

默认的应用表单配置为默认使用FluidEmail。如果您想更改此设置,请参阅以下自定义应用表单的说明。

自定义应用表单

您可以通过设置以下TypoScript常量来覆盖用于渲染应用表单的默认YAML,指向您自己的表单定义YAML。

请确保查看Resources/Private/Templates/Frontend/Apply.html中的默认模板,以了解哪些值是从Fluid内部动态设置的。

发现bug了吗?

如果您发现了bug,请创建一个问题,并详细说明重现步骤。

关于我们

Browserwerk开发个性化的企业网站和开源项目。构思、咨询和实施定制化的在线和内联网解决方案是该机构的核心业务。短暂的项目时间和快速发布周期在这里发挥着决定性作用。该机构支持全欧洲的中型和全球运营公司进行业务流程数字化。项目使用敏捷工作方法和最佳实践。通过从不同角度分享问题,客户成为长期合作伙伴。

更多信息请访问我们的网站

图标由Heroicons提供。