Skip to content

TYPO3 CMS extension for showing person contacts with vCard download.

License

Notifications You must be signed in to change notification settings

t3brightside/personnel

Repository files navigation

Personnel

License Packagist Downloads Brightside

TYPO3 CMS extension for personnel list with vCard support. List of people from pages or individual records. Demo

Breaking Changes

v3.0.0 see the ChangeLog

Features

  • List of persons from pages
  • List of selected persons
  • Image crop
  • Sort by
  • Pagination with items per page and unique to the content element with paginatedprocessors
  • Disable from back end: images, vCard link, extra information
  • Social links with icons (LinkedIn, Xing, Twitter, GitHub, YouTube, Instagram)
  • Base templates for cards, list and table
  • Easy to add custom templates
  • Contact person/author records for pages and pagelist page types
  • Back end preview images

System requirements

  • TYPO3
  • fluid_styled_content
  • paginatedprocessors

Installation

  • composer req t3brightside/personnel or from TYPO3 extension repository personnel
  • Add static template
  • Include static template for Paginatedprocessors
  • Enable page types etc. in "Extension Configuration"

Usage

  • Create personnel records in a Page/Sysfolder
  • Add desired content element and point to the Page/Sysfolder or individual records

Add custom template

TypoScript Check the constant editor.

PageTS

TCEFORM.tt_content.tx_personnel_template.addItems {
  minilist = Mini List
}

Fluid Add new section wheres IF condition determines template name 'minilist' to: Resources/Private/Templates/Personnel.html

<f:if condition="{data.tx_personnel_template} == minilist">
  <f:for each="{personnel}" as="person" iteration="iterator">
    <f:render partial="Minilist" arguments="{_all}"/>
  </f:for>
</f:if>

Create new partial: Resources/Private/Partials/Minilist.html

routeEnhancers

For the pagination routing check t3brightside/paginatedprocessors

PersonnelVcard:
  type: Simple
  limitToPages:
  routePath: '/{person}'
  defaults:
    tag: ''
  requirements:
    person: '[1-999]'
  _arguments:
    person: 'person'
  aspects:
    person:
      type: StaticRangeMapper
      start: '1'
      end: '999'
PageTypeSuffix:
  type: PageType
  map:
    vcard.vcf: 888

Development & maintenance

Brightside OÜ – TYPO3 development and hosting specialised web agency