hauerheinrich/hh-simple-job-posts

为列表/显示带有元数据和schema.org内容的职位发布添加插件。使用tt_address进行职位联系人和职位位置的存储。

资助包维护!
Paypal

安装: 3

依赖: 0

建议者: 0

安全: 0

星标: 1

关注者: 3

分支: 0

开放问题: 0

类型:typo3-cms-extension

4.1.6 2024-09-24 10:44 UTC

README

hh_simple_job_posts是一个TYPO3扩展。列出并显示包含schema.org内容(例如谷歌工作)的职位发布/职位报价,以及(如果已加载EXT:hh_seo)元标签。

可选

安装

... 像其他任何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}”。

可用事件

当注册到事件时,您可以始终访问触发事件的类。有关更多信息,请参阅下表中的“访问”列。

事件描述

连接到事件

要连接到事件,您需要在自定义扩展中注册一个事件监听器。所有您需要的是在您的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版