Klaus

Add pagination to TYPO3 default File Links Content Element

 Bonn, GermanyFri, 20 Apr 2018 01:19:46 +0200 
Ever wondered how to add a Fluid paginate widget to a non Extbase extension in TYPO3 #CMS? For example a core Content Element (CE) and fluid_styled_content? It is straight forward when you are familiar with TYPO3, but there was one not quite obvious workaround needed to make it complete. The following solution is tested in TYPO3 v9.1 and v9.2, but it is possible that there will be another solution in core in the future.

I have a TYPO3 default File Links [uploads] Content Element (CE) and wanted to output a collection from a folder with a lot of files. I was surprised, that there was no pagination available, but it is a fluid styled template, so it was easy to add a paginate widget.

Add a template override path to your Template constants:
# Add Fluid Styled Content template override path
styles.templates.templateRootPath = EXT:myext/Resources/Private/ContentTemplates/


Add to your ext Template setup following TypoScript to set an alternative template name for File Links CE. Also add a workaround for non-extbase elements like the File Links CE [uploads]. This is needed so that the Fluid paginate ViewHelper will also work. Otherwise you have pagination, but only results from the first page are shown, because no controller is executed.
##
# Customised TYPO3's File Links Content Element with pagination template.
#
# CType: uploads

# Use a customised fluid styled content template
tt_content.uploads.templateName = MyFilePagination

# Workaround to add functionality for non-extbase elements (https://forge.typo3.org/issues/79430)
tt_content.uploads.extbase {
    pluginName = filelist
    controllerName = filelist
    controllerExtensionName = myext
    controllerActionName = show
}


You can take the default template from typo3/sysext/fluid_styled_content/Resources/Private/Templates/Uploads.html and save it at typo3conf/ext/myext/Resources/Private/ContentTemplates/MyFilePagination.html. In your customised template add the Fluid paginate widget ViewHelper around the for ViewHelper and change the variable according:
<f:widget.paginate objects="{files}" as="paginatedFiles" configuration="{itemsPerPage: 10, insertAbove: 1, insertBelow: 1, maximumNumberOfLinks: 10}">
  <f:for each="{paginatedFiles}" as="file" iteration="fileIterator">


That's it. ;-)
Klaus

Drupal webform mail template override

 Wed, 18 Apr 2018 13:32:49 +0200 
The default #Drupal swiftmailer mail template override works something like this:
swiftmailer--[mymodule]--[mykey].html.twig

I was struggling how to configure a module which actually needed more than just module--key identifiers. For example when you have several Drupal webforms or even several handlers for one webform. It was not directly obvious how to access each handler, but actually it is quite simple:
swiftmailer--webform--[webform-node-id].html.twig
swiftmailer--webform--[webform-node-id]-[handler-id].html.twig


#CMS
Klaus

TYPO3 Neos 1.2 beta1

 Mon, 17 Nov 2014 11:15:31 +0100 last edited: Mon, 17 Nov 2014 11:16:07 +0100  
Finally a content dimension for translations.

#^News - TYPO3 Neos 1.2 Beta released - TYPO3 Neos
by Neos Team on November 14th, 2014
The first beta of TYPO3 Neos version 1.2 has been released for testing. The release first and foremost marks the introduction of translation in Neos. Secondly, a great amount of work has been put into enhancing the author experience with a broad range of features, improvements and fixes. Overall, t...

#CMS #Neos