hauerheinrich / hh-simple-job-posts
为列表/显示带有元数据和schema.org内容的职位发布添加插件。使用tt_address进行职位联系人和职位位置的存储。
Requires
- friendsoftypo3/tt-address: ^7.0.0 || ^8.0.0 || ^9.0.0
- hauerheinrich/hh-tt-address-places: ^2.0.0
- typo3/cms-core: ^12.2.0
- typo3/cms-extbase: ^12.2.0
- typo3/cms-fluid: ^12.2.0
- typo3/cms-fluid-styled-content: ^12.2.0
- typo3/cms-frontend: ^12.2.0
Replaces
- hauer-heinrich/hh_simple_job_posts: 4.1.6
- typo3-ter/hh-simple-job-posts: 4.1.6
README
hh_simple_job_posts是一个TYPO3扩展。列出并显示包含schema.org内容(例如谷歌工作)的职位发布/职位报价,以及(如果已加载EXT:hh_seo)元标签。
可选
- [hh_seo] - 与以下内容兼容:https://github.com/Hauer-Heinrich/hh_seo - 如果要使用Partial/MetaTags.html,则为必需。
安装
... 像其他任何TYPO3扩展一样
- 在TYPO3后端树中创建一个文件夹来存储招聘组织的地址。然后在TYPO3常量编辑器中设置此文件夹的UID([plugin.tx_hhsimplejobposts.persistence.storagePidOrganizations])
- 在TYPO3后端树中创建一个文件夹来存储联系点地址的地址。然后在TYPO3常量编辑器中设置此文件夹的UID([plugin.tx_hhsimplejobposts.persistence.storagePidContactPointAddresses])
- 这两个文件夹可以是相同的
- 对于这两个文件夹中的地址,需要将字段'tx_extbase_type'设置为'place'!
- 在TYPO3后端树中创建一个文件夹来存储职位。
同一页面上显示职位列表和职位详情
如果提供职位发布的详情视图,则禁用此网站/页面上的所有其他内容
在此示例中,您应将"MainContent"替换为您自己的内容!TypoScript示例(https://github.com/Hauer-Heinrich/hh_simple_job_posts/blob/master/Configuration/TypoScript/example.typoscript)
[request && (traverse(request.getQueryParams(), 'tx_hhsimplejobposts_jobslist/jobpost') > 0 || traverse(request.getQueryParams(), 'tx_hhsimplejobposts_jobsdetail/jobpost') > 0)]
### In our current opinion better solution:
### Create a new colPos for your TYPO3 backendlayout
### and show this colpos only if the detail view of job-posts is given
### Example if you have in your main typoscript theme config something like the following 2 lines
### page.10.variables.MainContent =< styles.content.get
### page.10.variables.MainContent.select.where = colPos = 1
### then add this "[traverse ...] from above with this next 3 lines in it
# page.10.variables.MainContent >
# page.10.variables.MainContent =< styles.content.get
# page.10.variables.MainContent.select.where = colPos = 100
### alternative: most used way like for EXT:news
# lib.leftcontent = USER
# lib.leftcontent {
# userFunc = TYPO3\CMS\Extbase\Core\Bootstrap->run
# pluginName = Jobslist
# extensionName = HhSimpleJobPosts
# vendorName = HauerHeinrich
# controller = Jobpost
# action = show
# view < plugin.tx_hhsimplejobposts.view
# persistence < plugin.tx_hhsimplejobposts.persistence
# settings < plugin.tx_hhsimplejobposts.settings
# }
# page.10.variables.MainContent =< lib.leftcontent
[global]
通过TypoScript进行翻译
### Example:
plugin.tx_hhsimplejobposts {
_LOCAL_LANG {
de {
detail.maintasks = Deine Aufgaben
detail.profile = Dein Profil
detail.skills = Deine Skills
detail.weprovide = Das erwartet dich bei uns
detail.hiringOrganization = Oder per Post an:
detail.phone.before = Tel.:
detail.contact_point_email.before = Ihre Anfrage/Bewerbung senden Sie bitte an:
detail.contact_point_telephone.before = Tel.:
detail.contact_point_telephone.after =
}
}
}
功能
- 自动为sitemap生成配置(EXT:seo)
- 与EXT:hh_seo兼容
- 提供默认配置以生成漂亮的URL,例如Configuration/Typo3/sites/config.yaml中的示例
- 提供psr-14事件
准备字段以供json使用,例如json-ld / schema.org
RTE字段在Fluid模板中作为“jobpost.escapedRteFields”可用,例如“{jobpost.escapedRteFields.description}”。
可用事件
当注册到事件时,您可以始终访问触发事件的类。有关更多信息,请参阅下表中的“访问”列。
事件描述
- JobpostsListEvent:您可以为职位发布设置自己的内容,例如从外部API。示例用法请参阅扩展https://github.com/Hauer-Heinrich/hh_talentstorm_job_posts。添加自己的"useExternalApi"设置,请参阅:Configuration\TsConfig\Page\TCEFORM.typoscript
连接到事件
要连接到事件,您需要在自定义扩展中注册一个事件监听器。所有您需要的是在您的Configuration/Services.yaml文件中的一个条目
services: Vendor\Extension\EventListener\YourListener: tags: - name: event.listener identifier: 'your-self-choosen-identifier' method: 'yourMethodToConnectToEvent' event: HauerHeinrich\HhSimpleJobPosts\Event\JobpostsListEvent
编写您的EventListener
一个示例事件监听器可能如下所示
<?php declare(strict_types=1); namespace Vendor\Extension\EventListener; use HauerHeinrich\HhSimpleJobPosts\Event\JobpostsListEvent; /** * Use JobpostsListEvent from ext:hh_simple_job_posts */ class YourListener { /** * Do what you want... */ public function yourMethodToConnectToEvent(JobpostsListEvent $event): void { $values = $event->getAssignedValues(); // Do some stuff $event->setAssignedValues($values); } }
待办事项
- 改进README
版权声明
此存储库是TYPO3项目的一部分。TYPO3项目是免费软件;您可以在自由软件基金会发布的GNU通用公共许可证的条款和条件下重新分配和/或修改它;许可证的第2版,或者(根据您的选择)任何较新版本的许可证。
GNU通用公共许可证可在https://gnu.ac.cn/copyleft/gpl.html找到。
本存储库的发布是希望它可能有用,但不提供任何保证;甚至不保证其可销售性或适用于特定目的。有关更多详细信息,请参阅GNU通用公共许可证。
版权声明必须出现在存储库的所有副本中!
许可证
GNU通用公共许可证 第3版