News system

Extension key

news

Package name

georgringer/news

Version

main

Language

en

Author

Georg Ringer & Contributors

License

This document is published under the Open Publication License.

Rendered

Mon, 19 May 2025 19:07:14 +0000


This extension implements a versatile news system based on Extbase & Fluid and uses the latest technologies provided by TYPO3 CMS.


Quick start

A quick introduction in how to use this extension.

Introduction

Introduction to the extension news, general information.

Editors manual

Learn how to use the news administration module, how to configure the plugin and how to create news records, tags and categories.

Tutorials

Tutorials and snippets for many frequent use cases.

Administration

Install or upgrade EXT:news, learn how to migrate from EXT:tt_news to news.

Reference

In-depth reference about certain aspects of this extension: TypoScript, TSconfig, ViewHelpers etc

Support

here are various ways to get support for EXT:news!

Addons

Various extensions improve EXT:news with additional features.

What does it do?

This extension implements a versatile news system based on the latest technologies which are provided by the TYPO3 CMS.

Best practise from the scratch

  • Based on Extbase & Fluid
  • Easy to use & understand for editors
  • Using as many elements from the Core as possible, e.g. FAL and sys categories
  • Checkbox "Top news" to flag important news
  • Built in support for content elements
  • Support for Open Graph and social platforms in default template

It is a highly customizable framework for chronological organized content - much more than just a news list!

– Quote from a user

Need Support?

There are various ways to get support for the news extension!

Stackoverflow

Please use Stackoverflow to get the best support and tag your question with typo3 and tx-news.

Slack

The dedicated channel #ext-news of the TYPO3 Slack Workspace can be used to get in direct contact with other users!

If you are not registered yet, follow this guide.

Personal support

If you need private or personal support, ask one of the developers for it.

Be aware that this support may not be free of charge!

Contribution

Contributions are essential to the success of open source projects, but are by no means limited to contributing code. Much more can be done, for example by improving documentation or answering questions on stackoverflow.com.

Contribution workflow

(1) Please always create an issue on Github before starting a change. This is very helpful to understand what kind of issue the pull request will solve and if your change will be accepted.

(2) Bug fixes: Please describe the type of bug you want to fix and provide feedback on how to reproduce the problem. We will only accept bug fixes if we can reproduce the problem.

(3) Features: Not every feature is relevant to the majority of the users. In addition: We do not want to make this extension more complicated in usability for a marginal feature. It helps to have a discussion about a new feature before opening a pull request.

(4) Please always create a pull request based on the updated release branch.

Sponsoring

This extension and the manual have been created in endless hours, mostly by a single person. It is actively maintained to cover all supported TYPO3 versions, user interface concepts and best practice approaches. If this extension helps you in any way to meet your business needs, please consider giving something back and find below some ideas to make me happy.

If you want to make sure this extension will be ready in time for the upcoming TYPO3 release, or you need a feature that isn't implemented yet, just let me know and we'll find a way to organize it!

Patreon

Support me on patreon.com and get access to additional extensions and snippets as a reward.

PayPal

Support me by a donation on paypal.com. It is just one click away.

Amazon Wishlist

If you would like to send me a small gift - feel free to choose from my Amazon Wishlist where I have collected some smaller and medium wishes that wait to be sponsored by someone :-)

Let's have a coffee

If you're in the region of Linz, just let me know. I'm always looking forward to meeting new and known faces and to talk about various topics.

I also attend meetings of the TYPO3 Usergroup Austria.

Quick installation

In a composer-based TYPO3 installation you can install the extension EXT:news via composer:

composer require georgringer/news
Copied!

In TYPO3 installations above version 11.5 the extension will be automatically installed. You do not have to activate it manually.

If you are using an older version of TYPO3 or have a legacy installation without composer, have a look at the Extended installation chapter.

Update the database scheme

Open your TYPO3 backend with system maintainer permissions.

In the module menu to the left navigate to Admin Tools > Maintanance, then click on Analyze database and create all.

Clear all caches

In the same module Admin Tools > Maintanance you can also conveniently clear all caches by clicking the button Flush cache.

Quick configuration

Include TypoScript template

It is necessary to include at least the basic TypoScript provided by this extension.

Go module Web > Template and chose your root page. It should already contain a TypoScript template record. Switch to view Info/Modify and click on Edit the whole template record.

Switch to tab Includes and add the following templates from the list to the right: News (news). It is possible to include additional templates provided by the news extension depending on your use case. For example you can additionally chose News Styles Twitter Bootstrap V5 (news) to use templates for the css framework Bootstrap in version 5.

Read more about possible configurations via TypoScript in the Reference section.

Further reading

Create some initial content

Create news records

Before any news record can be shown in the frontend those need to be created.

  1. Go to the module Web > List
  2. Go to the "News Storage" Folder that you created in the first step.
  3. Use the icon in the topbar Create new record and select the entry News.
  4. Fill out all desired fields and click Save.

More information about the records can be found here: news record, category record, tag record.

Add plugins: display the news in the frontend

A plugin is used to render a defined selection of records in the frontend. Follow these steps to add a plugin respectively for detail and list view to a page:

Detail page

  1. Go to module Web > Page and to the previously created page "News display".
  2. Add a new content element and select the entry News article detail view.
    1. Save the plugin.

List page

  1. Go to module Web > Page and to the previously created page "News list".
  2. Add a new content element and select the entry News article list (incl. detail view)..
  3. Switch to the tab Plugin where you can define the plugins settings. The most important settings is Startingpoint.

    1. Fill the field Startingpoint by selecting the sysfolder you created in the beginning of the tutorial.
    2. Switch to tab Additional and fill the field PageId for single news display with the page you just created before.

    3. Save the plugin.

Read more about the plugin configuration in chapter Plugin.

Have a look at the frontend

Load the "News list" page in the frontend and you should now see the news records as output. A click on the title should show the news record on the detail page. You want to change the way the records are displayed? Have a look at the chapter Templating

Quick templating in Fluid

EXT:news is using Fluid as templating engine. If you are not experienced with Fluid yet you can read more about it in the chapter Changing & editing templates.

Copy the Fluid templates that you want to adjust to your sitepackage extension.

You find the original templates in EXT:news/Resources/Private/Templates/ and the partials in EXT:news/Resources/Private/Partials/. Never change these templates directly!

To override the standard news templates with your own you can use the TypoScript constants to set the paths:

TypoScript constants
plugin.tx_news {
   view {
      templateRootPath = EXT:mysitepackage/Resources/Private/Extensions/News/Templates/
      partialRootPath = EXT:mysitepackage/Resources/Private/Extensions/News/Partials/
      layoutRootPath = EXT:mysitepackage/Resources/Private/Extensions/News/Layouts/
   }
}
Copied!

Add these lines to the file EXT:mysitepackage/Configuration/TypoScript/constants.typoscript in your sitepackage.

EXT:news provides a couple of specific Fluid ViewHelpers. Of course all ViewHelpers provided by TYPO3 can be used as well.

In the tutorial section there are many templating examples.

Editors manual

News administration module

Use this module to create or edit news records, tags and categories.

List module

Advanced news editing, download, mass editing etc.

Plugin

Describes the plugins and how to configure them

Records

Lists all the fields of the various records

News administration module

The News Administration module is a simple backend module that enables you to create, edit and search for news records. It can also be used to create categories or tags.

Go module Web > News Administration. If it is not chosen yet, choose the folder that your news records are stored in.

Add a news record

Click the button Create new news record on the top of the News Administration module.

Fill in all necessary fields. In a standard setup only the title is a required field. Depending on your project there might be other required fields defined (for example at least on category chosen, author filled out etc..).

All required fields are marked in red and with an exclamation mark as is standard in TYPO3 backend forms.

When you are done, click the Save button.

If enabled by your integrator you are able to use the View button to preview your results. The integrator can follow this tutorial to enable the view button.

Depending on the settings of your project you might have to empty the cache before the news will be displayed in the list views. Your integrator can follow this tutorial, to automate the cache clearing.

Search for news record

Use the filter symbol on the top of the module to open the search. You can use multiple fields to filter the news.

Create a category

The category records are provided by the TYPO3 Core. They are however closely integrated into EXT:news. You can create a category by clicking the button Create a new category on the top of the News Administration module.

Fill in a title and possible a parent category and some other fields and click the Save button. Once you have created categories you can select them when editing news records.

You can also chose categories in the plugin to filter by categories. Or you can display a category menu.

Create a tag

You can create a tag by clicking the button Create a new tag on the top of the News Administration module. Fill in a title and click the Save button.

Once you created some tags you can add to your news records on editing them.

Support & Donate

You can find some information about how to support the main author of this extension on this page. Click the Support & Donate button on the top right of the module.

List module

You can also use the List module to create and edit news records. The choice depends on what modules you have permissions to use, your personal experience or choice.

The List module is more powerful then then the News Administration module in some aspects, however it might be less tailored to the specific use case. This depends on how the project was set up.

Create a news storage folder

News records are usually stored in pages of the type folder. A folder itself cannot be displayed in the frontend. Its content can however be displayed on other pages through a plugin or TypoScript configuration.

Create a page of type folder by dragging a the folder symbol on top of the page tree into the desired position. Then give it a name and enable the folder in the context menu.

The folder can be displayed with a certain symbol such that folders containing news can be easily recognized.

Open the page properties by choosing Edit from the context menu.

Then go to the field Behaviour > Contains Plugin and chose News. After saving the folder record the symbol of the folder changes. If this field is not visible to you, you might lack permissions. In this case an administrator needs to set the field.

Add the first news record to a new folder

When there is no news record found in the folder yet, the table News is not visible yet. In that case click the plus button Create a new record on the top left of the list module area.

Chose News system > News from the list. Edit and save the news record as usual. The same strategy can be used to add News system > Tags and News system > Tags.

Add subsequent news records to a folder

When a folder contains at least one news record it displays a table called News in the list module.

At the top of this table you can find the New record button. Click this button to create a news record directly.

Edit a news record

At the right of each listed news record you can edit, hide / unhide or delete a record by clicking the corresponding button. By clicking on the icon of the news you can also find a context menu with more options.

Download news as CSV or JSON

Starting with TYPO3 version 11 you can conveniently download all or a selection of news records to a comma-separated (CSV) file format that can be easily imported into excel. Click the Download button on the top right of the news table in the list module, make your choice click Download.

Mass editing

Mass editing can come handy when you want to change many news records at once. The process differs between TYPO3 11.5 and older versions however.

Read the chapter on mass editing in the T YPO3 editors manual and chose the version of TYPO3 you are using from the top left version chooser.

Plugin

The news plugin is used to output a defined list of records.

It can be added to create a content element with the type Plugin and by selecting the plugin type News system.

The available actions are:

List

The list action displays a list of defined records. The filters can be defined either in the plugin or by using TypoScript and are described here.

2 different list modes are available.

List view

If a plugin is configured to show this implementation of the list action, it will change its behaviour if the URL contains a link to a detail action! If this is fulfilled, the detail action will be shown instead of the list action.

List view (without overloading detail view)

The described behaviour of the first implementation might not be desired all the time. A typical example is to show a list view in the sidebar of a detail view page. If the above action would be used, the detail view would be shown in the sidebar too.

List of articles

Show a specific list of articles

Detail

There are 2 typical use cases for this action:

  • Use this action to show a full news record which is linked by a list view.
  • Provide a specific news record to output that one. This is very useful to embed a news record e.g. in a newsletter.

Date menu

Use this action to show a list of news items grouped by the date. A typical output can look like:

2015
   January: 13 entries
   February: 9 entries
   March: 6 entries
   June: 4 entries
   ...
2014
   March: 81 entries
   April: 32 entries
   May: 1 entry

Copied!

If you define a specific page id in field PageId for list display (inside the tab Additional) and placing a news plugin with the type List there, it is possible to create a date filter.

Search form

Use this action to show a basic search inside news records.

Search result

The search result action is based on the list action including an additional filter provided by the search form.

Category menu

Use this action to show a list of categories. The categories are listed as tree.

If you define a specific page id in field PageId for list display (inside the tab "Additional") and placing a news plugin with the type List there, it is possible to create a category filter.

Tag list

Use this action to show a list of tags.

If you define a specific page id in field PageId for list display (inside the tab "Additional") and placing a news plugin with the type List there, it is possible to create a tag filter.

Records

EXT:news uses multiples records which are described here in detail.

News

News records to be displayed by the plugin. They can contain text, media (images, video, audio) or links to external sources.

Categories

Categories can be used to filter and sort news or to provide additional information.

Tags

Tags can be used to group news or provide additional information depending on the project setup.

News

The news record is obviously the most important record in this extension.

Add news record

News can be added in the News administration or List module.

By default there are three types of news records:

  • Standard news: These contain the content directly as text or content elements
  • Internal links: The content is stored on a standard typo3 page
  • External page: The content is found outside of the news installation

Standard news

In most projects when you create a new news record it will be automatically a standard news record. To confirm this check that the field Type is set to News. Standard news should usually have a text in the field Text field, some content elements in the Content elements tab and or some media in the Media tab.

News as external page

In some projects the text of the news itself is stored on an external page. The news can still be listed in the list view of the news plugin.

Creating an external page works just like an internal link. However you chose the type External page and enter the external link in the field Link to External URL.

News record

The visible fields depend on

  • The news type (see above)
  • Your user permissions
  • The configuration of your project
  • Third party extensions if applicable

Field:

Description:

Header

Required! Title of a news record

Top news

News records can be marked as top news if it is an important one. This field can be used for filtering and ordering.

Type

A news record can belong to one of the following types:

  • "News": Default news record
  • "Internal Page": The news record is linked to a regular page.
  • "External Page": The news record is linked to an external URL.

Some fields are only available for a special type.

Teaser

A teaser text which is shown in the list view and explains the content of the news record in some sentences. Depending on the configuration it is possible that not complete text is shown in the frontend but just a part of it.

Author name

Name of the author

Author email

Email address of the author

Date & Time

Date of the news record

Archive

Depending on the configuration this date is used to define if the record is still shown. It is e.g. possible to show only records with an archive date in the past or in the future.

Text

Main content of the news record.

Rich text editor disable

If set, the RTE is disabled and the field "Text" is shown as plain textarea.

Content elements

Add content elements to a news records. This field can be hidden by disabling the setting in Extension Configuration.

Link to this Page

Link to a regular page. This field is only shown with the type "Internal Page".

Link to External URL

Link to an external url. This field is only shown with the type "External Page".

Categories

Selection of categories the news record belongs to.

Tags

Add tags to the news record. Use the suggest wizard to search for existing tags and to insert new tags. The pid can be set in the Extension Configuration Define pid of tag records tagPid or in TsConfig.

Related News

Define news records which are related to the current one.

Keywords

Set keywords of this news record, separated with a comma (',')

Description

Define an additional description

Alternative title

If used, this field is used instead of the default tile.

Speaking URL path segment

This field can be used for various scenarios, e.g. in your realurl configuration to set up the URL to the news record.

Relations

Media file

This relation handles all media files you want to attach to a news record.

Field:

Description:

Show in list views

If set, this media element will be rendered in the list view (or where it is desired by changing the templates).

Title

Additional title

Alternative Title

The alternative title is e.g. used for the alt attribute of images

Link

Additional link

Caption

Caption

Video & audio file

TODO

Category

Categories are not mandatory but make it easier to structure news records. The category records themselves are supplied by the TYPO3 Core and might be shared with other extensions.

Add a category

Categories can be added in the News administration or List module.

Properties

Field

Description

Title

Title of the category. This field is required!

Parent category

The parent category is used to build a category tree. Therefore select the parent of the current category. If nothing selected, the category is used as a root category.

Image

Image of the category which can be shown next to a category title.

Description

Description of the category

Single-view page for news from this category

If a page is defined, it is used as page for displaying the news record. If a news record belongs to more than one category, only the 1 st category is checked for this field.

News category shortcut

Optional link of a news category to the given page

SEO: <title>-Tag

Can be used to set a special <title>-Tag for category pages. This must be enabled in the template:

<f:if condition="{categories.0.title}">
   <n:titleTag>
      <f:format.htmlentitiesDecode>{categories.0.title}</f:format.htmlentitiesDecode>
   </n:titleTag>
</f:if>
Copied!

SEO: Meta-Description

Can be used to set a special meta description for category pages. This must be enabled in the template:

<f:if condition="{categories.0.description}">
   <n:metaTag name="description" content="{categories.0.description -> f:format.stripTags()}" />
</f:if>
Copied!

SEO: Headline

Can be used to set a special headline for category pages, e.g. for H1 tag This must be enabled in the template:

<f:if condition="{categories.0.headline}">
   <f:then>
      <h1>{categories.0.headline}</h1>
   </f:then>
   <f:else>
      <h1>News Category</h1>
   </f:else>
</f:if>
Copied!

SEO: Text

Can be used to add additional content text for category pages This must be enabled in the template:

<f:if condition="{categories.0.text}">
   <f:format.html>{categories.0.text}</f:format.html>
</f:if>
Copied!

Tag

Tags are not mandatory but make it easier to structure news records.

Add a tag

Tags can be added in the News administration or List module.

Properties

Title

Title
Required
true

Title of the tag.

Hidden

Hidden

Hide a tag.

SEO: <title>-Tag

SEO: <title>-Tag

Can be used to set a special <title>-Tag for category pages. This must be enabled in the template:

<f:if condition="{tags.0.title}">
   <n:titleTag>
      <f:format.htmlentitiesDecode>{tags.0.title}</f:format.htmlentitiesDecode>
   </n:titleTag>
</f:if>
Copied!

SEO: Meta-Description

SEO: Meta-Description

Can be used to set a special meta description for category pages. This must be enabled in the template:

<f:if condition="{tags.0.description}">
   <n:metaTag name="description" content="{tags.0.description -> f:format.stripTags()}" />
</f:if>
Copied!

SEO: Headline

SEO: Headline

Can be used to set a special headline for category pages, e.g. for H1 tag This must be enabled in the template:

<f:if condition="{tags.0.headline}">
   <f:then>
      <h1>{tags.0.headline}</h1>
   </f:then>
   <f:else>
      <h1>News Category</h1>
   </f:else>
</f:if>
Copied!

SEO: Text

SEO: Text

Can be used to add additional content text for category pages This must be enabled in the template:

<f:if condition="{tags.0.text}">
   <f:format.html>{tags.0.text}</f:format.html>
</f:if>
Copied!

Tutorials

Best practice

Assorted small tutorials of how to achieve goals around EXT:news.

Templates

Tutorials with examples on how to use customized Fluid templates.

Extend News

In-depth tutorials for developers, who want to extend EXT:news with their own custom extensions.

External tutorials

A list of recommended external tutorials, some of them in German.

Best practice

SEO

Optimize EXT:news for display in search engines.

View Button

Display a View button on top of news records in the backend.

TSconfig code snippets

Code snippets to influence the behaviour of news record editing in the backend and the news administration module.

Routing

Use routing to generate user readable urls to news, categories, tags, paginized results etc

Breadcrumb menu

Display the current news title in the breadcrumb

RSS

Provide a RSS feed promoting your news

ICalendar feed

Provide an iCalendar feed

LinkHandler

Enable your editors to link to specific news from anywhere.

Limit content elements

Configure available content element types in news records.

Integrations with TypoScript

Configure available content element types in news records.

Cache clearing

Automatic cache clearing

Predefine values

Learn how to set default values, influence the choices of select fields etc.

Hide detail page

Avoid the detail page in the url and reuse the list page.

Infinite scroll

Ajax based pagination, also known as infinite and endless scrolling

SEO

This chapters covers all configurations which are relevant for search engine optimization regarding the news extension.

Page title for single news

EXT:news implements a custom pageTitleProvider \GeorgRinger\News\Seo\NewsTitleProvider which is called through the controller.

It can be configured using TypoScript:

plugin.tx_news.settings.detail {
   pageTitle = 1
   pageTitle {
      # Register alternative provider
      provider = GeorgRinger\News\Seo\NewsTitleProvider
      # Comma separated list of properties which should be checked, 1st value is used
      properties = teaser,title
   }
}
Copied!

It is also possible to set the page title through the template by using:

<n:titleTag>
   <f:format.htmlentitiesDecode>{newsItem.title}</f:format.htmlentitiesDecode>
</n:titleTag>
Copied!

Please disable the usage of the page title provider by using

plugin.tx_news.settings.detail.pageTitle = 0
Copied!

XML Sitemap

The sitemap includes links to all news records. This makes it easier for search engines to find all news records and to index those.

Depending on your requirements you can either use the simple sitemap provider from the Core or a custom one shipped with EXT:news.

Basic sitemap

The Core ships a basic sitemap configuration which can also be used for news records:

plugin.tx_seo.config {
    xmlSitemap {
        sitemaps {
            news {
                provider = TYPO3\CMS\Seo\XmlSitemap\RecordsXmlSitemapDataProvider
                config {
                    table = tx_news_domain_model_news
                    # exclude internal & external news
                    additionalWhere = {#type} NOT IN(1,2)
                    sortField = sorting
                    lastModifiedField = tstamp
                    changeFreqField = sitemap_changefreq
                    priorityField = sitemap_priority
                    pid = 26
                    recursive = 2
                    url {
                        pageId = 25
                        fieldToParameterMap {
                            uid = tx_news_pi1[news]
                        }

                        additionalGetParameters {
                            tx_news_pi1.controller = News
                            tx_news_pi1.action = detail
                        }
                    }
                }
            }
        }
    }
}
Copied!

This sitemap can be added in the site config so it has a nice url:

config/mysite/config.yaml
routeEnhancers:
  Sitemap:
    type: Simple
    routePath: 'sitemap/{sitemap}'
    aspects:
      sitemap:
        type: StaticValueMapper
        map:
          pages: pages
          news: news
  PageTypeSuffix:
    type: PageType
    default: '/'
    index: ''
    map:
      '/': 0
      sitemap.xml: 1533906435
Copied!

Extended sitemap

The \GeorgRinger\News\Seo\NewsXmlSitemapDataProvider provides the same feature set as
RecordsXmlSitemapDataProvider but with some additional ones on top:
- If you are using the feature to define the detail page through the field
Single-view page for news from this category of a sys_category you need to use a custom provider.
  • If you are need urls containing day, month or year information
  • Setting excludedTypes to exclude certain news types from the sitemap
  • Setting googleNews to load the news differently as required for Google News (newest news first and limit to last two days)
  • Setting sortDirection to get news sorted to your needs (ASC or DESC)

To enable the category detail page handling, checkout the setting useCategorySinglePid = 1 in the following full example:

plugin.tx_seo {
      ## enable next line to generate a Google News sitemap
      # view.templateRootPaths.191 = EXT:news/Resources/Private/Templates/News/

      config {
          xmlSitemap {
              sitemaps {
                  news {
                      provider = GeorgRinger\News\Seo\NewsXmlSitemapDataProvider
                      config {
                          # exclude internal & external news
                          excludedTypes = 1,2
                          additionalWhere =
                          ## enable these two lines to generate a Google News sitemap
                          # template = GoogleNews
                          # googleNews = 1

                          sortField = datetime
                          sortDirection = ASC
                          lastModifiedField = tstamp
                          pid = 218
                          recursive = 2
                          url {
                              pageId = 10
                              useCategorySinglePid = 1

                              hrDate = 0
                              hrDate {
                                  day = j
                                  month = n
                                  year = Y
                              }

                              fieldToParameterMap {
                                  uid = tx_news_pi1[news]
                              }

                              additionalGetParameters {
                                  tx_news_pi1.controller = News
                                  tx_news_pi1.action = detail
                              }
                          }
                      }
                  }
              }
          }
      }
  }
Copied!

Multiple Sitemaps

With TYPO3 10 it is possible to define multiple sitemaps. This can be used to define a normal sitemap and one for google news. This example adds another sitemap for the google news and defines a new type.

plugin.tx_seo {
   config {
      xmlSitemap {
         sitemaps {
            news {
               provider = GeorgRinger\News\Seo\NewsXmlSitemapDataProvider
               config {
                  # ...
               }
            }
         }
      }
      googleNewsSitemap {
         sitemaps {
            news < plugin.tx_seo.config.xmlSitemap.sitemaps.news
            news {
               config {
                  template = EXT:news/Resources/Private/Templates/News/GoogleNews.xml
                  googleNews = 1
               }
            }
         }
      }
   }
}

seo_sitemap_news < seo_sitemap
seo_sitemap_news {
   typeNum = 1533906436
   10.sitemapType = googleNewsSitemap
}
Copied!

This sitemap can be added in the site config so it has a nice url:

routeEnhancers:
  PageTypeSuffix:
    map:
      news_sitemap.xml: 1533906436
Copied!

Language menu on news detail pages

If a language menu is rendered on a detail page and the languages are configured to use a strict mode, the following snippet helps you to setup a proper menu. If no translation exists, the property available is set to false - just as if the current page is not translated.

10 = language-menu
10 {
   as = languageMenu
   addQueryString = 1
}

11 = disable-language-menu
# comma separated list of language menu names
11.menus = languageMenu
Copied!

See also chapter LanguageMenuProcessor.

Hreflang on news detail pages

If using languages with the language mode strict, the hreflang tag must only be generated if the according news record is translated as well!

EXT:news reduces the rendered hreflang attributes by using this event and checking the availability of the records.

Check availability in Fluid templates

If you are building a language menu and want to check if the news record is available, you can use the ViewHelper <n:check.pageAvailableInLanguage language="{languageId}">. A full example can look like this:

<ul>
    <f:for each="{LanguageMenu}" as="item">
        <f:if condition="{item.available}">
            <n:check.pageAvailableInLanguage language="{item.languageId}">
                <li class="language-switch {f:if(condition:item.active, then:'active')}">
                    <a href="{item.link}">{item.navigationTitle}</a>
                </li>
            </n:check.pageAvailableInLanguage>
        </f:if>
    </f:for>
</ul>
Copied!

Robots: allow indexing of news records, but set 'noindex' to the detail page

By default, the detail page will be listed in the SEO sitemap. But in most cases, you don't want the page itself to be indexed by search engines (means: without a news record to be shown by the plugin).

If you just disable Index this page (no_index) in the page properties, the robots meta tag with noindex value will also be applied to the news records.

Solution: You can use the following TypoScript condition to allow search engines to index the page again, if a news record is rendered:

[request && traverse(request.getQueryParams(), 'tx_news_pi1/news') > 0]
    page.meta.robots = index,follow
    page.meta.robots.replace = 1
[END]
Copied!

An important part is the replace option. The MetaTag API of TYPO3 will then replace tags which were set before.

View button

It is possible to activate the View Button for news records.

This button is displayed on the top of the edit record page:

The View button

Add the following page TSconfig to your root page. It is recommended to use a site package extension, see Official Tutorial: Site Package for this purpose.

TCEMAIN.preview {
   tx_news_domain_model_news {
      previewPageId = 123
      useDefaultLanguageRecord = 0
      fieldToParameterMap {
         uid = tx_news_pi1[news_preview]
      }
      additionalGetParameters {
         tx_news_pi1.controller = News
         tx_news_pi1.action = detail
      }
   }
}
Copied!

By using the given example, a link will be generated which leads to the page with the id 123.

If a news plugin is placed on this page, the news article will be shown.

TSconfig code snippets

Page TSconfig from can be used to influence display and behaviour of fields and forms in the backend. The following examples are for your convenience only, they are possible with any record type in TYPO3. Read more about what you can do with page TSconfig in the TSconfig Reference.

You want to add your example here? Hit the "Edit on Github" button in the top right and make a pull request on Github.

Setting default values

It is possible to set default values for each field in the backend:

TCAdefaults.tx_news_domain_model_news {
    author = Jon Doe
    notes = Someone forgot to change the notes....
}
Copied!

Categories

Set a default category

Setting default values also works for categories:

TCAdefaults.tx_news_domain_model_news {
    categories = 9
}
Copied!

Limit categories to just one or several roots

In many installations categories are used for multiple purposes. If you want to use certain category trees only in certain page trees or only for your news records, you can set the following

New in version TYPO3 11.4

treeConfig.startingPoints was added with TYPO3 11.4

TCEFORM.tx_news_domain_model_news.categories.config.treeConfig.startingPoints = 8,42
Copied!

Deprecated since version TYPO3 11.4

Before TYPO3 11.4 it was only possible to set one value as category root:

TCEFORM.tx_news_domain_model_news.categories.config.treeConfig.rootUid = 42
Copied!

See also TSconfig Reference, treeConfig.

Reduce allowed content elements inside news records

By default, a news entry in TYPO3 allows you to add any available content element inside a news record as additional news content. However, sometimes the website design only allows specific content types to be displayed in a news entry. To restrict the allowed content elements, you can use TsConfig.

To do this, add the following code to your TsConfig:

TCEFORM.tt_content {
   CType {
      # Remove all CTypes from allowed additional news content field 'content_elements'
      removeItems = *

      # allow
      keepItems = mask_news_text, mask_news_video
   }
}
Copied!

By default, when you add a new content element inside a news record, TYPO3 sets the CType to the first found content element text. However, since we have restricted the allowed content types, this CType is not allowed here. To set the default CType to mask_news_text, which is one of the allowed content types, you can use the following code:

TCAdefaults {
   tt_content {
      CType = mask_news_text
      colPos = 1
   }
}
Copied!

Use Routing to rewrite URLs

This section will show you how you can rewrite the URLs for news using Routing Enhancers and Aspects. TYPO3 Explained has a chapter Introduction to routing that you can read if you are not familiar with the concept yet. You will no longer need third party extensions like RealURL or CoolUri to rewrite and beautify your URLs.

Quick start

This section explains in short how to rewrite the URLs for the detail page in a project where there is only one detail view page on the whole site and where rewriting of things like pagination is not desired or needed.

Open the configuration of the site. You should find it at /config/sites/<your_identifier>/config.yaml.

At the bottom of the file include the following:

/config/sites/<your_identifier>/config.yaml
routeEnhancers:
  News:
    type: Extbase
    limitToPages:
      - <uid of single page>
    extension: News
    plugin: Pi1
    routes:
      - routePath: '/{news-title}'
        _controller: 'News::detail'
        _arguments:
          news-title: news
    aspects:
      news-title:
        type: NewsTitle
Copied!

Save the file, delete all caches and try it out

Troubleshooting

  • Did you save the site configuration file?
  • Did you delete all caches?
  • In the format YAML indentation matters. The code above must be indentated exactly as shown, the keyword routeEnhancers must not be indeted.
  • The configuration above is limited to only one page containing a single view of news. Did you put the correct pid of page containing the news plugin displaying single news?

Detailed explaination and advanced use cases

How to rewrite URLs with news parameters

On setting up your page you should already have created a site configuration. You can do this in the backend module Site Managements > Sites.

Your site configuration will be stored in /config/sites/<your_identifier>/config.yaml. The following configurations have to be applied to this file.

Any URL parameters can be rewritten with the Routing Enhancers and Aspects. These are added manually in the config.yaml:

  1. Add a section routeEnhancers, if one does not already exist.
  2. Choose an unique identifier for your Routing Enhancer. It doesn't have to match any extension key.
  3. type: For news, the Extbase Plugin Enhancer ( Extbase) is used.
  4. extension: the extension key, converted to UpperCamelCase.
  5. plugin: the plugin name of news is just Pi1.
  6. After that you will configure individual routes and aspects depending on your use case.
/config/sites/<your_identifier>/config.yaml
routeEnhancers:
  News:
    type: Extbase
    extension: News
    plugin: Pi1
    # routes and aspects will follow here
Copied!

Using limitToPages

It is recommended to limit routeEnhancers to the pages where they are needed. This will speed up performance for building page routes of all other pages.

/config/sites/<your_identifier>/config.yaml
routeEnhancers:
  News:
    type: Extbase
    limitToPages:
      - 8
      - 10
      - 11
    extension: News
    plugin: Pi1
    # routes and aspects will follow here
Copied!

Multiple routeEnhancers for news

If you use the news extension for different purposes on the same website (for example news and events), you may want different URL paths for them (for example /article/ and /event/). It is possible to configure more than one routing enhancer for the news plugin on the same website.

Use limitToPages to assign the appropriate configuration to the desired pages.

/config/sites/<your_identifier>/config.yaml
routeEnhancers:
  News:
    type: Extbase
    limitToPages:
      - 8
      - 10
      - 11
    extension: News
    plugin: Pi1
    # etc.
  NewsEvents:
    type: Extbase
    limitToPages:
      - 17
      - 18
    extension: News
    plugin: Pi1
    # etc.
Copied!

About routes and aspects

In a nutshell:

  • routes will extend an existing route (means: your domain and page
    path) with arguments from GET parameters, like the following controller/action pair of the news detail view.
  • aspects can be used to modify these arguments. You could for
    example map the title (or better: the optimized path segment) of the current news. Different types of Mappers and Modifiers are available, depending on the case.
  1. URL of detail page without routing:
https://www.example.com/news/detail?tx_news_pi1[action]=detail&tx_news_pi1[controller]=News&tx_news_pi1[news]=5&cHash=
Copied!
  1. URL of detail page with routes:
https://www.example.com/news/detail/5?cHash=
Copied!
  1. URL of detail page with routes and aspects:
https://www.example.com/news/detail/title-of-news-article
Copied!

The following example will only provide routing for the detail view:

/config/sites/<your_identifier>/config.yaml
routeEnhancers:
  News:
    type: Extbase
    extension: News
    plugin: Pi1
    routes:
      - routePath: '/{news-title}'
        _controller: 'News::detail'
        _arguments:
          news-title: news
    aspects:
      news:
        type: NewsTitle
Copied!

Please note the placeholder {news-title}:

  1. First, you assign the value of the news parameter (tx_news_pi1[news]) in _arguments.
  2. Next, in routePath you add it to the existing route.
  3. Last, you use aspects to map the path_segment of the given argument.

Both routes and aspects are only available within the current Routing Enhancer.

The names of placeholders are freely selectable.

Common routeEnhancer configurations

Basic setup (including categories, tags and the RSS/Atom feed)

Prerequisites:

The plugins for List View and Detail View are on separate pages.

If you use the Category Menu or Tag List plugins to filter news records, their titles (slugs) are used.

The order of the config does matter! If you want to have categories+pagination, that configuration has to stand before the part for categpries alone

Result:

  • Detail view: https://www.example.com/news/detail/the-news-title
  • Pagination: https://www.example.com/news/page-2
  • Category filter: https://www.example.com/news/my-category
  • Category filter + pagination: https://www.example.com/news/my-category/page-2
  • Tag filter: https://www.example.com/news/my-tag
  • Tag filter + pagination: https://www.example.com/news/my-tag/page-2
/config/sites/<your_identifier>/config.yaml
routeEnhancers:
  News:
    type: Extbase
    extension: News
    plugin: Pi1
    routes:
      - routePath: '/'
        _controller: 'News::list'
      # Pagination
      - routePath: '/page-{page}'
        _controller: 'News::list'
        _arguments:
          page: 'currentPage'
      # Category + pagination:
      - routePath: '/{category-name}/page-{page}'
        _controller: 'News::list'
        _arguments:
          category-name: overwriteDemand/categories
          page: 'currentPage'
      # Category
      - routePath: '/{category-name}'
        _controller: 'News::list'
        _arguments:
          category-name: overwriteDemand/categories
      # Tagname + pagination
      - routePath: '/{tag-name}/page-{page}'
        _controller: 'News::list'
        _arguments:
          tag-name: overwriteDemand/tags
          page: 'currentPage'
      # Tagname
      - routePath: '/{tag-name}'
        _controller: 'News::list'
        _arguments:
          tag-name: overwriteDemand/tags
      # Detail
      - routePath: '/{news-title}'
        _controller: 'News::detail'
        _arguments:
          news-title: news
    defaultController: 'News::list'
    defaults:
      page: '0'
    aspects:
      news:
        type: NewsTitle
      page:
        type: StaticRangeMapper
        start: '1'
        end: '100'
      category-name:
        type: NewsCategory
      tag-name:
        type: NewsTag
  PageTypeSuffix:
    type: PageType
    map:
      'feed.xml': 9818
      'calendar.ical': 9819
Copied!

Localized pagination

Prerequisites:

The website provides several frontend languages.

Result:

  • English: https://www.example.com/news/page-2
  • Danish: https://www.example.com/da/news/side-2
  • German: https://www.example.com/de/news/seite-2
/config/sites/<your_identifier>/config.yaml
routeEnhancers:
  News:
    type: Extbase
    extension: News
    plugin: Pi1
    routes:
      - routePath: '/{page-label}-{page}'
        _controller: 'News::list'
        _arguments: {'page': 'currentPage'}
    defaultController: 'News::list'
    defaults:
      page: ''
    requirements:
      page: '\d+'
    aspects:
      page:
        type: StaticRangeMapper
        start: '1'
        end: '100'
      page-label:
        type: LocaleModifier
        default: 'page'
        localeMap:
          - locale: 'da_DK.*'
            value: 'side'
          - locale: 'de_DE.*'
            value: 'seite'
Copied!

Explanation:

The LocaleModifier aspect type will set a default value for the English language. You're then able to add as many localeMap configurations as you need for the page translations of your website. The value of locale refers to the value in your site configuration.

Human readable dates

Prerequisites:

For List View with a Date Menu plugin, to filter by date. Also includes configuration for the pagination.

Result:

  • https://www.example.com/news/2018/march
  • https://www.example.com/news/2018/march/page-2
/config/sites/<your_identifier>/config.yaml
routeEnhancers:
  DateMenu:
    type: Extbase
    extension: News
    plugin: Pi1
    routes:
       # Date year/month + pagination:
      - routePath: '/{date-year}/{date-month}/page-{page}'
        _controller: 'News::list'
        _arguments:
          date-month: 'overwriteDemand/month'
          date-year: 'overwriteDemand/year'
          page: 'currentPage'
      # Date year/month:
      - routePath: '/{date-year}/{date-month}'
        _controller: 'News::list'
        _arguments:
          date-month: 'overwriteDemand/month'
          date-year: 'overwriteDemand/year'
          page: 'currentPage'
      # Date year + pagination:
      - routePath: '/{date-year}/page-{page}'
        _controller: 'News::list'
        _arguments:
          date-year: 'overwriteDemand/year'
          page: 'currentPage'
      # Date year:
      - routePath: '/{date-year}'
        _controller: 'News::list'
        _arguments:
          date-month: 'overwriteDemand/month'
          date-year: 'overwriteDemand/year'
          page: 'currentPage'
      # Pagination:
      - routePath: '/'
        _controller: 'News::list'
      - routePath: '/page-{page}'
        _controller: 'News::list'
        _arguments:
          page: 'currentPage'
      - routePath: '/{news-title}'
        _controller: 'News::detail'
        _arguments:
          news-title: news
    defaultController: 'News::list'
    defaults:
      page: '0'
      date-month: ''
      date-year: ''
    requirements:
      date-month: '\d+'
      date-year: '\d+'
      page: '\d+'
    aspects:
      news:
        type: NewsTitle
      page:
        type: StaticRangeMapper
        start: '1'
        end: '25'
      date-month:
        type: StaticValueMapper
        map:
          january: '01'
          february: '02'
          march: '03'
          april: '04'
          may: '05'
          june: '06'
          july: '07'
          august: '08'
          september: '09'
          october: '10'
          november: '11'
          december: '12'
      date-year:
        type: StaticRangeMapper
        start: '2000'
        end: '2030'
Copied!

Explanation:

You will need a new routePath for every possible combination of arguments (pagination, month with/without pagination, ...).

Potential errors:

If you want 2018/march but get 2018/3 instead, compare your StaticValueMapper for months with your date arguments. Are you using different date formats (with/without leading zeros)?

You can either remove the leading zero in your aspects or adapt the TypoScript setting:

TypoScript setup
plugin.tx_news.settings.link {
    hrDate = 1
    hrDate {
        day = j
        // 'n' for 1 through 12. 'm' for 01 through 12.
        month = m
        year = Y
    }
}
Copied!

You can configure each argument (day/month/year) separately by using the configuration of PHP function date.

How to create URLs in PHP

The following snippet is a good example how an URL can be generated properly

PHP Code
protected function generateUrl(SiteInterface $site, int $recordId, int $detailPageId): string
    {
        $additionalQueryParams = [
            'tx_news_pi1' => [
                'action' => 'detail',
                'controller' => 'News',
                'news' => $recordId
            ]
        ];
        return (string)$site->getRouter()->generateUri(
            (string)$detailPageId,
            $additionalQueryParams
        );
    }
Copied!

References

RSS feed

Displaying a RSS feed is the same as a normal list view, just with a different template. Therefore you won't need any different configuration to e.g. excluded categories or configure the single view page.

The template for the RSS feed can be found in the file Resources/Private/Templates/News/List.xml. The "magic" which uses the List.xml template instead of the List.html is the following configuration:

plugin.tx_news.settings.format = xml
# If you want atom, use
plugin.tx_news.settings.format = atom
Copied!

RSS feed by TypoScript

A very simple way to generate the RSS feed is using plain TypoScript. All you need is to use the given TypoScript and adopt it to your needs.

pageNewsRSS = PAGE
pageNewsRSS {
   # Override the typeNum if you have more than one feed
   typeNum = {$plugin.tx_news.rss.channel.typeNum}
   config {
      disableAllHeaderCode = 1
      xhtml_cleaning = none
      admPanel = 0
      debug = 0
      disablePrefixComment = 1
      metaCharset = utf-8
      additionalHeaders.10.header = Content-Type:application/rss+xml;charset=utf-8
      absRefPrefix = {$plugin.tx_news.rss.channel.link}
      linkVars >
   }
   10 < tt_content.news_pi1.20
   10 {

      settings < plugin.tx_news.settings
      settings {
         categories = 9
         categoryConjunction = notor
         limit = 30
         detailPid = 25
         startingpoint = 24
         format = xml
         # Override the typeNum if you have more than one feed, must be the same as above!
         #list.rss.channel.typeNum = {$plugin.tx_news.rss.channel.typeNum}
      }
   }
}
Copied!

This example will show all news records which don't have the category with the uid 9 assigned and are saved on the page with uid 24. The single view page is the one with uid 25.

The RSS feed itself can be found with the link /?type=9818.

RSS feeds by using a normal plugin

Sometimes it is more convenient to generate the RSS feed using the normal plugin. The biggest advantage is that the complete configuration can be done within the backend without touching TypoScript.

To create a RSS feed based on a plugin follow this steps:

  1. Create a new page.
  2. Add the news plugin and define the configuration you need. E.g. startingpoint, page with the single view, ...
  3. Define a new TypoScript template and use a code like below. Very important: Use config.absRefPrefix = http://www.yourdomain.tld/ to produce absolute urls for links and images!

    page = PAGE
    page.10 < styles.content.get
    
    config {
       # deactivate Standard-Header
       disableAllHeaderCode = 1
       # no xhtml tags
       xhtml_cleaning = none
       admPanel = 0
    
       # define charset
       metaCharset = utf-8
       additionalHeaders.10.header = Content-Type:application/rss+xml;charset=utf-8
       disablePrefixComment = 1
       linkVars >
    }
    
    # set the format
    plugin.tx_news.settings.format = xml
    
    # delete content wrap
    tt_content.stdWrap >
    tt_content.stdWrap.editPanel = 0
    
    # Use custom template for List.html of EXT:fluid_styled_content
    lib.contentElement.templateRootPaths.5 = EXT:news/Resources/Private/Examples/Rss/fluid_styled_content/Templates
    Copied!

Automatic RSS feeds - based on plugins

There are usecases where many different list views are needed and each list view should also get its own RSS feed without any additional configuration.

The TypoScript code looks like this.

[getTSFE() && getTSFE().type == {$plugin.tx_news.rss.channel.typeNum}]
   lib.stdheader >
   tt_content.stdWrap.innerWrap >
   tt_content.stdWrap.wrap >
   tt_content.stdWrap.editPanel = 0
   # get away <div class="feEditAdvanced-firstWrapper" ...> if your logged into the backend
   styles.content.get.stdWrap >

   # Use custom template for List.html of EXT:fluid_styled_content
   lib.contentElement.templateRootPaths.5 = EXT:news/Resources/Private/Examples/Rss/fluid_styled_content/Templates

   pageNewsRSS = PAGE
   pageNewsRSS.typeNum = {$plugin.tx_news.rss.channel.typeNum}
   pageNewsRSS.10 < styles.content.get
   pageNewsRSS.10.select.where = colPos=0 AND CType = "news_pi1"
   pageNewsRSS.10.select {
      orderBy = sorting ASC
      max = 1
   }

   config {
      # deactivate Standard-Header
      disableAllHeaderCode = 1
      # no xhtml tags
      xhtml_cleaning = none
      admPanel = 0
      # define charset
      metaCharset = utf-8
      # you need an english locale to get correct rfc values for <lastBuildDate>, ...
      locale_all = en_EN
      # CMS 8 (adjust if using ATOM)
      additionalHeaders.10.header = Content-Type:application/xml;charset=utf-8
      disablePrefixComment = 1
      baseURL = {$plugin.tx_news.rss.channel.link}
      absRefPrefix = {$plugin.tx_news.rss.channel.link}
      linkVars >
   }

   # set the format
   plugin.tx_news.settings.format = xml
[END]
Copied!

Some explanations The page object pageNewsRSS will render only those content elements which are in colPos 0 and are a news plugin. Therefore all other content elements won't be rendered in the RSS feed.

Misc

RSS feed configuration

Don't forget to configure the RSS feed properly as the sample template won't fulfill your needs completely. Please look up the constants and change the mentioned settings.

plugin.tx_news.rss.channel {
   title = Dummy Title
   description =
   link = http://example.com
   language = en-gb
   copyright = TYPO3 News
   category =
   generator = TYPO3 EXT:news
   ttl =
}
Copied!

RSS feed site configuration

Don't forget to add the typeNum 9818 mapping to the PageType enhancer in the sites configuration. We prefer using feed.xml:

routeEnhancers:
  PageTypeSuffix:
    type: PageType
    default: .html
    map:
      calendar.ical: 9819
      feed.xml: 9818
      sitemap.xml: 1533906435
Copied!

Please also have a look at our Routing section, where you will find a section for a default configuration that takes this into account.

Troubleshooting

Entity 'nbsp' not defined

If you are getting this error, the easiest thing is to replace the character by using TypoScript:

pageNewsRSS.10.stdWrap.replacement {
   10  {
      search = &nbsp;
      replace = &#160;
   }
}
Copied!

LinkHandler

LinkHandler is the synonym for making it possible for editors to create links to custom records. Until 8 LTS a 3rd party extension has been required but since then it is integrated into the Core. Read at https://docs.typo3.org/c/typo3/cms-core/main/en-us/Changelog/8.6/Feature-79626-IntegrateRecordLinkHandler.html about the feature.

Configuration for the backend

PageTsConfig is used to configure the link browser in the backend.

Also have a look at TYPO3 documentation about the RecordLinkHandler at https://docs.typo3.org/m/typo3/reference-coreapi/12.4/en-us/ApiOverview/LinkHandling/Linkhandler/RecordLinkHandler.html#recordlinkhandler

EXT:my_sitepackage/Configuration/page.tsconfig
# tx_news is an identifier, don't change it after links have been created
TCEMAIN.linkHandler.tx_news {
   handler = TYPO3\CMS\Backend\LinkHandler\RecordLinkHandler
   # A translatable label can be used with LLL:EXT:theme/locallang.xml:label
   label = News
   configuration {
      table = tx_news_domain_model_news
      # Default storage pid
      storagePid = 123
      # Hide the page tree by setting it to 1
      hidePageTree = 0
   }
   scanAfter = page
}
Copied!

Configuration for the frontend

The links are now stored in the database with the syntax <a href="t3://record?identifier=tx_news&amp;uid=456">A link</a>. By using TypoScript, the link is transformed into an actual link.

EXT:my_sitepackage/Configuration/TypoScript/setup.typoscript
config.recordLinks.tx_news {
   typolink {
      # Detail page
      parameter = 123
      additionalParams.data = field:uid
      additionalParams.wrap = &tx_news_pi1[controller]=News&tx_news_pi1[action]=detail&tx_news_pi1[news]=|
   }
}
Copied!

Dynamic target page from category field single_pid

If the detail page is provided by the category, the following code can be used to retrieve the target page:

EXT:my_sitepackage/Configuration/TypoScript/setup.typoscript
config.recordLinks.tx_news {
    typolink {
        # Detail page
        parameter.cObject = USER
        parameter.cObject {
            userFunc = GeorgRinger\News\Service\LinkHandlerTargetPageService->process
            news.data = field:uid
            # Page used if no detail page is set in the category
            fallback = 123
        }
        additionalParams.data = field:uid
        additionalParams.wrap = &tx_news_pi1[controller]=News&tx_news_pi1[action]=detail&tx_news_pi1[news]=|
    }
}
Copied!

Limit content elements

If you want to limit the available content element types for news records, you have two options to configure that with Page TSConfig:

  1. TCEFORM:

    TCEFORM.tt_content.CType.removeItems = html,bullets,div,menu_subpages
    Copied!
  2. Backend Layout settings:

    mod.web_layout.BackendLayouts.1.config.backend_layout.rows.1.columns.1.allowed = textmedia,textpic
    TCAdefaults.tt_content.CType = textmedia
    Copied!

With the first line you change the allowed CTypes for the backend layout that applies to your news sysfolder. The second line sets the default CType to prevent an error with e.g. INVALID VALUE ("text")

Integrations with TypoScript

This page gives you same examples which you can use for integrating EXT:news into a website.

Add news by TypoScript

If EXT:news should be integrated by using TypoScript only, you can use this code snippet:

lib.news = USER
lib.news {
  userFunc = TYPO3\CMS\Extbase\Core\Bootstrap->run
  extensionName = News
  pluginName = Pi1
  vendorName = GeorgRinger

  settings < plugin.tx_news.settings
  settings {
   //categories = 49
   limit = 30
   detailPid = 31
   overrideFlexformSettingsIfEmpty := addToList(detailPid)
   startingpoint = 13
  }
}
Copied!

Now you can use the object lib.news.

List and detail on the same page using TypoScript

This is the example of how to display list and detail view on the same page.

# Basic plugin settings
lib.news = USER
lib.news {
      userFunc = TYPO3\CMS\Extbase\Core\Bootstrap->run
      pluginName = Pi1
      vendorName = GeorgRinger
      extensionName = News
      controller = News
      settings =< plugin.tx_news.settings
      persistence =< plugin.tx_news.persistence
      view =< plugin.tx_news.view
}
Copied!

Configure list and detail actions:

lib.news_list < lib.news
lib.news_list {
      # Use the line below to sue the sticky list
      # pluginName = NewsListSticky
}
lib.news_detail < lib.news
lib.news_detail {
      pluginName = NewsDetail
}
Copied!

Insert configured objects to wherever you want to use them, depending on the GET parameter of detail view:

[traverse(request.getQueryParams(), 'tx_news_pi1/news') > 0]
   page.10.marks.content < lib.news_detail
[else]
   page.10.marks.content < lib.news_list
[end]
Copied!

Add news to breadcrumb menu

This example has been moved to the Tutorial: Breadcrumb menus.

Add HTML to the header part in the detail view.

There might be a use case where you need to add specific code to the header part when the detail view is rendered. There are some possible ways to go.

Plain TypoScript

You could use a code like the following one to render e.g. the title of a news article inside a title-tag.

lib.newsTitle = RECORDS
lib.newsTitle {
  dontCheckPid = 1
        tables = tx_news_domain_model_news
        source.data = GP:tx_news_pi1|news
        source.intval = 1
        conf.tx_news_domain_model_news = TEXT
        conf.tx_news_domain_model_news {
            field = title
            htmlSpecialChars = 1
        }
        wrap = <h3>|</h3>
}
Copied!

If you want to show the categories of a news record, you can use the following code:

lib.categoryTitle = CONTENT
lib.categoryTitle {
    if.isTrue.data = GP:tx_news_pi1|news
    table = tx_news_domain_model_news
    select {
        uidInList.data = GP:tx_news_pi1|news
        pidInList = 123
        join = sys_category_record_mm ON tx_news_domain_model_news.uid = sys_category_record_mm.uid_foreign JOIN sys_category ON sys_category.uid = sys_category_record_mm.uid_local
        orderBy = sys_category.sorting
        max = 1
    }
    renderObj = TEXT
    renderObj {
        field = title
        htmlSpecialChars = 1
    }
}
Copied!

Usage of a ViewHelper

Use a viewHelper of EXT:news to write any code into the header part. The code could look like this

<n:headerData><script>var newsId = {newsItem.uid};</n:headerData>
Copied!

If you want to set the title tag, you can use a specific viewHelper:

<n:titleTag>{newsItem.title}</n:titleTag>
Copied!

Fallback in Detail view if no news found

If the detail view is called without a news uid given, an error is thrown (depending on the setting settings.errorHandling). If the desired behaviour is to show a different news record this can be set in the plugin with the field "singleNews".

The drawback would be that the alternative news record would be always the same. If this should be kind of dynamic, take a look at the given TypoScript snippet:

plugin.tx_news.settings {
   overrideFlexformSettingsIfEmpty = singleNews,cropMaxCharacters,dateField,timeRestriction,orderBy,orderDirection,backPid,listPid,startingpoint
   useStdWrap = singleNews

   singleNews.stdWrap.cObject = CONTENT
   singleNews.stdWrap.cObject {
      table = tx_news_domain_model_news
      select {
         max = 1
         orderBy = datetime desc
         pidInList = 3
      }
      renderObj = TEXT
      renderObj.field = uid
   }
}
Copied!

By using the field useStdWrap it is possible to call the full range of stdWrap on any setting. In this case the first news record from the page with uid 3 is used as fallback.

Show news items with same category in Detail.html

If you want to show in the detail action articles with the same category as the current one, you can use a snippet like this one:

Add this to the Detail.html which will pass the first category uid to the TypoScript object lib.tx_news.relatedByFirstCategory.

<f:if condition="{newsItem.firstCategory}">
   <f:cObject typoscriptObjectPath="lib.tx_news.relatedByFirstCategory">{newsItem.firstCategory.uid}</f:cObject>
</f:if>
Copied!
lib.tx_news.relatedByFirstCategory = USER
lib.tx_news.relatedByFirstCategory {
    userFunc = TYPO3\CMS\Extbase\Core\Bootstrap->run
    extensionName = News
    pluginName = NewsListSticky
    vendorName = GeorgRinger

    mvc {
        callDefaultActionIfActionCantBeResolved = 1
    }

    settings < plugin.tx_news.settings
    settings {
        relatedView = 1
        detailPid = 31
        useStdWrap := addToList(categories)
        categories.current = 1
        categoryConjunction = or
        overrideFlexformSettingsIfEmpty := addToList(detailPid)
        startingpoint = 78
    }
}
Copied!

Important is the line categories.current = 1 which will set the category configuration. Of course you need to adopt the snippet to your own needs, like setting the detailPid, startingPoint, ...

By defining a custom property like relatedView = 1 you can differ in the List.html if it is called by this snippet or by a regular plugin.

Show news items with same tags in Detail.html

Similar to the example above it is also possible to render news records with the same tags as the current one.

lib.tx_news.relatedByTags = USER
lib.tx_news.relatedByTags {
    userFunc = TYPO3\CMS\Extbase\Core\Bootstrap->run
    extensionName = News
    pluginName = NewsListSticky
    vendorName = GeorgRinger

    mvc {
        callDefaultActionIfActionCantBeResolved = 1
    }

    settings < plugin.tx_news.settings
    settings {
        # custom tag to use in List.html
        relatedView = 1
        # limit number of news
        limit = 6
#        startingpoint = 1

        useStdWrap := addToList(tags)
        tags.current = 1
        categoryConjunction = or
        overrideFlexformSettingsIfEmpty := addToList(detailPid)
        excludeAlreadyDisplayedNews = 1
    }
}
Copied!

In your overridden Detail.html template place the following code after displaying detailed news.

<f:if condition="{newsItem.tags}">
     <f:cObject typoscriptObjectPath="lib.tx_news.relatedByTags">{newsItem.tags->v:iterator.extract(key:'uid')->v:iterator.implode(glue: ',')}</f:cObject>
</f:if>
Copied!

The Fluid tags supply comma-separated list of tags' UIDs to the Typoscript code.

Either write custom ViewHelper or install vhs extension and add its namespace xmlns:v="http://typo3.org/ns/FluidTYPO3/Vhs/ViewHelpers" to the Detail.html template.

Show Category Menu with Typoscript

lib.categoryMenu = USER
lib.categoryMenu {
   userFunc = TYPO3\CMS\Extbase\Core\Bootstrap->run
   extensionName = News
   pluginName = CategoryList
   vendorName = GeorgRinger

   settings < plugin.tx_news.settings
   settings {
      listPid = 11
   }
}
Copied!

Hide detail page in URL

This tutorials covers the use case of having the following page structure:

.
└── Root
    ├── Home
    └── Blog <= news
Copied!

The URL of a news record should however be domain.tld/blog/news-record.

The page Blog typically contains not only the news plugin with the list view but also additional regular content elements which must not be rendered in the detail view.

The following TypoScript will make this possible:

# Override content rendering if the news record is requested
[traverse(request.getQueryParams(), 'tx_news_pi1/news') > 0]

    # typically having something like: page.10 = FLUIDTEMPLATE
    # optional to use a custom page template
    page.10.templateName = NewsDetail

    lib.dynamicContent >
    lib.dynamicContent = USER
    lib.dynamicContent {
        userFunc = TYPO3\CMS\Extbase\Core\Bootstrap->run
        extensionName = News
        pluginName = NewsDetail
        vendorName = GeorgRinger

        settings < plugin.tx_news.settings
        settings {
            # fully optional but can be used to react on it in
            # the news templates
            templateLayout = renderedByTs
        }
    }
[end]
Copied!

The page template NewsDetail.html must contain the following code to render the news detail view:

<f:cObject typoscriptObjectPath="lib.dynamicContent" />
Copied!

Some further explanations

  • The TypoScript condition will only be true if a news record path is in the URL
  • It overrides the used page template to be able to use a custom one
  • It set the variable lib.dynamicContent to contain the rendered news detail view
  • The dedicated page template can be fully adopted
  • If needed, the News detail template can be adopted by either use a settings variable or by providing a custom view path.

Ajax based pagination

Using ajax for the pagination can be achieved by using little bit of JavaScript

This tutorial uses the implementation of https://infinite-scroll.com/. Be aware that this code might require to buy a license!

Templating

The following template can be used as a replacement of Templates/News/List.html

<html xmlns:f="http://typo3.org/ns/TYPO3/CMS/Fluid/ViewHelpers"
      data-namespace-typo3-fluid="true">
<f:layout name="General" />

<f:section name="content">
    <!--TYPO3SEARCH_end-->
    <f:if condition="{news}">
        <f:then>
            <div class="news-list-view" id="news-container-{contentObjectData.uid}">
                <f:if condition="{settings.hidePagination}">
                    <f:then>
                        <f:for each="{news}" as="newsItem" iteration="iterator">
                            <f:render partial="List/Item" arguments="{newsItem: newsItem,settings:settings,iterator:iterator}" />
                        </f:for>
                    </f:then>
                    <f:else>
                        <f:if condition="{settings.list.paginate.insertAbove}">
                            <f:render partial="List/Pagination" arguments="{pagination: pagination.pagination, paginator: pagination.paginator}" />
                        </f:if>
                        <div class="articles" data-infinite-scroll='{ "path": ".f3-widget-paginator .next a", "append": ".article", "hideNav": ".f3-widget-paginator", "button": ".view-more-button", "scrollThreshold": false}'>
                            <f:for each="{pagination.paginator.paginatedItems}" as="newsItem" iteration="iterator">
                                <f:render partial="List/Item" arguments="{newsItem: newsItem,settings:settings,iterator:iterator}" />
                            </f:for>
                        </div>
                        <f:if condition="{settings.list.paginate.insertBelow}">
                            <f:render partial="List/Pagination" arguments="{pagination: pagination.pagination, paginator: pagination.paginator}" />
                        </f:if>
                    </f:else>
                </f:if>
            </div>
            <button class="view-more-button">View more</button>
        </f:then>
        <f:else>
            <div class="no-news-found">
                <f:translate key="list_nonewsfound" />
            </div>
        </f:else>
    </f:if>
    <!--TYPO3SEARCH_begin-->
</f:section>
</html>
Copied!

Configuration

All options are described at https://infinite-scroll.com/.

After the inclusion of the library the configuration can either take place in HTML directly

<div class="articles" data-infinite-scroll='{ "path": ".f3-widget-paginator .next a", "append": ".article", "hideNav": ".f3-widget-paginator"}'>
Copied!

or by using JavaScript

let elem = document.querySelector('.articles');
let infScroll = new InfiniteScroll( elem, {
  // options
  path: '.f3-widget-paginator .next a',
  append: '.article',
  hideNav: '.f3-widget-paginator'
});
Copied!

Cache clearing

Clearing the cache after changing news records

News has a built-in mechanism that takes care of clearing the cache after manipulation of News records.

When a list or detail view is rendered on a page, a cache tag in format tx_news_pid_PID (where PID is the uid of the news storage folder) is added. Each time a news record is edited, deleted or created, this cache entry is flushed. No additional cache configuration is needed if only the News plugins are used.

If you use other ways of displaying news records (e.g. an RSS feed created by TypoScript on a page without a News plugin), the cache is not flushed automatically.

This can be done automatically by using this command in the PageTsConfig: :

page TSconfig
TCEMAIN.clearCacheCmd = 123,456,789
Copied!

The code needs to be added to the sys folder where the news records are edited. Change the example page ids to the ones which should be cleared, e.g. a page with an RSS feed. You can use:

page TSconfig
TCEMAIN.clearCacheCmd = pages
Copied!

to clear the complete caches as well:

page TSconfig
TCEMAIN.clearCacheCmd = cacheTag:tx_news
Copied!

to clear all caches of pages on which the news plugins are used but beware of performance issues when news records are edited often.

Cache lifetime and auto publishing (by setting start date)

By default the cache of TYPO3 pages is invalidated every 24 hours. If you set a specific date and time for the news record to be published in the tab Access:

This news should be published at a certain date, 12:00

The news will be published next time the cache is deleted which is usual after midnight.

When you are using the Publish Date field you can use the following TypoScript setup configuration: config.cache

Let us assume you have a news plugin on page 42 and store your news records in a sysfolder with the uid 27 then the following setting will take the publish date of your news records into account when calculating the time when the cache should expire:

EXT:my_sitepackage/Configuration/TypoScript/setup.typoscript
config.cache.42 = tx_news_domain_model_news:27
Copied!

If there is more then one page containing a news plugin that might display the news you have to make a setting for each page:

EXT:my_sitepackage/Configuration/TypoScript/setup.typoscript
config.cache {
   42 = tx_news_domain_model_news:27
   43 = tx_news_domain_model_news:27
   365 = tx_news_domain_model_news:27
}
Copied!

If you use a news plugin on every page it is also possible to define the cache clearing for all pages:

EXT:my_sitepackage/Configuration/TypoScript/setup.typoscript
config.cache.all = tx_news_domain_model_news:27
Copied!

You can also define serveral tables for one page, for example to include categories:

EXT:my_sitepackage/Configuration/TypoScript/setup.typoscript
config.cache.42 = tx_news_domain_model_news:27,sys_category:26
Copied!

Predefine values

This section will show you how you can predefine values of fields in records in the TYPO3 backend using TSconfig.

Default values

If you want to use some default values, you can use this code inside the TSconfig (tab:Resources) of the folder containing the News records:

# Syntax is always TCAdefaults.<tablename>.<fieldname> = value
TCAdefaults {
   tx_news_domain_model_news {
      author =  John Doe
      categories = 9
   }
}

# Change the showinpreview default behaviour
TCAdefaults {
   sys_file_reference {
      showinpreview = 1
   }
}
Copied!

Select fields

If you want to preselect a value from a select field, you need to set the value of the option field as value. In this example the language with the uid 3 will be preselected:

TCAdefaults.tx_news_domain_model_news {
        sys_language_uid = 3
}
Copied!

If you want to remove an option from a select field you can take a look at this example which removes the option "Images" from the media selection dropdown:

TCEFORM.tx_news_domain_model_media {
   type.removeItems = 0
}
Copied!

Author name & email

By using the following code in the PageTsConig, the fields Author and Author Email are prefilled with the name and email address of the current backend user

tx_news.predefine.author  = 1
Copied!

Archive date

EXT:news allows you to use an improved syntax to predefine the archive date by using this Page TSconfig:

tx_news.predefine.archive = <value>
Copied!

As value you can use anything which can be interpreted by the php function strtotime. For example:

  • +1 day
  • next Monday
  • +1 week 2 days 4 hours

Add the characters counter below an input field

If you want to give a hint to editors so they know how many chars they can use for the Teaser field, you simply add this TSconfig to the folder:

TCEFORM.tx_news_domain_model_news.teaser.config.max = 200
Copied!

Modify flexform values

The flexform values can be modified by using TSconfig.

TCEFORM {
    tt_content {
        pi_flexform {
            news_pi1 {
                sDEF {
                  settings\.orderDirection.disabled = 1
                  settings\.orderBy.addItems {
                    teaser = teaser
                  }
                }
            }
        }
    }
}
Copied!

To identify the key of the tab (e.g. sDEF) and the field name (e.g. settings.orderBy) look either in the source code while checking the flexforms or look into the configuration itself which can be found at EXT:news/Configuration/FlexForms/flexform_news.xml.

ICalendar feed

Displaying an iCalendar feed is the same as a normal list view, just with a different template. Therefore you won't need any different configuration to e.g. excluded categories or configure the single view page.

The template for the iCalendar feed can be found in the file Resources/Private/Templates/News/List.ical. The "magic" which uses the List.ical template instead of the List.html is the following configuration:

plugin.tx_news.settings.format = ical
plugin.tx_news.settings.domain.data = getEnv:HTTP_HOST
plugin.tx_news.settings.useStdWrap = domain
Copied!

iCalendar feed by TypoScript

A very simple way to generate the iCalendar feed is using plain TypoScript. All you need is to use the given TypoScript and adopt it to your needs.

[getTSFE() && getTSFE().type == 9819]
config {
   disableAllHeaderCode = 1
   xhtml_cleaning = none
   admPanel = 0
   metaCharset = utf-8
   # For 7 LTS
   additionalHeaders = Content-Type:text/calendar;charset=utf-8
   # Since 8 LTS
   additionalHeaders.10.header = Content-Type:text/calendar;charset=utf-8
   disablePrefixComment = 1
   linkVars >
}
pageNewsICalendar = PAGE
pageNewsICalendar {
   typeNum = 9819
   10 < tt_content.news_pi1.20
   10 {
      settings < plugin.tx_news.settings
      settings {
         categories = 9
         categoryConjunction = notor
         limit = 30
         detailPid = 25
         startingpoint = 24
         format = ical
         domain.data = getEnv:HTTP_HOST
         useStdWrap = domain
      }
   }
}
[END]
Copied!

This example will show all news records which don't have the category with the uid 9 assigned and are saved on the page with uid 24.

The iCalendar feed itself can be found with the link /?type=9819.

iCalendar feeds by using a normal plugin

Sometimes it is more convenient to generate the iCalendar feed using the normal plugin. The biggest advantage is that the complete configuration can be done within the backend without touching TypoScript.

To create an ICalendar feed based on a plugin follow this steps:

  1. Create a new page.
  2. Add the news plugin and define the configuration you need. E.g. startingpoint, page with the single view, ...
  3. Define a new TypoScript template and use a code like below. Very important : Use config.absRefPrefix = http://www.yourdomain.tld/ to produce absolute urls for links and images!

    page = PAGE
    page.10 < styles.content.get
    
    page.config {
         # deactivate Standard-Header
        disableAllHeaderCode = 1
        # no xhtml tags
        xhtml_cleaning = none
        admPanel = 0
        metaCharset = utf-8
        # define charset
        additionalHeaders = Content-Type:text/calendar;charset=utf-8
        disablePrefixComment = 1
        linkVars >
    }
    
    # set the format
    plugin.tx_news.settings.format = ical
    # set the domain for real unique uids
    plugin.tx_news.settings.domain.data = getEnv:HTTP_HOST
    plugin.tx_news.settings.useStdWrap = domain
    
    # delete content wrap
    tt_content.stdWrap >
    Copied!

Important: If your output still contains HTML code, please check your TypoScript (especially from css_styled_content) as this HTML is produced there!

Automatic iCalendar feeds - based on plugins

There are use cases where many different list views are needed and each list view should also get its own iCalendar feed without any additional configuration.

The TypoScript code looks like this.

[getTSFE() && getTSFE().type == 9819]
   lib.stdheader >
   tt_content.stdWrap.innerWrap >
   tt_content.stdWrap.wrap >
   # get away <div class="feEditAdvanced-firstWrapper" ...> if your logged into the backend
   styles.content.get.stdWrap >

   pageNewsICalendar = PAGE
   pageNewsICalendar.typeNum = 9819
   pageNewsICalendar.10 < styles.content.get
   pageNewsICalendar.10.select.where = colPos=0 AND CType = "news_pi1"
   pageNewsICalendar.10.select {
      orderBy = sorting ASC
      max = 1
   }

   config {
      # deactivate Standard-Header
      disableAllHeaderCode = 1
      # no xhtml tags
      xhtml_cleaning = none
      admPanel = 0
      metaCharset = utf-8
      # you need an english locale to get correct rfc values for <lastBuildDate>, ...
      locale_all = en_EN
      # define charset
      additionalHeaders = Content-Type:text/calendar;charset=utf-8
      disablePrefixComment = 1
      linkVars >
   }

   # set the format
    plugin.tx_news.settings.format = ical
    # set the domain for real unique uids
    plugin.tx_news.settings.domain.data = getEnv:HTTP_HOST
    plugin.tx_news.settings.useStdWrap = domain

    # delete content wrap
    tt_content.stdWrap >
[END]
Copied!

Some explanations The page object pageNewsICalendar will render only those content elements which are in colPos 0 and are a news plugin. Therefore all other content elements won't be rendered in the iCalendar feed.

Misc

Extend News

Custom extension

All changes listed on this page should be done in a custom extension that extends EXT:news. Learn how to set it up.

Extend FlexForms

Influence the fields available in the plugins backend FlexForm.

Events

Extend the code of EXT:news by using PSR-14 Events.

Hooks

If there is no PSR-14 Event, try using a hook instead.

Demands

Learn how to filter and sort the displayed news using demands.

Data processing

Display news in menus using data processing

Add custom fields

Learn how to add custom fields to news records and extend the News model using the ProxyClassGenerator

Custom news types

Add additional custom news types

Extensions based on EXT:news

If you are using news records but need custom configuration and custom settings, you should think of creating a separate extension. This is really simple, just take a look at the following example.

Setup of the extension

As a demonstration, a new extension with the extension key news_filter will be created. The following files and its content is required.

ext_emconf.php

This file contains the basic information about its extension like name, version, author...

<?php

$EM_CONF[$_EXTKEY] = [
   'title' => 'News Filter',
   'description' => 'News filtering',
   'category' => 'fe',
   'author' => 'John Doe',
   'author_email' => 'john@doe.net',
   'author_company' => '',
   'state' => 'stable',
   'uploadfolder' => 0,
   'clearCacheOnLoad' => 1,
   'version' => '1.0.0',
   'constraints' => [
      'depends' => [
         'typo3' => '7.6.0-8.9.99',
      ],
      'conflicts' => [],
      'suggests' => [],
   ],
];
Copied!

ext_localconf.php

Create a basic plugin with one action called list.

<?php
defined('TYPO3') or die();

$boot = function () {
    \TYPO3\CMS\Extbase\Utility\ExtensionUtility::configurePlugin(
        'NewsFilter',
        'Filter',
        [
            \GeorgRinger\NewsFilter\Controller\FilterController::class => 'list',
        ]
    );
};

$boot();
unset($boot);
Copied!

Configuration/TCA/Overrides/tt_content.php

Register the plugin:

<?php
defined('TYPO3') or die();

/***************
 * Plugin
 */
\TYPO3\CMS\Extbase\Utility\ExtensionUtility::registerPlugin(
   'NewsFilter',
   'Filter',
   'Some demo'
);
Copied!

Classes/Controller/FilterController.php

Create a basic controller with the mentioned action.

<?php

namespace GeorgRinger\NewsFilter\Controller;

use GeorgRinger\News\Domain\Model\Dto\NewsDemand;
use GeorgRinger\News\Domain\Repository\NewsRepository;
use TYPO3\CMS\Extbase\Mvc\Controller\ActionController;

class FilterController extends ActionController
{
    protected NewsRepository $newsRepository;

    public function __construct(NewsRepository $newsRepository)
    {
        $this->newsRepository = $newsRepository;
    }

    public function listAction()
    {
        $demand = $this->createDemandObject();
        $this->view->assignMultiple([
            'news' => $this->newsRepository->findDemanded($demand)
        ]);
    }

    protected function createDemandObject(): NewsDemand
    {
        $demand = new NewsDemand();
        $demand->setLimit(10);

        return $demand;
    }
}
Copied!

Resources/Private/Templates/Filter/List.html

Create the template:

<f:if condition="{news}">
   <f:then>
      <div class="row">
         <f:for each="{news}" as="newsItem">
            <div class="col-md-3">
               <h5>{newsItem.title}</h5>
            </div>
         </f:for>
      </div>
   </f:then>
   <f:else>
      <div class="alert alert-danger">No news found</div>
   </f:else>
</f:if>
Copied!

Setup

After enabling the extension in the Extension Manager and creating a plugin "Filter" on a page, you will see up to 10 news records of your system.

Configuration

There are multiple ways how to configure which news records should be shown. The fastest way is to hardcode the configuration.

Hardcode it

By modifying the controller with the following code, you will change the output to show only those news records which fulfill the following requirements:

  • The pid is 123
  • The author is John
  • The id of the records is neither 12 nor 45.
protected function createDemandObject(): NewsDemand
{
    $demand = new NewsDemand();
    $demand->setStoragePage('123');
    $demand->setAuthor('John');
    $demand->setHideIdList('12,45');

    return $demand;
}
Copied!

Use FlexForms

FlexForms are a powerful tool to let editors configure plugins.

Configuration/TCA/Overrides/tt_content.php

Exchange the existing file with the following content.

<?php
defined('TYPO3') or die();

/***************
 * Plugin
 */
\TYPO3\CMS\Extbase\Utility\ExtensionUtility::registerPlugin(
   'news_filter',
   'Filter',
   'Some demo'
);

$GLOBALS['TCA']['tt_content']['types']['list']['subtypes_excludelist']['newsfilter_filter'] = 'recursive,select_key,pages';
$GLOBALS['TCA']['tt_content']['types']['list']['subtypes_addlist']['newsfilter_filter'] = 'pi_flexform';
\TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addPiFlexFormValue('newsfilter_filter',
   'FILE:EXT:news_filter/Configuration/FlexForms/flexform_news_filter.xml');
Copied!

Configuration/FlexForms/flexform_news_filter.xml

The syntax of FlexForms is identical to the one of TCA with the only difference that it is written in XML instead of PHP.

<T3DataStructure>
   <sheets>
      <sDEF>
         <ROOT>
            <sheetTitle>LLL:EXT:news/Resources/Private/Language/locallang_be.xlf:flexforms_tab.settings</sheetTitle>
            <type>array</type>
            <el>
               <settings.startingPoint>
                  <label>LLL:EXT:core/Resources/Private/Language/locallang_general.xlf:LGL.startingPoint</label>
                  <config>
                     <type>group</type>
                     <allowed>pages</allowed>
                     <size>3</size>
                     <maxitems>50</maxitems>
                     <minitems>0</minitems>
                     <wizards>
                        <suggest>
                           <type>suggest</type>
                           <default>
                              <searchWholePhrase>1</searchWholePhrase>
                           </default>
                        </suggest>
                     </wizards>
                  </config>
               </settings.startingPoint>
            </el>
         </ROOT>
      </sDEF>
   </sheets>
</T3DataStructure>
Copied!

Important is that each element's name is prepended with settings..

Classes/Controller/FilterController.php

Adopt the controller to use the settings instead of the hardcoded ones.

protected function createDemandObject(): NewsDemand
{
    $demand = new NewsDemand();
    // Because of the naming "<settings.startingPoint>", you can use $this->settings['startingPoint']
    $demand->setStoragePage($this->settings['startingPoint']);
    $demand->setLimit(10);

    return $demand;
}
Copied!

Extend FlexForms

Following fields of the plugin configuration can be extended without overriding the complete FlexForm configuration.

Selectbox "Sort by"

The sorting can be extended by adding the value to

$GLOBALS['TYPO3_CONF_VARS']['EXT']['news']['orderByNews']
Copied!

Default values are: tstamp,datetime,crdate,title

Additional Template Selector

If you need a kind of template selector inside a plugin, you can add your own selections by adding those to

$GLOBALS['TYPO3_CONF_VARS']['EXT']['news']['templateLayouts']['myext'] = ['My Title', 'my value'];
Copied!

You can then access the variable in your template with {settings.templateLayout} and use it for a condition or whatever.

Extend FlexForms with custom fields

If you need additional fields in the FlexForm configuration, this can be done by using a hook in the Core.

Register the Event

Add this to Services.yaml of your extension:

services:
    Vendor\ExtKey\EventListener\ModifyFlexformEvent:
        tags:
            - name: event.listener
              identifier: 'flexParsing'
              event: TYPO3\CMS\Core\Configuration\Event\AfterFlexFormDataStructureParsedEvent
Copied!

Add the hook

Create the class ModifyFlexformEvent in your extension in Classes/EventListener/ModifyFlexformEvent.php and add the path to an additional FlexForm file.

<?php

namespace Vendor\ExtKey\EventListener;

use TYPO3\CMS\Core\Configuration\Event\AfterFlexFormDataStructureParsedEvent;
use TYPO3\CMS\Core\Utility\ArrayUtility;
use TYPO3\CMS\Core\Utility\GeneralUtility;

class ModifyFlexformEvent
{
    public function __invoke(AfterFlexFormDataStructureParsedEvent $event): void
    {
        $dataStructure = $event->getDataStructure();
        $identifier = $event->getIdentifier();

        // $identifier['dataStructureKey'] depends on the selected plugin!
        if ($identifier['type'] === 'tca' && $identifier['tableName'] === 'tt_content' && $identifier['dataStructureKey'] === '*,news_pi1') {
            $file = GeneralUtility::getFileAbsFileName('EXT:extKey/Configuration/Example.xml');
            $content = file_get_contents($file);
            if ($content) {
                ArrayUtility::mergeRecursiveWithOverrule($dataStructure['sheets'], GeneralUtility::xml2array($content));
            }
        }

        $event->setDataStructure($dataStructure);
    }
}
Copied!

Create the FlexForm file

Create the FlexForm file you just referenced in the hook. This can look like that. (Syntax for TYPO3 12 LTS+)

<sheets>
    <extra>
        <ROOT>
            <sheetTitle>Fo</sheetTitle>
            <type>array</type>
            <el>
                <settings.postsPerPage>
                    <label>Max. number of posts to display per page</label>
                    <config>
                        <type>input</type>
                        <size>2</size>
                        <eval>int</eval>
                        <default>3</default>
                    </config>
                </settings.postsPerPage>
            </el>
        </ROOT>
    </extra>
</sheets>
Copied!

Events

Several events can be used to modify the behaviour of EXT:news.

Available events

Check out the Events reference.

Examples

Provide more variables to the view

To connect to an event, you need to register an event listener in your custom extension. All what it needs is an entry in your Configuration/Services.yaml file:

services:
  Vendor\Extension\EventListener\YourListener:
    tags:
      - name: event.listener
        identifier: 'your-self-choosen-identifier'
        method: 'methodToConnectToEvent'
        event: GeorgRinger\News\Event\NewsListActionEvent
Copied!

An example event listener can look like this:

<?php

declare(strict_types=1);

namespace Vendor\Extension\EventListener;

use GeorgRinger\News\Event\NewsListActionEvent;

class YourListener
{
    /**
     * Do what you want...
     */
    public function methodToConnectToEvent(NewsListActionEvent $event): void
    {
        $values = $event->getAssignedValues();

        // Do some stuff

        $event->setAssignedValues($values);
    }
}
Copied!

GeorgRingerNewsEventModifyDemandRepositoryEvent

This event is very powerful, as it allows to modify the query used to fetch the news records.

This example modifies the query and adds a constraint that only news records are shown which contain the word yeah.

First, register your implementation in the file Configuration/Services.yaml:

YourVendor\YourExtkey\EventListener\ModifyDemandRepositoryEventListener:
  tags:
    - name: event.listener
      identifier: 'eventnews-modifydemandrepository'
      event: GeorgRinger\News\Event\ModifyDemandRepositoryEvent
Copied!

Now create the file Classes/EventListener/ModifyDemandRepositoryEventListener.php:

<?php

namespace YourVendor\YourExtkey\EventListener;

use TYPO3\CMS\Core\Utility\GeneralUtility;
use GeorgRinger\News\Event\ModifyDemandRepositoryEvent

class ModifyDemandRepositoryEventListener
{
    public function __invoke(ModifyDemandRepositoryEvent $event) {
        $constraints = $event->getConstraints();
        $constraints[] = $query->like('title', '%' . $subject . '%');
        $event->setConstraints($constraints);
    }
}
Copied!

Controller/NewsController overrideSettings

Use this event to change the final settings which are for building queries, for the template, ...

This example modifies the settings by changing the category selection.

First, register your implementation in the file Services/yaml:

YourVendor\YourExtkey\EventListener\NewsControllerOverrideSettingsEventListener:
  tags:
    - name: event.listener
      identifier: 'eventnews-modifysettings'
      event: GeorgRinger\News\Event\NewsControllerOverrideSettingsEvent
Copied!

Now create the file Classes/EventListener/NewsControllerOverrideSettingsEvent.php:

<?php

namespace YourVendor\Extkey\EventListener;

class NewsControllerOverrideSettingsEvent
{
    public function __invoke(\GeorgRinger\News\Event\NewsControllerOverrideSettingsEvent $event): array
    {
        $settings = $event->getSettings();
        $settings['categories'] = '2,3';

        $event->setSettings($settings);
    }
}
Copied!

Hooks

ALl hooks of EXT:news have been deprecated and will be removed in next major versions. Please use one of the available events instead.

Demands

A demand is a configuration object used by the repository to decide which news records should be fetched.

The default demand class implementation for the frontend output of news is \GeorgRinger\News\Domain\Model\Dto\NewsDemand. It has a couple of useful properties that can be used to filter news records, for example $categories, $searchFields, $author and many more.

There is also the property $customSettings an array of custom settings by extensions. You should use your extension name as key in this array.

Demand objects can be changed in a couple of ways, see below:

URL Parameter

The URL parameter overwriteDemand can be used to override properties of the demand.

You can set this parameter in a Fluid link (see Set overwriteDemand in Frontend) or via TypoScript in a typolink (See TypoScript reference: typolink).

It would even be possible to configure a LinkHandler for this parameter.

Via TypoScript

TypoScript can be used to define a class containing a custom implementation of the demand object. This can be achieved by the TypoScript setting settings.demandClass.

Custom controllers

The demand object can be used in a custom controller used in an extension extending EXT:news. Read more about using a demand object in a custom controller: Extension based on EXT:news: FilterController.php.

Events

Multiple events can change or use demand objects. For example the events of the main actions in the NewsController, for example NewsListActionEvent and NewsDetailActionEvent. For more information refer to the chapter Events.

Custom demand class

All custom frontend news demand classes must extend \GeorgRinger\News\Domain\Model\Dto\NewsDemand. The demand object is a simple configuration object. It should contain no business logic. For each property there must be a setter and a getter.

Example:

<?php

namespace Vendor\MyNews\Domain\Model\Dto;

use \GeorgRinger\News\Domain\Model\Dto\NewsDemand;

class MyNewsDemand extends NewsDemand {

   /**
   * @var string
   */
   protected $myCustomField = '';

   /**
   * Set myCustomField
   *
   * @param string $myCustomField
   * @return NewsDemand
   */
   public function setMyCustomField(string $myCustomField): NewsDemand
   {
      $this->myCustomField = $myCustomField;
      return $this;
   }

   /**
   * Get myCustomField
   *
   * @return string
   */
   public function getMyCustomField(): string
   {
      return $this->myCustomField;
   }
}
Copied!

AddNewsToMenuProcessor

New in version 7.2.0

With version 7.2 a new data processor, AddNewsToMenuProcessor has been added which is useful for detail pages to add the news record as fake menu entry.

This data processor can be used to add the currently displayed news record to a pages breadcrumb.

Usage

10 = menu
10 {
    as = breadcrumbMenu
    special = rootline
    # [...] further configuration
}
20 = add-news-to-menu
20.menus = breadcrumbMenu,specialMenu
Copied!

The property menus is a comma-separated list of MenuProcessors that shall have the currently displayed news record attached as fake menu entry.

Examples

See Tutorial: Breadcrumb based on data processing and Fluid.

LanguageMenuProcessor

New in version 8.5.0

With version 8.5 a new data processor, LanguageMenuProcessor has been added.

This data processor renders a correct language menu on detail pages, which respects if a news record is translated or not.

Usage

10 = language-menu
10 {
    as = languageMenu
    addQueryString = 1
}

11 = disable-language-menu
11 {
    if.isTrue.data = GP:tx_news_pi1|news
    menus = languageMenu
}
Copied!

The property menus is a comma-separated list of MenuProcessors.

If a language menu is rendered on a detail page and the languages are configured to use a strict mode this data processor can be used:

If no translation exists, the property available in the LanguageMenuProcessor is set to false - just as if the current page is not translated.

Examples

See SEO: Language menu on news detail pages.

Add custom fields

Follow this chapter to learn how to add new fields or actions.

It is important to know how this concept is implemented. If a class should be extended, EXT:news will generate a new file containing the original class of the extension itself and all other classes which should extended it.

Take a look at the following 2 working examples:

The files are saved by using the Caching Framework in the directory typo3temp/Cache/Code/news.

1) Add a new field in the backend

To add new fields, use either the extension extension_builder or create the extension from scratch.

The extension key used in this examples is eventnews.

Create the fields

3 files are basically all what you need:

ext_emconf.php

The file ext_emconf.php holds all basic information about the extension like the title, description and version number.

<?php

$EM_CONF[$_EXTKEY] = [
   'title' => 'news events',
   'description' => 'Events for news',
   'category' => 'plugin',
   'author' => 'Georg Ringer',
   'author_email' => '',
   'state' => 'alpha',
   'uploadfolder' => false,
   'createDirs' => '',
   'clearCacheOnLoad' => true,
   'version' => '1.0.0',
   'constraints' => [
      'depends' => [
         'typo3' => '7.6.13-8.7.99',
         'news' => '6.2.0-6.9.99',
      ],
      'conflicts' => [],
      'suggests' => [],
   ],
];
Copied!

SQL definition

Create the file ext_tables.sql in the root of the extension directory with the following content:

# Table structure for table 'tx_news_domain_model_news '
#
CREATE TABLE tx_news_domain_model_news (
   location_simple varchar(255) DEFAULT '' NOT NULL
);
Copied!

TCA definition

The TCA defines which tables and fields are available in the backend and how those are rendered (e.g. as input field, textarea, select field, ...).

In this example, the table tx_news_domain_model_news will be extended by a simple input field. Therefore, create the file Configuration/TCA/Overrides/tx_news_domain_model_news.php.

<?php
defined('TYPO3') or die();

$fields = [
   'location_simple' => [
      'exclude' => 1,
      'label' => 'My location',
      'config' => [
         'type' => 'input',
         'size' => 15
      ],
   ]
];

\TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addTCAcolumns('tx_news_domain_model_news', $fields);
\TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addToAllTCAtypes('tx_news_domain_model_news', 'location_simple');
Copied!

Install the extension

Now you should be able to install the extension and if you open a news record, you should see the new field in the last tab.

2) Register the class

Until now, EXT:news won't use the new field because it doesn't know about it. To change that, you need to register your new model.

Registration

Create the file ext_localconf.php in the root of the extension:

<?php
defined('TYPO3') or die();

$GLOBALS['TYPO3_CONF_VARS']['EXT']['news']['classes']['Domain/Model/News']['eventnews'] = 'eventnews';
Copied!

Domain/Model/News is the namespace to the class which should be extended and eventnews is the extension key.

Custom class

As the class Domain/Model/News should be extended, create a file at the same path in the own extension which is path/to/eventnews/Classes/Domain/Model/News.php:

<?php

namespace GeorgRinger\Eventnews\Domain\Model;

class News extends \GeorgRinger\News\Domain\Model\News
{
   protected string $locationSimple;

   public function getLocationSimple(): string
   {
      return $this->locationSimple;
   }

   public function setLocationSimple(string $locationSimple)
   {
      $this->locationSimple = $locationSimple;
   }
}
Copied!

3) Exclude the class from dependecy injection

As the class you define will be added to a new generated class, the class needs to be excluded from dependency injection in Configuration/Services.yaml:

services:
  _defaults:
    autowire: true
    autoconfigure: true
    public: false

  GeorgRinger\Eventnews\:
    resource: '../Classes/*'
    exclude: '../Classes/Domain/Model/*'
Copied!

Clear system cache

Now it is time to clear the system cache, either via the dropdown in the backend or in the module Admin Tools.

Custom news types

Out of the box news comes with three types built in:

  • "News": Default news record
  • "Internal Page": The news record is linked to a regular page.
  • "External Page": The news record is linked to an external URL.

To add your custom type, you have to follow the steps below.

1) Class Mapping

Create a file Configuration/Extbase/Persistence/Classes.php

<?php
return [
 \GeorgRinger\News\Domain\Model\News::class => [
     'subclasses' => [
         3 => \Vendor\ExtName\Domain\Model\MyCustomNewsType::class,
     ]
 ],
 \Vendor\ExtName\Domain\Model\MyCustomNewsType::class => [
     'tableName' => 'tx_news_domain_model_news',
     'recordType' => 3,
 ]
];
Copied!

2) TCA

In this example, the new type is configured to show the fields bodytext and title. Therefore, create the file Configuration/TCA/Overrides/tx_news_domain_model_news.php.

<?php
  defined('TYPO3') or die();

  $GLOBALS['TCA']['tx_news_domain_model_news']['columns']['type']['config']['items']['3'] =
    ['myCustomNewsType', 3] ;

  $GLOBALS['TCA']['tx_news_domain_model_news']['types']['3'] = [
    'showitem' => 'title, bodytext'
  ];
Copied!

3) Custom class

<?php

namespace Vendor\ExtName\Domain\Model;

class MyCustomNewsType extends \GeorgRinger\News\Domain\Model\News {

}
Copied!

Templates

Getting started

on using Fluid templates with EXT:news

Bootstrap Templates

Include the templates for Twitter Bootstrap version 3 or 5 provided by this extension.

Assorted snippets

Helpful Fluid Snippets that you can use in your own news templates.

ViewHelpers

A quick tutorial on how to use ViewHelpers in Fluid

Template Selector

Use this technique to provide different templates for the list view and enable your editors to chose between them in the plugin settings.

Render content elements

Influence how content elements used within news records should be rendered.

Group news records

Group news by a certain property in the output.

Group news records

Filter news by multiple categories.

overwriteDemand

Set overwriteDemand in links.

Changing & editing templates

EXT:news is using Fluid as templating engine. If you are used to Fluid already, you might skip this section.

This documentation won't bring you all information about Fluid but only the most important things you need for using it. You can get more information in the TYPO3 Documentation TYPO3 Explained: Fluid or many third party sites, videos and books.

Use a site package extension

It is recommended to always store overwritten templates in a custom TYPO3 extension. Usually this is done in a special extension called the site package.

If you do not have a site package yet you can create one manually following this Official Tutorial: Site Package.

There is also a site package generator available (Provided by Benjamin Kott).

Create a directory called EXT:mysitepackage/Resources/Private/Extensions/News for example and create 3 directories therein called Templates, Partials and Layouts. In these directories you can store your version of the Fluid templates that you need to override.

As any Extbase based extension, you can find the original templates of the extension news in the directory EXT:news/Resources/Private/.

If you want to change a template, copy the desired files to the directory in your site package. If the template is in a sub folder you have to preserve the folder structure.

For example the template:

EXT:news/Resources/Private/Templates/News/Detail.html
Copied!

would have to be copied to

EXT:mysitepackage/Resources/Private/Extensions/News/Templates/News/Detail.html
Copied!

Since your site package extends the extension news you should require news in your composer.json:

EXT:mysitepackage/composer.json
{
   "require": {
      "georgringer/news": "^9.0"
   }
}
Copied!

And / or ext_emconf.php:

ext_emconf.php
$EM_CONF[$_EXTKEY] = [
    // ...
    'constraints' => [
        'depends' => [
            'news' => '9.0.0-9.99.99',
        ],
        // ...
    ],
];
Copied!

Changing paths of the template

In the most common case, where you want to override the standard news template with your own templates you can use the TypoScript constants to set the paths:

TypoScript constants
plugin.tx_news {
    view {
        templateRootPath = EXT:mysitepackage/Resources/Private/Extensions/News/Templates/
        partialRootPath = EXT:mysitepackage/Resources/Private/Extensions/News/Partials/
        layoutRootPath = EXT:mysitepackage/Resources/Private/Extensions/News/Layouts/
    }
}
Copied!

If needed, multiple fallbacks can be defined with TypoScript setup:

TypoScript setup
plugin.tx_news {
    view {
        templateRootPaths >
        templateRootPaths {
            0 = EXT:news/Resources/Private/Templates/
            10 = EXT:mynewsextender/Resources/Private/Templates/
            15 = EXT:myothernewsextender/Resources/Private/Templates/
            20 = {$plugin.tx_news.view.templateRootPath}
        }
        partialRootPaths >
        partialRootPaths {
            0 = EXT:news/Resources/Private/Partials/
            10 = EXT:mynewsextender/Resources/Private/Partials/
            15 = EXT:myothernewsextender/Resources/Private/Partials/
            20 = {$plugin.tx_news.view.partialRootPath}
        }
        layoutRootPaths >
        layoutRootPaths {
            0 = EXT:news/Resources/Private/Layouts/
            10 = EXT:mynewsextender/Resources/Private/Layouts/
            15 = EXT:myothernewsextender/Resources/Private/Layouts/
            20 = {$plugin.tx_news.view.layoutRootPath}
        }
    }
}
Copied!

It is recommended to always include the path from the TypoScript constants last (with the highest numeral) so that the site package can still override the templates.

Change path of the pagination widget

The path of the pagination widget can be changed by using a configuration like below.

TypoScript setup
plugin.tx_news {
    view {
        widget.GeorgRinger\News\ViewHelpers\Widget\PaginateViewHelper {
            templateRootPath = EXT:mysitepackage/Resources/Private/Extensions/News/Templates/
        }
    }
}
Copied!

Layouts, templates & partials

If using Fluid, the templates are structured by using Layouts, templates and partials.

Layouts

Layouts are used to structure the output of a plugin. A simple example is to wrap every output with the same <div> element. Therefore it is not needed to repeat this code and write it only once.

A layout can look this:

EXT:mysitepackage/Resources/Private/Extensions/News/Layouts/General.html
<div class="myFancyNews">
    <f:render section="content" />
</div>
Copied!

This means that the output of the section content will be rendered inside a div with the class myFancyNews.

Templates

Every action (like the List View, the Detail View, Date Menu or a Category Listing) needs its own template which can be found at EXT:news/Resources/Private/Templates/<Model>/<ActionName>.html.

If Layouts are used, it is required to define the name of the Layout (which is identical to the file name of the layout file without file extension).

mysitepackage/Resources/Private/Extensions/News/Templates/<Model>/<ActionName>.html
<f:layout name="General" />

<f:section name="content">
    This will be rendered
</f:section>
Copied!

Partials

Partials are used within templates to be able to reuse code snippets. If you open the template Templates/News/List.html you will see the render ViewHelper:

EXT:news/Resources/Private/Templates/News/List.html
<f:render
   partial="List/Item"
   arguments="{
      newsItem: newsItem,
      settings: settings,
      className: className,
      view: 'list'
   }"
/>
Copied!

This will embed the output of the partial which is located at Partials/List/Item.html (attribute partial, line 2). All arguments which are used in the attribute arguments (line 3ff) are available in the partial itself.

You can override existing partials or create your own and name them as you like.

Sections

Sections are very similar to partials. The difference is that sections are defined in the same file as the template.

ViewHelpers

Every Fluid ViewHelper starts with <f:. The view helpers supplied by TYPO3 are documented in the ViewHelper Reference.

Any other ViewHelpers from other extensions can be used by using a namespace declaration like

<html xmlns:f="http://typo3.org/ns/TYPO3/CMS/Fluid/ViewHelpers"
    xmlns:n="http://typo3.org/ns/GeorgRinger/News/ViewHelpers"
    xmlns:x="http://typo3.org/ns/Vendor/SomeExtension/ViewHelper"
    data-namespace-typo3-fluid="true">
...
</html>
Copied!

Then ViewHelpers of EXT:news can be used with prefix n:. You can find the available ViewHelpers in the chapter ViewHelper reference.

Bootstrap templates

The following Twitter Bootstrap Template variants are available:

  • v3
  • v5

To be able to use it, include additionally the entry News Styles Twitter Bootstrap or News Styles Twitter Bootstrap V5 in the section "Include Static (from extensions)" in the template record.

By changing the following constants, you can use those templates as base for your work.

# v5
plugin.tx_news {
    view.twb5 {
        templateRootPath = EXT:news/Resources/Private/Templates/Styles/Twb5/Templates
        partialRootPath = EXT:news/Resources/Private/Templates/Styles/Twb5/Partials/
        layoutRootPath = EXT:news/Resources/Private/Templates/Styles/Twb5/Layouts/
    }
}

# v3
plugin.tx_news {
    view.twb {
        templateRootPath = EXT:news/Resources/Private/Templates/Styles/Twb/Templates
        partialRootPath = EXT:news/Resources/Private/Templates/Styles/Twb/Partials/
        layoutRootPath = EXT:news/Resources/Private/Templates/Styles/Twb/Layouts/
    }
}
Copied!

Assorted snippets

This section contains snippets making EXT:news more awesome which might be useful for your projects as well.

Show FAL properties in fluid

Every property of a file, e.g. the copyright (available via EXT:filemetadata) can be rendered in templates by using e.g. {file.originalResource.properties.copyright}.

A full example can look like this

<f:for each="{newsItem.mediaNonPreviews}" as="mediaElement">
    <div class="thumbnail">
        <f:media file="{mediaElement}" class="img-fluid" />
        <f:if condition="{mediaElement.originalResource.properties.copyright}">
            <small>{mediaElement.originalResource.properties.copyright}</small>
        </f:if>
    </div>
</f:for>
Copied!

Use <f:debug>{mediaElement.originalResource.properties}</f:debug> to get all available properties

Render category rootline

If you want to show not only the title of a single category which is related to the news item but the complete category rootline use this snippets.

<f:if condition="{category:newsItem.firstCategory}">
    <ul class="category-breadcrumb">
        <f:render section="categoryBreadcrumb" arguments="{category:newsItem.firstCategory}" />
    </ul>
</f:if>
Copied!

and

<f:section name="categoryBreadcrumb">
    <f:if condition="{category}">
        <f:if condition="{category.parentCategory}">
            <f:render section="categoryBreadcrumb" arguments="{category:category.parentCategory}" />
        </f:if>
        <li>{category.title}</li>
    </f:if>
</f:section>
Copied!

Use current content element in the template

If you ever need information from the content element itself, you can use {contentObjectData.header}.

Use current page in the template

If you ever need information from the current page, you can use {pageData.uid}.

Sort tags

If you want to sort the tags of a news item, you can use a custom ViewHelper or EXT:vhs:

<ul>
    <f:for each="{newsItem.tags->v:iterator.sort(order: 'ASC', sortBy: 'title')}" as="tag">
        <li>{tag.title}</li>
    </f:for>
</ul>
Copied!

Render news items in columns

If you need to list news next to each other and need some additional CSS classes, you can the following snippet. The provided example will wrap 3 items into a div with the class "row".

<f:for each="{news -> n:iterator.chunk(count: 3)}" as="col" iteration="cycle">
    <div class="row">
        <f:for each="{col}" as="newsItem">
            <div class="col-md-4">
                <f:render partial="List/Item" arguments="{newsItem: newsItem, settings:settings}"/>
            </div>
        </f:for>
    </div>
</f:for>
Copied!

Override pagination labels

To override the labels used in the pagination, you can use the following TypoScript snippet:

plugin.tx_fluid {
    _LOCAL_LANG {
        // default for default = english language
        default {
            widget.pagination.next = my custom next
        }
        de {
            widget.pagination.next = nächste Seite
        }
    }
}
Copied!

As an alternative it is also possible to adopt the partial List/Pagination.html and use XLF files of your own extension.

<a href="...">
   {f:translate(key:'widget.pagination.next', extensionName: 'yourSitePackage')}
</a>
Copied!

ViewHelpers

ViewHelpers are used to add logic inside the view. There basic things like if/else conditions, loops and so on. The system extension Fluid has the most important ViewHelpers already included.

To be able to use a ViewHelper in your template, you need to follow always the same structure which is:

<f:fo>bar</f:fo>
Copied!

This would call the ViewHelper fo of the namespace f which stands for Fluid. If you want to use ViewHelpers from other extensions you need to add the namespace declaration at the beginning of the template. The namespace declaration for the news extension is:

<html xmlns:f="http://typo3.org/ns/TYPO3/CMS/Fluid/ViewHelpers"
    xmlns:n="http://typo3.org/ns/GeorgRinger/News/ViewHelpers"
    xmlns:x="http://typo3.org/ns/Vendor/Someextension/ViewHelper"
    data-namespace-typo3-fluid="true">
...
</html>
Copied!

Now you can use a ViewHelper of news with a code like:

<n:headerData><!-- some comment --></n:headerData>
Copied!

If you want to know what a ViewHelper does, it is very easy to find the related PHP class by looking at the namespace and the name of the ViewHelper. Having for example \GeorgRinger\News\ViewHelpers and headerData you will find the class at news\Classes\ViewHelpers\HeaderDataViewHelper.php.

The most of awesome thing is that you can use ViewHelpers of any extension in any other template by just adding another namespace declaration like:

{namespace something=Tx_AnotherExtension_ViewHelpers}
Copied!

and call the ViewHelper like

<something:NameOfTheViewHelper />
Copied!

See also

Template selector

This entry should help you to use different templates for different (list) views.

Using the following Page TsConfig the editor can select the layouts in the news plugin:

tx_news.templateLayouts {
   1 = A custom layout
   99 = LLL:fileadmin/somelocallang/locallang.xlf:someTranslation
}
Copied!

You can use any number to identify your layout and any label to describe it.

Now it is possible to use a condition in the template to change the layouts, and e.g. load a different partial:

<f:if condition="{news}">
    <f:then>
        <f:if condition="{settings.templateLayout} == 99">
            <f:then>
                <div class="news well news-special">
                    <f:for each="{news}" as="newsItem">
                        <f:render partial="List/Item-special" arguments="{newsItem: newsItem, settings:settings}"/>
                    </f:for>
                </div>
            </f:then>
            <f:else>
                <div class="news news-list-view">
                    <f:for each="{news}" as="newsItem">
                        <f:render partial="List/Item" arguments="{newsItem: newsItem, settings:settings}"/>
                    </f:for>
                </div>
            </f:else>
        </f:if>
    </f:then>
    <f:else>
       <div class="no-news-found"><f:translate key="list_nonewsfound" /></div>
    </f:else>
</f:if>
Copied!

As you can see in this example a different partial is loaded if the layout 99 is used.

Custom Templates by using TypoScript

You can define a custom TypoScript setting which you can check in the view later on.

The TypoScript could look like:

plugin.tx_news {
    settings {
        isLatest = 1
    }
}
Copied!

And then you can use a condition like this:

<f:if condition="{settings.isLatest}">
    <f:then>
        do something if it is set
    </f:then>
    <f:else>
        do something if it is not set
    </f:else>
</f:if>
Copied!

Render content elements

If news is configured to use relations to content elements, those are shown by default in the detail view.

There are two options how to render those elements

Using TypoScript

This is the default way in EXT:news. A basic TypoScript configuration is used to render those. This look like this:

lib.tx_news.contentElementRendering = RECORDS
lib.tx_news.contentElementRendering {
    tables = tt_content
    source.current = 1
    dontCheckPid = 1
}
Copied!

If you need to extend this, the best way is to introduce your own TypoScript which can be saved anywhere. This needs then to be referenced in the template.

<f:if condition="{newsItem.contentElements}">
    <f:cObject typoscriptObjectPath="lib.yourownTypoScript">{newsItem.contentElements}</f:cObject>
</f:if>
Copied!

Using TypoScript with nested content from b13/container

If nested content should be rendered as news content elements with b13/container the lib.tx_news.contentElementRendering should be adapted.

With the default lib.tx_news.contentElementRendering using the RECORDS CObject (see Using TypoScript) all content elements are fetched from the database and nested child content in containers is rendered twice. One time as standalone element and a second time in the container column.

To fix this the following lib can be used to fetch the content which will exclude all child content in containers:

lib.tx_news.contentElementRendering = CONTENT
lib.tx_news.contentElementRendering {
    table = tt_content
    select {
        pidInList = 0
        uidInList.current = 1
        where = {#tx_container_parent}<1
        orderBy = sorting
        languageField = sys_language_uid
    }
}
Copied!

Changing lib.tx_news.contentElementRendering = RECORDS to lib.tx_news.contentElementRendering = CONTENT can have some side effects for the sorting of translated content elements. You can also fix this by using Fluid only:

<f:if condition="{newsItem.contentElements}">
    <!-- content elements -->
    <f:cObject typoscriptObjectPath="lib.tx_news.contentElementRendering">{newsItem.nonNestedContentElementIdList}</f:cObject>
</f:if>
Copied!

Using Fluid

You can also use Fluid render the content elements. As an example:

<f:if condition="{newsItem.contentElements}">
    <f:for each="{newsItem.contentElements}" as="element">
        <h3>{element.title}</h3>
        <f:if condition="{element.CType} == 'text'">
        {element.bodytext -> f:format.html()}
        </f:if>
    </f:for>
</f:if>
Copied!

Group news records

The following example will group all given news records by the property "firstCategory".

<f:if condition="{news}">
   <f:then>
      <div style="border:1px solid red">
         <f:groupedFor each="{news}" as="groupedNews" groupBy="firstCategory" groupKey="cat">
            <div style="border:1px solid blue;padding:10px;margin:10px;">
               <h1>{cat.title}</h1>
               <f:for each="{groupedNews}" as="newsItem">
                  <div style="border:1px solid pink;padding:5px;margin:5px;">
                     {newsItem.title}
                  </div>
               </f:for>
            </div>
         </f:groupedFor>
      </div>
   </f:then>
   <f:else>
      <div class="no-news-found">
         <f:translate key="list_nonewsfound"/>
      </div>
   </f:else>
</f:if>
Copied!

Keep an eye on performance!

To be able to group the records, Fluid will load every record itself and groups those afterwards.

If you plan to group many records just for getting something like a count, maybe it is better to fire the query directly and don't use Fluid for that.

However if the result is on a cacheable page, the issue is only relevant on the first hit.

Filter news by multiple categories

The default category template Category/List allows only filtering by a single category. If you need to filter by multiple categories, you can use such template:

<html xmlns:n="http://typo3.org/ns/GeorgRinger/News/ViewHelpers"
      xmlns:f="http://typo3.org/ns/TYPO3/CMS/Fluid/ViewHelpers" data-namespace-typo3-fluid="true">

<f:layout name="General" />
<!--
    =====================
        Templates/Category/List.html
-->

<f:section name="content">
    <f:if condition="{categories}">
        <f:then>
            <f:render section="categoryTree" arguments="{categories:categories,overwriteDemand:overwriteDemand}" />
        </f:then>
        <f:else>
            <f:translate key="list_nocategoriesfound" />
        </f:else>
    </f:if>
</f:section>

<f:section name="categoryTree">
    <ul>
        <f:for each="{categories}" as="category">
            <f:variable name="categoryUid">{category.item.uid}</f:variable>
            <f:if condition="{category.item.sysLanguageUid} > 0">
                <f:variable name="categoryUid">{category.item.l10nParent}</f:variable>
            </f:if>
            <li>
                <n:multiCategoryLink.isCategoryActive list="{overwriteDemand.categories}" item="{categoryUid}">
                    <f:then>
                        <f:link.page title="{category.item.title}" class="active" pageUid="{settings.listPid}"
                            additionalParams="{tx_news_pi1:{overwriteDemand:{categories: categoryUid}}}">{category.item.title}
                        </f:link.page>

                        (<f:link.page title="{category.item.title}" class="active" pageUid="{settings.listPid}"
                                      additionalParams="{n:multiCategoryLink.arguments(mode:'remove',item:categoryUid,list:overwriteDemand.categories)}">remove
                    </f:link.page>)

                    </f:then>
                    <f:else>
                        <f:link.page title="{category.item.title}" pageUid="{settings.listPid}"
                            additionalParams="{tx_news_pi1:{overwriteDemand:{categories: categoryUid}}}">{category.item.title}
                        </f:link.page>

                        (<f:link.page title="{category.item.title}" class="active" pageUid="{settings.listPid}"
                                     additionalParams="{n:multiCategoryLink.arguments(mode:'add',item:categoryUid,list:overwriteDemand.categories)}">add
                        </f:link.page>)
                    </f:else>
                </n:multiCategoryLink.isCategoryActive>

                <f:if condition="{category.children}">
                    <f:render section="categoryTree" arguments="{categories: category.children,overwriteDemand:overwriteDemand}" />
                </f:if>
            </li>
        </f:for>
    </ul>
</f:section>
</html>
Copied!

External tutorials

There are already some additional 3rd party tutorials about the extension "news".

Video tutorials by jweiland

5 german video tutorials by Jochen Weiland which can be found at https://jweiland.net/video-anleitungen/typo3/interessante-typo3-extensions/news-ext.html.

Installation

The extension needs to be installed as any other extension of TYPO3 CMS. Get the extension by one of the following methods:

  1. Use composer: Run

    composer require georgringer/news
    Copied!

    in your TYPO3 installation.

  2. Get it from the Extension Manager: Switch to the module Admin Tools > Extensions. Switch to Get Extensions and search for the extension key news and import the extension from the repository.
  3. Get it from typo3.org: You can always get current version from TER by downloading the zip version. Upload the file afterwards in the Extension Manager.

and configure it.

Compatibility

Ensure the compatibility of the extension with your TYPO3 installation by considering this compatibility matrix:

News TYPO3 PHP Support / Development
12 12 - 13 8.1 - 8.3 active support
11 11 - 12 7.4 - 8.3 none
10 10 - 11 7.4 - 8.1 none
9 10 - 11 7.4 - 8.1 none
8 9.5 - 10 7.2 - 7.4 none
7.x 8.7 - 9.x 7.0 - 7.2 none
6.x 7.6 - 8.7 5.6 - 7.2 none
5.x 7.6 - 8.7 5.6 - 7.2 none
4.x 7.6 5.5 - 5.6 none
3.x 6.2 5.5 - 5.6 none

Versioning

This project uses semantic versioning, which means that

  • bugfix updates (e.g. 1.0.0 => 1.0.1) just include small bugfixes or security relevant stuff without breaking changes,
  • minor updates (e.g. 1.0.0 => 1.1.0) include new features and smaller tasks without breaking changes and
  • major updates (e.g. 1.0.0 => 2.0.0) contain breaking changes which can be refactorings, features or bugfixes.

as can be seen by reading the project's change log.

Configuration

Site Sets

New in version TYPO3 v13.1 / news v12.0

The extension ships some TypoScript code which can be included in the site configuration via Site sets:

  1. Got to backend module Site Management > Sites.
  2. Edit the configuration of your site.
  3. On the first tab go to Sets for this Site.
  4. If you want to news with the plain template choose site set News.
  5. If you need bootstrap styles choose the site set News Twb5 instead.
  6. If typo3/cms-seo is installed and you want to feature a sitemap containing all news, choose News Sitemap.

TypoScript Records

The extension ships some TypoScript code which needs to be included.

  1. Switch to the root page of your site.
  2. Switch to Template > Info/Modify.
  3. Press the link Edit the whole template record and switch to the tab Includes.
  4. Select News (news) at the field Include static (from extensions):

  5. Include the static template of EXT:fluid_styled_content or provide the following TypoScript yourself:

    plugin.tx_news.settings.detail.media.image.lightbox {
       enabled = 0
       class = lightbox
       width = 800m
       height = 600m
    }
    Copied!
  6. Optional: If your templates are based on Twitter Bootstrap, add the TWB styles as well to get optimized templates.

Updating

If you update EXT:news to a newer version, please read this section carefully!

Versioning

EXT:news follows the semantic versioning approach.

It uses a 3-number versioning scheme: <major>.<minor>.<patch>

  • Major: Breaking changes
  • Minor: New functionality, backwards compatible (without breaking changes)
  • Patch: Bug fixes (without breaking changes)

Before an update

Before you start the update procedure, please read the changelog of all versions which have been released in the meantime! You can find those in the manual here.

Furthermore it is always a good idea to do updates on a dedicated test installation or at least create a database backup.

Migration

EXT:news provides a powerful import module which can be used to add news and category records from various sources.

Migration from tt_news to news

This tutorial will help you to migrate data from tt_news to news.

Requirements

  • Installed extension news
  • Installed extension news_ttnewsimport

Migration

Migration of records

To be able to migrate records, you need to activate the import module. This needs to be done in the configuration of EXT:news inside the Extension Manager.

  1. Activate the checkbox "Show importer", save and reload the backend. Now you should see the backend module "News Import".
  2. Switch to the backend module.
  3. Select "Import tt_news category records" from the select box and start the import of categories.
  4. Select "Import tt_news news records" from the select box and start the import of news records.

Migration of plugins

The plugins of tt_news can be migrated to plugins of EXT:news as well. This is done by using the CLI:

./typo3/cli_dispatch.phpsh extbase ttnewspluginmigrate:run
./typo3/cli_dispatch.phpsh extbase ttnewspluginmigrate:removeOldPlugins
Copied!

Read more about the migration and its limitation in the documentation of news_ttnewsimport at https://github.com/fsaris/news_ttnewsimport.

Migration of unique aliases

If a lot of similar titles are used it might be a good a idea to migrate the unique aliases to be sure that the same alias is used.

# temporary table
CREATE TABLE tx_realurl_uniqalias_migration LIKE tx_realurl_uniqalias;
# copy
INSERT INTO tx_realurl_uniqalias_migration SELECT * FROM tx_realurl_uniqalias WHERE tablename='tt_news';
# fix it
UPDATE tx_realurl_uniqalias_migration SET value_id = (SELECT tx_news_domain_model_news.uid FROM `tx_news_domain_model_news` WHERE tx_news_domain_model_news.import_id=tx_realurl_uniqalias_migration.value_id),tablename='tx_news_domain_model_news' WHERE tablename='tt_news';
# remove wrong alias (news which have not been imported)
DELETE FROM tx_realurl_uniqalias_migration WHERE tablename='tx_news_domain_model_news' AND value_id=0;
# insert alias back into realurl table
INSERT INTO tx_realurl_uniqalias (tstamp,tablename,field_id,value_alias,value_id,lang,expire) SELECT tstamp,tablename,field_id,value_alias,value_id,lang,expire FROM tx_realurl_uniqalias_migration
Copied!

Not migrated

Be aware that some things are not migrated:

  • Templates
  • TypoScript configuration
  • Backenduser & -group configuration
  • Additional fields added to tt_news by 3rd party extensions

Reference

In-depth reference for integrators and developers.

Extension Configuration

Some general settings can be configured in the Extension Configuration.

  1. Go to Admin Tools > Settings > Extension Configuration
  2. Choose news

The settings are divided into several tabs and described here in detail:

Records

Archive Date archiveDate

archiveDate

archiveDate
type

string (keyword)

Default

date

Define how the archive date field should be rendered:

date
Render the field as pure date
datetime
Render it as date and time field

Enable a RTE for the teaser field rteForTeaser

rteForTeaser

rteForTeaser
type

bool

Default

If set, the teaser field will be rendered using a RTE.

Define pid of tag records tagPid

tagPid

tagPid
Type
int
Default
0

New tags can be saved directly inside the news record. The given ID is used as page on which the tag records will be saved.

This setting can also be done with TSconfig, see tagPid

If you want to use TsConfig to define the page, set the tagPid to 0 and use the following syntax in TsConfig:

# Save tags on page with UID 123
tx_news.tagPid = 123
Copied!

Prepend at copy prependAtCopy

prependAtCopy

prependAtCopy
type

bool

Default

1

If set and a news record is copied, the news record will be prepended with the string Copy X.

Category restriction categoryRestriction

Category restriction: Restrict the available categories in news records.

PageTsConfig:

TCEFORM.tx_news_domain_model_news.categories.PAGE_TSCONFIG_IDLIST=120.
Copied!

Editor needs to have permissions to all selected categories to save a news item categoryBeGroupTceFormsRestriction

categoryBeGroupTceFormsRestriction

categoryBeGroupTceFormsRestriction
type

bool

Default

If activated, an editor needs to have permissions to all categories added to a news item to be able to edit this record.

Use content element relation contentElementRelation

contentElementRelation

contentElementRelation
type

bool

Default

1

If set, you can add content elements as relation to a news record. This makes it easy to enrich the news article with further images, plugins, ...

If you want to reduce the available options of the content elements, you can use TsConfig in the sysfolder of the news records:

# Hide content element types
TCEFORM.tt_content.CType.removeItems = header,bullets,table,uploads,menu,list,html,login,mailform,search,shortcut,div
# Hide fields
TCEFORM.tt_content.header.disabled = 1
TCEFORM.tt_content.header_layout.disabled = 1
Copied!

More information can be found at http://docs.typo3.org/typo3cms/TSconfigReference/PageTsconfig/TCEform/Index.html.

Enable manual sorting of news records manualSorting

manualSorting

manualSorting
type

bool

Default

If set, news records can be manually sorted in the list view by the well known icons "up" and "down".

Disable required date field dateTimeNotRequired

dateTimeNotRequired

dateTimeNotRequired
type

bool

Default

If set, the date field of the news record is not a required field anymore. Furthermore if creating a new record, it is not filled anymore with the current date.

Be aware that using this feature may lead to unexpected results if using e.g. the date menu if the field is not used anymore.

Show thumbnails in backend list module mediaPreview

mediaPreview

mediaPreview
type

bool

Default

false

If enabled, the list module will show thumbnails of the media items.

This setting is only evaluated for TYPO3 10 as it has been removed for version 11. Use the extension studiomitte/recordlist-thumbnail to get it back in v11.

Advanced preview configuration for media files advancedMediaPreview

advancedMediaPreview

advancedMediaPreview
type

bool

Default

1

If enabled, more options are available for editors defining where an media element should be displayed.

Slug behaviour slugBehaviour

slugBehaviour

slugBehaviour
type

string, keyword

Default

unique

Choose one of the following slug behaviours:

uniqueInSite
The same slug can be used for news in different sites. Use this setting only if no news records are shared between sites.
unique
The same news title in different sites will lead to different slug names.

Page Tree Plugin Preview

pageTreePluginPreview

pageTreePluginPreview
type

bool

Default

1

If set, pages which contain a news plugin will show an additional icon right to the title in the page tree. This makes it easier to identify pages which are related to EXT:news.

This setting is only relevant since TYPO3 13!

Backend Module

Show administration module showAdministrationModule

showAdministrationModule

showAdministrationModule
type

bool

Default

1

If set, the backend module "News" is shown. This view might be easier for editors who use a very limited set of features in the backend.

Hide page tree for Administration module hidePageTreeForAdministrationModule

hidePageTreeForAdministrationModule

hidePageTreeForAdministrationModule
type

bool

Default

If set, the backend module "News" is shown without the page tree. In combination with the TsConfig redirectToPageOnStart you can achieve a very simple workflow for editors if those need only to create news records.

UID of storage to use when importing files/images storageUidImporter

storageUidImporter

storageUidImporter
type

int

Default

1

Define the uid of the storage which is used for importing media elements into FAL relations.

In which folder should the importer save files/images (has to exist) resourceFolderImporter

resourceFolderImporter

resourceFolderImporter
type

string

Default

/news_import

Define the folder which is used for the media elements which are imported.

Alternative configuration instead of Admin Tools

Instead of defining the property in the Admin Tools it is also possible to define the properties in the AdditionalConfiguration.php. This is useful if you want to include the setting in version control.

AdditionalConfiguration.php
 $GLOBALS['TYPO3_CONF_VARS']['EXTENSIONS']['news'] = [
    'advancedMediaPreview' => '1',
    'archiveDate' => 'date',
    'categoryBeGroupTceFormsRestriction' => '0',
    'categoryRestriction' => 'none',
    'contentElementRelation' => '1',
    'dateTimeNotRequired' => '0',
    'hidePageTreeForAdministrationModule' => '0',
    'manualSorting' => '0',
    'prependAtCopy' => '1',
    'resourceFolderImporter' => '/news_import',
    'rteForTeaser' => '0',
    'showAdministrationModule' => '1',
    'slugBehaviour' => 'unique',
    'storageUidImporter' => '1',
    'tagPid' => '1',
];
Copied!

TypoScript

This page is divided into the following sections which are all configurable by using TypoScript:

Plugin settings

This section covers all settings, which can be defined in the plugin itself.

General settings

Configuration of the Web > News Administration module

Plugin settings

This section covers all settings, which can be defined in the plugin itself. To improve the usability, only those settings are shown which are needed by the chosen view (The setting orderBy is for example not needed in the single view).

Sheet general

Sort by orderBy

orderBy

orderBy
type

string

Default

'datetime'

Path

plugin.tx_news.settings

Scope

Plugin, TypoScript Setup

Define the sorting of displayed news records. The chapter "Extend news > Extend flexforms" shows how the select box can be extended.

Sort direction orderDirection

orderDirection

orderDirection
type

string

Default

'desc'

Path

plugin.tx_news.settings

Scope

Plugin, TypoScript Setup

Define the sorting direction which can either be "asc" for ascending or "desc" descending. This can be either asc or desc.

plugin.tx_news.settings.orderDirection = asc
Copied!

Date field to use dateField

dateField

dateField
type

string

Default

'datetime'

Path

plugin.tx_news.settings

Scope

Plugin, TypoScript Setup

The date menu builds a menu by year and month and the given news records. The menu can either be built by using the date field or the archive field.

Category selection categories

categories

categories
type

string

Default

(none)

Path

plugin.tx_news.settings

Scope

Plugin, TypoScript Setup

Define the news categories which are taken into account when getting the correct news records

plugin.tx_news.settings.categories = 1,2,3
Copied!

Category mode categoryConjunction

categoryConjunction

categoryConjunction
type

int

Default

0 (Don't care, show all)

Path

plugin.tx_news.settings

Scope

Plugin, TypoScript Setup

The category mode defines how selected categories are checked. 5 options are available:

1 (Don't care, show all)
There is no restriction based on categories, even if categories are defined.
2 (Show items with selected categories (OR))
All news records which belong to at least one of the selected categories are shown.
3 (Show items with selected categories (AND))
All news records which belong to all selected categories are shown.
4 (Do NOT show items with selected categories (OR))
This is the negation of #2. All news records which don't belong to any of the selected categories are shown.
5 (Do NOT show items with selected categories (AND))
This is the negation of #3. All news records which don't belong to all selected categories are shown.
plugin.tx_news.settings.categoryConjunction = 2
Copied!

Include subcategories includeSubCategories

includeSubCategories

includeSubCategories
type

boolean

Default
Path

plugin.tx_news.settings

Scope

Plugin, TypoScript Setup

Include subcategories in the category selection

plugin.tx_news.settings.includeSubCategories = 1
Copied!

Archive archiveRestriction

archiveRestriction

archiveRestriction
type

string

Default

(none)

Path

plugin.tx_news.settings

Scope

Plugin, TypoScript Setup

plugin.tx_news.settings.archiveRestriction = active
Copied!

News records can hold an optional archive date. 2 modes are available:

active: Only active (non archived)
All news records with an archive date in the future are shown.
archived: Archived
All news records with an archive date in the past are shown.

Time limit (LOW) timeRestriction

timeRestriction

timeRestriction
type

string

Default

(none)

Path

plugin.tx_news.settings

Scope

Plugin, TypoScript Setup

plugin.tx_news.settings.timeRestriction =-1 week
Copied!

The time limit offers 3 different options.

Date

A date in the format HH:mm DD-MM-YYYY can be set and only news records that are newer than this date are shown.

Example: 15:30 01-04-2020 (April 1st, 2020 at 3.30 pm)

Time in seconds

Only news records with a maximum age (compared to the Date & Time field) are shown.

Example: An input like 86400 shows only news records which are one day (60 seconds * 60 minutes * 24 hours) old.

Time in words

It is also possible to define the maximum age in words. Examples are:

  • -3 days
  • last Monday
  • -10 months 3 days 2 hours

Words need to be in English and are translated by using strtotime .

Time limit (HIGH) timeRestrictionHigh

timeRestrictionHigh

timeRestrictionHigh
type

string

Default

(none)

Path

plugin.tx_news.settings

Scope

Plugin, TypoScript Setup

See timeRestriction above. The configuration is the same but for the higher time end.

Top news topNewsRestriction

topNewsRestriction

topNewsRestriction
type

int

Default
plugin.tx_news.settings.topNewsRestriction =2
Copied!

Any news record can be set as Top News. Therefore it is possible to show news records depending on this flag.

1: Only Top News records
Only news records which the checkbox set are shown.
2: Except Top News records
Only news records which don't have the checkbox set are shown.

Show a single news record singleNews

singleNews

singleNews
type

int

Default
Path

plugin.tx_news.settings

Scope

Plugin, TypoScript Setup

plugin.tx_news.settings.singleNews =789
Copied!

It is possible to show a specific news record in the Detail view if the uid is set with this property.

Allow preview of hidden records previewHiddenRecords

previewHiddenRecords

previewHiddenRecords
type

int

Default
Path

plugin.tx_news.settings

Scope

Plugin, TypoScript Setup

plugin.tx_news.settings.previewHiddenRecords = 1
Copied!

If set, also records which are normally hidden are displayed. This is especially helpful when using a detail view as preview mode for editors. The setting enablePreviewOfHiddenRecords is needed (instead of previewHiddenRecords) if the detail view plugin is used and the plugin configuration option previewHiddenRecords is set to "Defined in TypoScript" (value 2).

enablePreviewOfHiddenRecords

enablePreviewOfHiddenRecords
type

int

Default
Path

plugin.tx_news.settings

Scope

TypoScript Setup

plugin.tx_news.settings.previewHiddenRecords = 2
plugin.tx_news.settings.enablePreviewOfHiddenRecords = 1
Copied!

If previewHiddenRecords is set to 2 the setting of enablePreviewOfHiddenRecords is used instead.

Startingpoint startingpoint

startingpoint

startingpoint
type

string

Default

(none)

Path

plugin.tx_news.settings

Scope

Plugin, TypoScript Setup

plugin.tx_news.settings.startingpoint =12,345
Copied!

If a startingpoint is set, all news records which are saved on one of the selected pages are shown, otherwise news of all pages are shown.

Recursive recursive

recursive

recursive
type

int

Default

0 (No recursion)

Path

plugin.tx_news.settings

Scope

Plugin, TypoScript Setup

plugin.tx_news.settings.recursive = 2
Copied!

The search for pages as startingpoint can be extended by setting a recursive level.

Sheet additional

PageId for single news display detailPid

detailPid

detailPid
type

int

Default

0 (none)

Path

plugin.tx_news.settings

Scope

Plugin, TypoScript Setup

plugin.tx_news.settings.detailPid =12
Copied!

This page is used as target for the detail view. If nothing set, the current page is used.

PageId for list display listPid

listPid

listPid
type

int

Default

0 (none)

Path

plugin.tx_news.settings

Scope

Plugin, TypoScript Setup

plugin.tx_news.settings.listPid =12
Copied!

This page is used as target for the listings, for example the date menu and the search form.

PageId to return to backPid

backPid

backPid
type

int

Default

0 (none)

Path

plugin.tx_news.settings

Scope

Plugin, TypoScript Setup

plugin.tx_news.settings.backPid =12
Copied!

Define a page for the detail view to return to. This is typically the page on which the list view can be found.

Max records displayed limit

limit

limit
type

int

Default

0 (none)

Path

plugin.tx_news.settings

Scope

Plugin, TypoScript Setup

plugin.tx_news.settings.limit =10
Copied!

Define the maximum records shown.

Starting with given news record offset

offset

offset
type

int

Default

(none)

Path

plugin.tx_news.settings

Scope

Plugin, TypoScript Setup

plugin.tx_news.settings.offset = 3
Copied!

Define the offset. If set to e.g. 2, the first 2 records are not shown. This is especially useful in combination with multiple plugins on the same page and the setting limit.

Tags tags

tags

tags
type

string

Default

(none)

Path

plugin.tx_news.settings

Scope

Plugin, TypoScript Setup

Add a constraint to the given tags

Hide the pagination hidePagination

hidePagination

hidePagination
type

boolean

Default

0 (do not hide)

Path

plugin.tx_news.settings

Scope

Plugin, TypoScript Setup

If defined, the pagination is not shown.

Items per Page list.paginate.itemsPerPage

list.paginate.itemsPerPage

list.paginate.itemsPerPage
type

int

Default

10

Path

plugin.tx_news.settings

Scope

Plugin, TypoScript Setup

Define the amount of news items shown per page in the pagination.

Sort "Top news" before topNewsFirst

topNewsFirst

topNewsFirst
type

boolean

Default

0 (Do not show top news first)

Path

plugin.tx_news.settings

Scope

Plugin, TypoScript Setup

plugin.tx_news.settings.topNewsFirst =1
Copied!

If set, news records with the checkbox "Top News" are shown before the others, no matter which sorting configuration is used.

Exclude already displayed news excludeAlreadyDisplayedNews

excludeAlreadyDisplayedNews

excludeAlreadyDisplayedNews
type

boolean

Default

0 (Do not exclude)

Path

plugin.tx_news.settings

Scope

Plugin, TypoScript Setup

plugin.tx_news.settings.excludeAlreadyDisplayedNews =1
Copied!

If checked, news items which are already rendered are excluded in the current plugin.

To exclude news items, the viewHelper <n:excludeDisplayedNews newsItem="{newsItem}" /> needs to be added to the template.

Disable override demand disableOverrideDemand

disableOverrideDemand

disableOverrideDemand
type

boolean

Default

1 (Disable override)

Path

plugin.tx_news.settings

Scope

Plugin, TypoScript Setup

plugin.tx_news.settings.disableOverrideDemand =1
Copied!

If set, the settings of the plugin can't be overridden by arguments in the URL. Read more about demands.

Sheet template

Max width for media elements media.maxWidth

media.maxWidth

media.maxWidth
type

int

Default

0 (none)

Path

plugin.tx_news.settings

Scope

Plugin, TypoScript Setup

Maximum width of assets

Max height for media elements media.maxHeight

media.maxHeight

media.maxHeight
type

int

Default

0 (none)

Path

plugin.tx_news.settings

Scope

Plugin, TypoScript Setup

Maximum height of assets

Length of teaser (in chars) cropMaxCharacters

cropMaxCharacters

cropMaxCharacters
type

int

Default

0 (do not crop)

Path

plugin.tx_news.settings

Scope

Plugin, TypoScript Setup

plugin.tx_news.settings.cropMaxCharacters =100
Copied!

Define the maximum length of the teaser text before it is cropped.

Template Layout templateLayout

templateLayout

templateLayout
type

string

Default

(none, use default)

Path

plugin.tx_news.settings

Scope

Plugin, TypoScript Setup

plugin.tx_news.settings.templateLayout = 123
Copied!

Select different layouts. See this section how to add layouts.

General settings

Any setting needs to be prefixed with plugin.tx_news.settings..

cssFile

cssFile

cssFile
type

string

Default

Depends on the chosen layout

Path

plugin.tx_news.settings

Path to the css file. This is included with the Layouts.

format

format

format
type

string

Default

html

Path

plugin.tx_news.settings

Set a different format for the output. Use e.g. xml for RSS feeds.

useStdWrap

useStdWrap

useStdWrap
type

string

Default

singleNews

Path

plugin.tx_news.settings

Add all TypoScript properties as a comma separated list which need support for stdWrap.

As an example:

settings {
   useStdWrap = singleNews

   singleNews.stdWrap.cObject = CONTENT
   singleNews.stdWrap.cObject {
      # ...
   }
}
Copied!

overrideFlexformSettingsIfEmpty

overrideFlexformSettingsIfEmpty

overrideFlexformSettingsIfEmpty
type

string

Path

plugin.tx_news.settings

Default

cropMaxCharacters,dateField,timeRestriction,orderBy,orderDirection, backPid,listPid,startingpoint, recursive,list.paginate.itemsPerPage,list.paginate.templatePath

The default behaviour of Extbase is to override settings from TypoScript by the one of the FlexForms. This is even valid if the setting is left empty in the FlexForms.

Therefore you can define those settings which value should be taken from TypoScript if nothing is set in the plugin.

displayDummyIfNoMedia

displayDummyIfNoMedia

displayDummyIfNoMedia
type

boolean

Path

plugin.tx_news.settings

Default

1

If set and no preview image is defined in the record, a placeholder image defined via list.media.dummyImage is shown.

list.media.dummyImage

list.media.dummyImage
type

string

Default

typo3conf/ext/news/Resources/Public/Images/dummy-preview-image.png

If preview image is defined, the defined placeholder is displayed.

Example: Display a dummy image from your sitepackage

my_sitepackage/Configuration/TypoScript/setup.typoscript
plugin.tx_news.settings {
  displayDummyIfNoMedia = 1
  list.media.dummyImage = EXT:my_sitepackage/Resources/Public/Images/News/MyPreviewImage.png
}
Copied!

Example: Remove dummy image from list view

my_sitepackage/Configuration/TypoScript/setup.typoscript
plugin.tx_news.settings {
  displayDummyIfNoMedia = 0
}
Copied!

detailPidDetermination

detailPidDetermination

detailPidDetermination
type

string, comma separated list of keywords

Default

"flexform, categories, default"

Path

plugin.tx_news.settings

This setting defines which page is used for the link to the detail view. 3 possible options are available which processed in the given order until a page has been found.

flexform

This setting tries to get the detail page from the plugin's setting detailPid PageId for single news display which can also be set by using TypoScript:

# If set via TypoScript, also add detailPid to the setting "overrideFlexformSettingsIfEmpty"
plugin.tx_news.settings.detailPid = 123
Copied!
categories
A detail page can also be defined for every category. Use the field Single-view page for news from this category for that.
default

This type tries to get the value from the setting defaultDetailPid:

plugin.tx_news.settings.defaultDetailPid = 456
Copied!

defaultDetailPid

defaultDetailPid

defaultDetailPid
type

int

Default
Path

plugin.tx_news.settings

If detailPidDetermination contains the keyword "default" this value is used to determine the pid used for detail links of news records.

hideIdList

hideIdList

hideIdList
type

string

Default

(none)

Path

plugin.tx_news.settings

Define a list of ids of news articles which are excluded in the view. This is similar to the setting excludeAlreadyDisplayedNews but the exclusion is defined in TypoScript instead of the template.

Example: Hide current news in the list

As an example this excludes the news record of a detail action of the same page:

plugin.tx_news.settings {
   useStdWrap := addToList(hideIdList)
   hideIdList.cObject = TEXT
   hideIdList.cObject {
      data = GP:tx_news_pi1|news
   }
}
Copied!

orderByAllowed

orderByAllowed

orderByAllowed
type

string

Default

sorting,author,uid,title,teaser,author,tstamp,crdate,datetime,categories.title

Path

plugin.tx_news.settings

Due to restrictions of Extbase itself it is required to define all fields which are allowed for sorting results.

analytics.social

analytics.social

analytics.social
type

array

Use additional code for google analytics tracking of the social functionalities.

Default:

analytics.social {
   facebookLike = 1
   facebookShare = 1
   twitter = 1
}
Copied!

demandClass

demandClass

demandClass
type

string

Path

plugin.tx_news.settings

Overload the demand object which is used to build the queries. Read more about how to use and extend demands.

opengraph

opengraph

opengraph
type

array

Path

plugin.tx_news.settings

Additional open graph properties can be defined using TypoScript. Those are included in the the template partial EXT:news/Resources/Private/Partials/Detail/Opengraph.html.

The most important properties are filled automatically:

og:title
is filled with the field Alternative title or if that is empty with the Title.
og:description
is filled with the field Description or if that is empty with the Teaser.
og:image
is filled with the first preview image.
og:url
is filled with the current url.

Check out https://dev.twitter.com/cards/getting-started for more information regarding the twitter cards.

Default:

opengraph {
   site_name =  {$plugin.tx_news.opengraph.site_name}
   type = article
   locale =
   admins =
   twitter {
      card = {$plugin.tx_news.opengraph.twitter.card}
      site = {$plugin.tx_news.opengraph.twitter.site}
      creator = {$plugin.tx_news.opengraph.twitter.creator}
   }
}
Copied!

detail.media

detail.media

detail.media
type

array

Path

plugin.tx_news.settings

Configuration for media elements in the detail view.

Default:

detail.media {
   image {
      maxWidth = 282
      maxHeight =

      # If using fluid_styled_content
      lightbox {
         enabled = {$styles.content.textmedia.linkWrap.lightboxEnabled}
         class = {$styles.content.textmedia.linkWrap.lightboxCssClass}
         width = {$styles.content.textmedia.linkWrap.width}
         height = {$styles.content.textmedia.linkWrap.height}
      }
      # If using css_styled_content, use those settings
      # lightbox {
      #    enabled = {$styles.content.imgtext.linkWrap.lightboxEnabled}
      #    class = {$styles.content.imgtext.linkWrap.lightboxCssClass}
      #    width = {$styles.content.imgtext.linkWrap.width}
      #    height = {$styles.content.imgtext.linkWrap.height}
      #    rel = lightbox[myImageSet]
      # }
   }

   video {
      width = 282
      height = 300
   }
}
Copied!

detail.errorHandling

detail.errorHandling

detail.errorHandling
type

string

Path

plugin.tx_news.settings

Default

"showStandaloneTemplate,EXT:news/Resources/Private/Templates/News/DetailNotFound.html,404"

If no news entry is found, it is possible to use various types of error handling.

showStandaloneTemplate
A template is rendered. The syntax is showStandaloneTemplate,<path>,<errorCode>, for example showStandaloneTemplate,EXT:news/Resources/Private/Templates/News/DetailNotFound.html,404
redirectToListView
Redirect to the list view on the same page.
redirectToPage

Redirect to any page by using the syntax redirectToPage,<pageid>,<status>. This means e.g. redirectToPage,123,301 to redirect to the page with UID 123 and error code 301.

pageNotFoundHandler
The page not found handler defined in the site configuration is called.

Example: Show a custom not found template

If the current news record is not found, show the custom template instead and return the HTTP-code 404 (not found):

plugin.tx_news.settings.detail.errorHandling = showStandaloneTemplate,EXT:my_sitepackage/Resources/Private/Templates/NotFound.html,404
Copied!

Example: Redirect to page 123 if news record is not found

If the current news record is not found, forward to page 123 with the HTTP-code 301 (moved permanently):

plugin.tx_news.settings.detail.errorHandling = redirectToPage,123,301

Copied!

detail.checkPidOfNewsRecord

detail.checkPidOfNewsRecord

detail.checkPidOfNewsRecord
type

boolean

Default

If set, the detail view checks the incoming news record against the defined startingpoint.

If those don't match, the news record won't be displayed and detail.errorHandling applied.

detail.showMetaTags

detail.showMetaTags

detail.showMetaTags
type

boolean

Path

plugin.tx_news.settings

Default

1

If enabled, the meta tags including title, description and various open graph tags (defined in opengraph) are rendered.

detail.showPrevNext

detail.showPrevNext

detail.showPrevNext
type

boolean

Default

If enabled, links to the previous and next news records are shown

detail.registerProperties

detail.registerProperties

detail.registerProperties
type

string

Path

plugin.tx_news.settings

Default

keywords,title

This property is currently not used.

detail.showSocialShareButtons

detail.showSocialShareButtons

detail.showSocialShareButtons
type

boolean

Default

1

If the extension rx_shariff is installed and this option is enabled, the social share functionality provided by rx_shariff is shown.

You can install this extension with composer:

bash
composer req reelworx/rx-shariff
Copied!

list.media

list.media

list.media
type

array

Path

plugin.tx_news.settings

Configuration for media elements in the list view.

Default:

list.media {
   image {
      maxWidth = 100
      maxHeight = 100
   }
}
Copied!

list.paginate

list.paginate

list.paginate
type

array

Path

plugin.tx_news.settings

EXT:news uses a custom ViewHelper to render the pagination.

The following settings are available:

class
The class that should be used for the pagination
itemsPerPage
Define how many items are shown on one page.
insertAbove
Set it to 0 to hide the pagination before the actual news items.
insertBelow
Set it to 0 to hide the pagination after the actual news items.
maximumNumberOfLinks

If set, not all pages of the pagination are shown but only the given amount. Imagine 1000 news records and 10 items per page. This would result in 100 links in the frontend.

Default:

list.paginate {
   class = GeorgRinger\NumberedPagination\NumberedPagination
   itemsPerPage = 10
   insertAbove = 1
   insertBelow = 1
   maximumNumberOfLinks = 3
}
Copied!

list.rss

list.rss

list.rss
type

array

Path

plugin.tx_news.settings

Additional settings for the RSS view.

See the RSS configuration.

Default:

rss {
   channel {
      title = {$plugin.tx_news.rss.channel.title}
      description = {$plugin.tx_news.rss.channel.description}
      language = {$plugin.tx_news.rss.channel.language}
      copyright = {$plugin.tx_news.rss.channel.copyright}
      generator = {$plugin.tx_news.rss.channel.generator}
      link = {$plugin.tx_news.rss.channel.link}
   }
}
Copied!

search.fields

search.fields

search.fields
type

string

Path

plugin.tx_news.settings

Default

teaser,title,bodytext

Comma separated list of fields which are used for the search.

search.splitSearchWord

search.splitSearchWord

search.splitSearchWord
type

boolean

Path

plugin.tx_news.settings

Default

If set to 1, the search subject will be split by spaces and it will not only find the phrase but also if the search terms are scattered in a field.

As an example: Searching for hello world will give you as result also the news item with the title hello the world. The search terms must be found in the same field, which means that a news item with the world hello in the title and the word world in the bodytext won't be found.

TsConfig

This section covers all configurations that can be made with the TSconfig shipped by the extension news. If you are interested in what you can do with the general TsConfig in news records have a look at General TSconfig examples.

Every TSconfig configuration of extension news starts with tx_news..

General TSconfig

The general configuration covers options available during the creation and editing of news records.

Administration module

Configuration of the Web > News Administration module

Plugin configuration

This section covers settings which influence the news plugin

General configuration

The general configuration covers options available during the creation and editing of news records.

templateLayouts

templateLayouts

templateLayouts
Type
array
Path
tx_news

The select box Template Layout inside a plugin can be extended by using TSconfig. Contains an array with key-value pairs. It is possible to define Groups using the --div-- keyword.

allowedColPos
Limit a layout to a list of colPos values.

Examples: Add template layouts

Show 3 layout options with the specified key / value pairs.

tx_news.templateLayouts {
      1 = Foobar
      2 = Another one
      3 =  --div--,Group 2
      4 = Blub
}
Copied!

You can use this setting within the Fluid template by checking {settings.templateLayout}. See a complete example: Template selector tutorial.

By using the configuration allowedColPos it is possible to restrict a template layout to a specific list of colPos values.

tx_news.templateLayouts {
   1 = Foobar
   2 = Another one
   2.allowedColPos = 1,2,3
   3 =  --div--,Group 2
   4 = Blub
   4.allowedColPos = 0,1
}
Copied!

slugPrefix

slugPrefix

slugPrefix
Type
string
Path
tx_news

Configure the prefix shown before the slug field of the news record. The following options are available:

  • none: No prefix is shown
  • default: Default behaviour of the slug prefix which is the domain
  • An integer: URL to the detail page

Example: Show url to a detail page

The shown prefix will be a link to the provided detail page (uid 123).

# Example:
tx_news.slugPrefix = 123
Copied!

archive

archive

archive
Type
string
Path
tx_news

Use strtotime (see http://www.php.net/strtotime ) to predefine the archive date

Example: Set the archive date

Set the archive date on the the next friday:

# Example:
tx_news.predefine.archive = next friday
Copied!

tagPid

tagPid

tagPid
Type
integer
Path
tx_news

Besides the configuration in the Extension Configuration it is also possible to define the pid of tags created directly in the news record by using TSconfig:

Example: store new tags on page 123

Store new tags on page 123.

# Example:
tx_news.tagPid = 123
Copied!

categoryRestrictionForFlexForms

categoryRestrictionForFlexForms

categoryRestrictionForFlexForms
Type
bool
Path
tx_news

After defining the category restriction in the Extension Configuration it is also possible to restrict the categories in the news plugin. This needs to enabled by TsConfig:

# Example:
tx_news.categoryRestrictionForFlexForms = 1
Copied!

showContentElementsInNewsSysFolder

showContentElementsInNewsSysFolder

showContentElementsInNewsSysFolder
Type
bool
Path
tx_news

If a sys folder is configured with Contains Plugin: News, content elements are hidden on those pages in the page and list module. If the content elements should be shown, use the Page TsConfig.

# Example:
tx_news.showContentElementsInNewsSysFolder = 1
Copied!

Administration module

Configuration of the Web > News Administration module

Properties
Name Type
array
string
int
bool
bool
string, comma separated list of integers
integer
integer
bool
array

preselect

preselect

preselect
Type
array
Path
tx_news > module

Predefine the form in the administration module. The possible fields for the preselection are:

  • recursive
  • timeRestriction
  • topNewsRestriction
  • sortingField
  • sortingDirection
  • categoryConjunction
# Example:
tx_news.module {
   preselect {
      topNewsRestriction = 1
   }
}
Copied!

columns

columns

columns
Type
string
Path
tx_news > module
Default
teaser,istopnews,datetime,categories

Define a list of columns which are displayed in the administration module. Default is.

Example: Show the columns datetime, archive and author

tx_news.module.columns = datetime,archive,author
Copied!

defaultPid

defaultPid

defaultPid
Type
int
Path
tx_news > module

If no page is selected in the page tree, any record created in the administration module would be saved on the root page. If this is not desired, the pid can be defined by using defaultPid.<tablename>:

Example: Set default pid for new news records

New news records will be saved on the page with ID 123.

# Example
tx_news.module.defaultPid.tx_news_domain_model_news = 123
Copied!

localizationView

localizationView

localizationView
Type
bool
Path
tx_news > module
Default
1

Ability to disable the localizationView in the administration module. Example:

Example: Disable the localization view

tx_news.module.localizationView = 0
Copied!

controlPanels

controlPanels

controlPanels
Type
bool
Path
tx_news > module
Default
0

Display control panels to sort, hide and delete records in the administration module.

Example: Enable the control panels

tx_news.module.controlPanels = 1
Copied!

allowedCategoryRootIds

allowedCategoryRootIds

allowedCategoryRootIds
Type
string, comma separated list of integers
Path
tx_news > module

Reduce the shown categories by defining a list of root category IDs.

Example:

Example category tree

├── [10] Cat 1
├── [12] Cat 2
├   └──[13] Cat 2 b
├── [14] Cat 3
└── [15] Cat 4
Copied!
tx_news.module.allowedCategoryRootIds = 12,15
Copied!
Category tree shown

├── [12] Cat 2
├   └──[13] Cat 2 b
└── [15] Cat 4
Copied!

redirectToPageOnStart

redirectToPageOnStart

redirectToPageOnStart
Type
integer
Path
tx_news > module

If no page is selected, the user will be redirected to the given page.

Example: redirect the user to page 456

Redirect the user to the page with the uid 456, if no other page is chosen.

# Example:
tx_news.module.redirectToPageOnStart = 456
Copied!

allowedPage

allowedPage

allowedPage
Type
integer
Path
tx_news > module

If defined, limit the administration module to the given page and always redirect the user, no matter what defined in the page tree.

Example: Limit the news module to page 123

Always redirect the user to the page with the uid 123.

# Example:
tx_news.module.allowedPage = 123
Copied!

alwaysShowFilter

alwaysShowFilter

alwaysShowFilter
Type
bool
Path
tx_news > module

If defined, the administration module will always show the filter opened.

Example: Always show the filter

# Example:
tx_news.module.alwaysShowFilter = 1
Copied!

The user will be redirected to the page with the uid 123.

filters

filters

filters
Type
array
Path
tx_news > module

Define whether filters should be available or not. By default, all the filters are enabled. The available filters are:

  • searchWord
  • timeRestriction
  • topNewsRestriction
  • hidden
  • archived
  • sortingField
  • number
  • categories
  • categoryConjunction
  • includeSubCategories

Example: disable the filter of top news restriction

# Example:
tx_news.module {
   filters {
      topNewsRestriction = 0
   }
}
Copied!

Plugin configuration

This section covers settings which influence the news plugin.

Example: Remove the setting of flexforms

The following examples removes the field recursive from the plugin "Tag List".

# Example:
TCEFORM.tt_content.pi_flexform.news_taglist.sDEF {
   # As the dot is part of the fieldname, it needs to be escaped
   settings\.recursive.disabled = 1
}
Copied!

Events

Several events can be used to modify the behaviour of EXT:news. Check out the Events tutorial for examples on how to use them.

Available Events

When register to an event you can always access the class where the event is fired. For additional items see column "Access to" in the table below.

Event class Fired in class Access to Old Signal
ModifyDemandRepositoryEvent AbstractDemandedRepository    
CreateDemandObjectFromSettingsEvent NewsController    
NewsControllerOverrideSettingsEvent NewsController    
PluginPreviewSummaryEvent PluginPreviewRenderer    
NewsCheckPidOfNewsRecordFailedInDetailActionEvent NewsController getNews() checkPidOfNewsRecordFailedInDetailAction
NewsDateMenuActionEvent NewsController getAssignedValues() dateMenuAction (NewsController::SIGNAL_NEWS_DATEMENU_ACTION)
NewsDetailActionEvent NewsController getAssignedValues() detailAction (NewsController::SIGNAL_NEWS_DETAIL_ACTION)
NewsListActionEvent NewsController getAssignedValues() listAction (NewsController::SIGNAL_NEWS_LIST_ACTION)
NewsListSelectedActionEvent NewsController getAssignedValues() selectedListAction (NewsController::SIGNAL_NEWS_LIST_SELECTED_ACTION)
NewsSearchFormActionEvent NewsController getAssignedValues() searchFormAction (NewsController::SIGNAL_NEWS_SEARCHFORM_ACTION)
NewsSearchResultActionEvent NewsController getAssignedValues() searchResultAction (NewsController::SIGNAL_NEWS_SEARCHRESULT_ACTION)
AdministrationIndexActionEvent AdministrationController getAssignedValues() indexAction (AdministrationController::SIGNAL_ADMINISTRATION_INDEX_ACTION)
AdministrationNewsPidListingActionEvent AdministrationController getRawTree();getTreeLevel() newsPidListingAction (AdministrationController::SIGNAL_ADMINISTRATION_NEWSPIDLISTING_ACTION)
AdministrationExtendMenuEvent AdministrationController getMenu() createMenu
CategoryListActionEvent CategoryController getAssignedValues() listAction (CategoryController::SIGNAL_CATEGORY_LIST_ACTION)
TagListActionEvent TagController getAssignedValues() listAction (TagController::SIGNAL_TAG_LIST_ACTION)
NewsImportPostHydrateEvent NewsImportService getImportItem();getNews() postHydrate
NewsImportPreHydrateEvent NewsImportService getImportItem() preHydrate
NewsPostImportEvent NewsImportService getImportData()
NewsPreImportEvent NewsImportService getImportData()
CategoryImportPostHydrateEvent CategoryImportService getImportItem();getCategory() postHydrate

ViewHelpers reference

In order to use the ViewHelpers provided by this extension, you need to include them in the <html> tag of your template or partial:

<html xmlns:n="http://typo3.org/ns/GeorgRinger/News/ViewHelpers"
      xmlns:f="http://typo3.org/ns/TYPO3/CMS/Fluid/ViewHelpers"
      data-namespace-typo3-fluid="true">
Copied!

You can find all available ViewHelpers in the folder EXT:news/Classes/ViewHelpers.

All ViewHelpers

ExcludeDisplayedNewsViewHelper

ViewHelper to exclude news items in other plugins

Type: Basic

General properties

Name:

Type:

Description:

Default value:

* newsItem

Tx_News_Domain_Model_News

current news item

 

Examples

Basic example

Code:

<n:excludeDisplayedNews newsItem="{newsItem}" />

Copied!

Output:

None
Copied!

HeaderDataViewHelper

ViewHelper to render data in <head> section of website

Type: Basic

Examples

Basic example

Code:

<n:headerData>
      <link rel="alternate"
         type="application/rss+xml"
         title="RSS 2.0"
         href="{f:uri.page(pageType: settings.list.rss.channel.typeNum)}" />
</n:headerData>

Copied!

Output:

Added to the header: <link rel="alternate" type="application/rss+xml" title="RSS 2.0" href="uri to this page and type 9818" />
Copied!

LinkViewHelper

ViewHelper to render links from news records to detail view or page

Type: Tag Based

General properties

Name:

Type:

Description:

Default value:

accesskey

string

Keyboard shortcut to access this element

 

additionalAttributes

array

Additional tag attributes. They will be added directly to the resulting HTML tag.

 

class

string

CSS class(es) for this element

 

configuration

array

optional typolink configuration

Array

dir

string

Text direction for this HTML element. Allowed strings: "ltr" (left to right), "rtl" (right to left)

 

id

string

Unique (in this file) identifier for this HTML element.

 

lang

string

Language for this element. Use short names specified in RFC 1766

 

* newsItem

Tx_News_Domain_Model_News

current news object

 

onclick

string

JavaScript evaluated for the onclick event

 

settings

array

 

Array

style

string

Individual CSS styles for this element

 

tabindex

integer

Specifies the tab order of this element

 

title

string

Tooltip text of element

 

uriOnly

boolean

return only the url without the a-tag

 

Examples

Set an additional attribute

Available: class, dir, id, lang, style, title, accesskey, tabindex, onclick

Code:

<n:link newsItem="{newsItem}" settings="{settings}" class="a-link-class">fo</n:link>

Copied!

Output:

<a href="link" class="a-link-class">fo</a>


Copied!

Add additional parameters to the url

Code:

<n:link newsItem="{newsItem}" settings="{settings}" configuration="{additionalParams:'&tx_news_pi1[category]=111'}">fo</n:link>

Copied!

Output:

<a href="link&tx_news_pi1[category]=111">fo</a>
Copied!

MediaFactoryViewHelper

ViewHelper to show videos

Type: Basic

General properties

Name:

Type:

Description:

Default value:

* classes

string

list of classes which are used to render the media object

 

* element

Tx_News_Domain_Model_Media

Current media object

 

* height

integer

height

 

* width

integer

width

 

MetaTagViewHelper

ViewHelper to render meta tags

Type: Tag Based

General properties

Name:

Type:

Description:

Default value:

additionalAttributes

array

Additional tag attributes. They will be added directly to the resulting HTML tag.

 

content

string

Content of meta tag

 

forceAbsoluteUrl

boolean

If set, absolute url is forced

 

property

string

Property of meta tag

 

useCurrentDomain

boolean

If set, current domain is used

 

name

string

If set, the meta tag is built by using the attribute name="" instead of property

 

Examples

Basic Example: News title as og:title meta tag

Code:

<n:metaTag property="og:title" content="{newsItem.title}" />

Copied!

Output:

<meta property="og:title" content="TYPO3 is awesome" />


Copied!

Force the attribute "name"

Code:

<n:metaTag name="keywords" content="{newsItem.keywords}" />

Copied!

Output:

<meta name="keywords" content="news 1, news 2" />
Copied!

PaginateBodytextViewHelper

Paginate the bodytext which is very useful for longer texts or to increase

Type: Basic

General properties

Name:

Type:

Description:

Default value:

* as

string

name of property which holds the text

 

* currentPage

integer

Selected page

 

* object

Tx_News_Domain_Model_News

current news object

 

token

string

Token used to split the text

###more###

RenderMediaViewHelper

ViewHelper to render media from any content

Type: Basic

General properties

Name:

Type:

Description:

Default value:

news (required)

Tx_News_Domain_Model_News

The news post

 

imgClass

string

Add css class to images.

 

videoClass

string

Wrap videos in a div with this css class.

 

audioClass

string

Wrap audio files in a div with this css class

 

fileIndex

integer

index of image to start with

cropVariant

string

Select a cropping variant, in case multiple croppings have been specified or stored in FileReference

default

Examples

Basic usage

Use [media] in the RTE fields of a news. In Fluid tempate wrap rendering of text fields with the VieHelper.

Backend:

Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy
eirmod tempor invidunt ut labore et dolore magna aliquyam erat,
sed diam voluptua.

[media]

At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd
gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet.

[media]

Lorem    ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy
eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam
voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita
kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet.
Copied!

Code:

<n:renderMedia news="{newsItem}" imgClass="img-responsive" videoClass="video-wrapper" audioClass="audio-wrapper">
   <div class="news-text-wrap" itemprop="articleBody">
      <f:format.html>{newsItem.bodytext}</f:format.html>
   </div>
</n:renderMedia>
Copied!

Output:

Media tags in RTE of the text are replaced with images.
Copied!

TargetLinkViewHelper

ViewHelper to get the target out of the typolink

Type: Basic

General properties

Name:

Type:

Description:

Default value:

* link

string

   

Examples

Basic Example

{relatedLink.uri} is defined as "123 _blank"

Code:

<f:link.page pageUid="{relatedLink.uri}" target="{n:targetLink(link:relatedLink.uri)}">Link</Link>

Copied!

Output:

A link to the page with uid 123 and target set to "_blank"
Copied!

TitleTagViewHelper

ViewHelper to render the page title

Type: Basic

Examples

Basic Example

Render the content of the VH as page title

Code:

<n:titleTag>{newsItem.title}</n:titleTag>

Copied!

Output:

<title>TYPO3 is awesome</title>
Copied!

Format / NothingViewHelper

ViewHelper to render children which don't print out any actual content

Type: Basic

Examples

Basic example

Code:

 <n:format.nothing>
<n:titleTag>{newsItem.title}</n:titleTag>
Fobar
 </n:format.nothing>

Copied!

Output:

nothing
Copied!

ChangeLog

Please follow this link to know which bugs have been fixed in which version.

List of versions

12.3.0 - 5th March 2025

Regular release, please read the following notes carefully.

All Changes

This is a list of all changes in this release:

2025-02-15 [BUGFIX] Migrate getRecordOverlay to getLanguageOverlay in SimplePrevNextViewHelper (#2596) (#2611) (Commit 976fe593 by Fabian Gruber)
2025-02-15 [FEATURE] Add listPid to FlexForm of detail plugin (#2619) (Commit 43a692ae by h-e-l-l-o-w-o-r-l-d)
2025-02-15 [FEATURE] Add config to sort news in seo sitemap (#2620) (Commit d2c107e7 by Karsten Nowak)
2025-02-12 [TASK] Remove RealURL migration (#2598) (#2602) (Commit 4230e9c1 by jokumer)
2025-02-12 [BUGFIX] PopulateTagSlugs wizard must not rely on sorting field of tag-table (#2614) (Commit 8c0bdffd by Markus Klein)
2025-01-24 [BUGFIX] Retain datetime and labels for tt_content crdate and tstamp fields (#2608) (Commit 5ffc5664 by Ulrich Mathes)
2024-12-15 [DOCS] Remove TYPO3 11 compatibility of main branch (#2594) (Commit 0f969a3f by Simon Schaufelberger)
2024-12-15 [BUGFIX] Change the minus/plus pro FA icon class to the free icon class (#2592) (Commit 7701717e by jonathanpel)
2024-12-15 [DOCS] Show correct badges from TYPO3 version workflows (#2595) (Commit 4417e69c by Simon Schaufelberger)
2024-12-15 [TASK] Add TYPO3 Rector (#2580) (Commit a5efced6 by Simon Schaufelberger)
2024-11-28 [TASK] Normalize composer.json (#2587) (Commit 121c1051 by Simon Schaufelberger)
Copied!

This list has been created by using git log $(git describe --tags --abbrev=0)..HEAD --abbrev-commit --pretty='%ad %s (Commit %h by %an)' --date=short.

12.2.0 - 27th November 2024

Regular release, please read the following notes carefully.

Important changes

Changed behavior for TS settings.search.paginate.itemsPerPage

The TypoScript setting settings.search.paginate.itemsPerPage has been disabled in the default TypoScript setup. This makes it possible that the setting provied in the plugin configuration (FlexForms) is used. However, this uses the default backup of settings.list.paginate.itemsPerPage.

Deprecated hooks

The following hooks have been deprecated and will be removed with the next major version:

  • $GLOBALS['TYPO3_CONF_VARS']['EXT']['news']['Domain/Repository/AbstractDemandedRepository.php']['findDemanded']: use the event \GeorgRinger\News\Event\ModifyDemandRepositoryEvent
  • $GLOBALS['TYPO3_CONF_VARS']['EXT']['news']['Controller/NewsController.php']['overrideSettings']: use the event \GeorgRinger\News\Event\NewsControllerOverrideSettingsEvent
  • $GLOBALS['TYPO3_CONF_VARS']['EXT']['news']['Controller/NewsController.php']['createDemandObjectFromSettings']: use the event \GeorgRinger\News\Event\CreateDemandObjectFromSettingsEvent
  • $GLOBALS['TYPO3_CONF_VARS']['EXT']['news'][\GeorgRinger\News\Hooks\PluginPreviewRenderer::class]['extensionSummary']: use the event \GeorgRinger\News\Event\PluginPreviewSummaryEvent

Calling any of the aforementioned hooks will trigger deprecation log entries.

Support of PHP 8.4

PHP 8.4 is now officially supported.

Features

New events

Finally the last hooks of the extension are now available as event to follow the best practices of TYPO3 core.

The most used is $GLOBALS['TYPO3_CONF_VARS']['EXT']['news']['Domain/Repository/AbstractDemandedRepository.php']['findDemanded'] which is used to modify the query to fetch the news records. This is now available as \GeorgRinger\News\Event\ModifyDemandRepositoryEvent.

See above for a full list of available events.

All Changes

This is a list of all changes in this release:

2024-11-27 [TASK] Use iconIdentifier in module registration (#2586) (Commit 67bb6ca7 by Seb Red)
2024-11-26 [TASK] Apply AddErrorCodeToExceptionRector (#2585) (Commit 87186afa by Simon Schaufelberger)
2024-11-26 [BUGFIX] Replace indexed array keys for items by label and value tags (#2584) (Commit 84e67600 by Seb Red)
2024-11-26 [BUGFIX] Apply ExtbaseActionsWithRedirectMustReturnResponseInterfaceRector (#2581) (Commit 35fd445a by Simon Schaufelberger)
2024-11-26 [TASK] Import fully qualified class names (#2582) (Commit 6138efb4 by Simon Schaufelberger)
2024-11-26 [TASK] Apply SimplifyCheckboxItemsTCARector (#2583) (Commit ac5efdc7 by Simon Schaufelberger)
2024-11-25 [DOC] Update Bug Template to contain current vesions (#2578) (Commit 1e4c5245 by Lina Wolf)
2024-11-25 [TASK] Support PHP 8.4 (#2576) (Commit 085ecbdd by Georg Ringer)
2024-11-23 [TASK] Trigger errors for old hook usages (#2575) (Commit 9eba8a8f by Georg Ringer)
2024-11-23 [TASK] Remove unused use statement (Commit 98df1eda by Georg Ringer)
2024-11-23 [BUGFIX] Respect pagination itemsPerPage in search (Commit b7bb5547 by Georg Ringer)
2024-11-22 [DOC] Fix links to TSconfig (#2574) (Commit b9c5ae13 by Lina Wolf)
2024-11-22 [BUGFIX] fix proxy cache update required check in ClassCacheManager::reBuildSimple (#2570) (Commit 87bdbca2 by bahammes)
2024-11-22 [BUGFIX] Fix ExtensionLoaded VH #2572 (#2573) (Commit 1d16333c by Georg Ringer)
2024-11-22 [TASK] Add empty line (Commit f534ef92 by Georg Ringer)
2024-11-22 [FEATURE] Provide event NewsControllerOverrideSettingsEvent #2571 (Commit 44576967 by Georg Ringer)
2024-11-22 [FEATURE] Provide event CreateDemandObjectFromSettingsEvent #2567 (Commit c11b0155 by Georg Ringer)
2024-11-22 [TASK] Make csfixer happy (Commit 33cb657d by Georg Ringer)
2024-11-22 [FEATURE] Provide event ModifyDemandRepositoryEvent #2568 (Commit caf0de50 by Georg Ringer)
2024-11-20 [TASK] Rename event (Commit 01dfbdae by Georg Ringer)
2024-11-20 [FEATURE] Add event PluginPreviewSummaryEvent (Commit 362da131 by Georg Ringer)
2024-11-12 [TASK] Use direct callback function (speed improvement) (Commit dfdd02b5 by Simon Schaufelberger)
2024-11-12 [TASK] Use direct null comparison (Commit e751372c by Simon Schaufelberger)
2024-11-12 [TASK] Use brackets to clarify code execution (Commit 167bcc17 by Simon Schaufelberger)
2024-11-12 [TASK] Remove useless string concatenation (Commit 3f952201 by Simon Schaufelberger)
2024-11-12 [TASK] Use arrow function (Commit 1c936a9d by Simon Schaufelberger)
2024-11-12 [TASK] Remove casts as the method always return the expected type (Commit 0cbe3acb by Simon Schaufelberger)
2024-11-12 [TASK] Add non-breaking type annotations (Commit a3d10af0 by Simon Schaufelberger)
2024-11-12 [TASK] Improve doctype annotations (Commit 2cccd7be by Simon Schaufelberger)
2024-11-19 [TASK] Simplify TCA (Commit 6a418a68 by Georg Ringer)
2024-11-19 [DOC] Update readme (Commit 5aae7674 by Georg Ringer)
2024-11-18 [DOCS] Use page argument in routePath (Commit cff7ec14 by Simon Schaufelberger)
2024-11-17 [BUGFIX] Use distinct names for sets #2563 (Commit 625884a5 by Georg Ringer)
Copied!

This list has been created by using git log $(git describe --tags --abbrev=0)..HEAD --abbrev-commit --pretty='%ad %s (Commit %h by %an)' --date=short.

12.1.0 - 15th November 2024

This is the first release of the extension that supports TYPO3 12 and 13. This also means that the active support for TYPO3 11 has been stopped.

Breaking changes

No breaking changes known

Features

Improved suggest wizards in FlexForms

The suggest wizards in FlexForms now skip pages that are not reachable. The selection of a page for the detail view ignores doktypes like sysfolder.

This makes the life of editors easier - especially on bigger instances.

Tagged Data Processors

The usage of the data processors has been simplified by using their tags.

# old
10 = GeorgRinger\News\DataProcessing\AddNewsToMenuProcessor
20 = GeorgRinger\News\DataProcessing\DisableLanguageMenuProcessor
new
10 = add-news-to-menu
20 = disable-language-menu
Copied!

Site Set Support

The extension now supports site sets as drop in replacements for TypoScript includes.

TYPO3 13 only

Flag topnews records in backend list

If a record is marked as topnews, it is now highlighted in the backend list with a small blue border on the left side.

TYPO3 13 only

Add StatusInformation to pages with news

If a page contains a news plugin, a small icon is shown in the page tree to indicate this.

This feature is TYPO3 13 only and can be disabled in the global extension settings.

All Changes

This is a list of all changes in this release:

2024-11-13 [DOC] Release 11.4.3 (Commit da43144c by Georg Ringer)
2024-11-13 [BUGFIX] Fix functional tests (Commit 356c23fa by lina.wolf)
2024-11-13 [BUGFIX] Use language aspect in lieu of removed Typo3QuerySettings::setLanguageOverlayMode() (Commit 175e3e74 by lina.wolf)
2024-11-08 [DOC] ProxyClassGenerator - exclude class from dependency injection (Commit bf2658fc by Stig Nørgaard Færch)
2024-11-06 [FEATURE] Tag and alias for data processors (Commit 4be32601 by Eric Harrer)
2024-11-05 [FEATURE] Provide additional information to result of Live Search (Commit c34ea309 by Georg Ringer)
2024-11-05 [FEATURE] Make the page tree enhancement configurable (Commit eb739a69 by Georg Ringer)
2024-11-05 [TASK] Change highlight color of topnews in BE list (Commit 448ef5c8 by Georg Ringer)
2024-11-05 [BUGFIX] Fix potential notice #1776 (Commit d98a671d by Georg Ringer)
2024-11-05 [BUGFIX] Fix disableOverrideDemand checks for search actions (Commit ef840d3d by Georg Ringer)
2024-11-05 [DOC] Fix spaces in example (Commit 0099ca3e by Georg Ringer)
2024-11-05 [TASK] Make endtime setter handle null values (Commit b6da7a8b by Georg Ringer)
2024-11-05 [BUGFIX] Fix wrong values on flexform (Commit 317423d9 by Georg Ringer)
2024-11-05 [BUGFIX] Fix wrong values on flexform (Commit e4b7f4c5 by Georg Ringer)
2024-11-03 [BUGFIX] Change TCA behaviour for content_element relation (Commit 640dd340 by Georg Ringer)
2024-11-03 [TASK] Provide label for itemgroup (Commit a026acc1 by Georg Ringer)
2024-10-31 [FEATURE] Skip not reachable pages in suggest of fields in flexforms (Commit 38f9bde4 by Georg Ringer)
2024-11-03 [BUGFIX] Fix paths in sets #2549 (Commit e51faf3c by Georg Ringer)
2024-11-01 [TASK] Enable tests for v13 (Commit 4c8ce938 by Georg Ringer)
2024-11-01 [BUGFIX] Fix query for sqlite (Commit 783a59a1 by Georg Ringer)
2024-11-01 [TASK] Consistent behaviour of getDayOfDatetime (Commit 4497a3a9 by Georg Ringer)
2024-10-31 [BUGFIX] use addquerystring untrusted (Commit 4b3ca1f1 by Georg Ringer)
2024-10-31 [BUGFIX] Change search templates of TWB to get (Commit c1d85351 by Georg Ringer)
2024-10-31 [TASK] Fix cgl (Commit 95b22e7b by Georg Ringer)
2024-10-31 [BUGFIX] Handle deprecated cache tag management (Commit 516a0731 by Georg Ringer)
2024-06-07 Add hint on side effects when omitting limitToPages (Commit 0f322997 by Stefan)
2024-10-30 [TASK] Update csfixer rules (Commit 3b117bb9 by Georg Ringer)
2024-10-30 [TASK] Remove readonly from class (Commit 84612d26 by Georg Ringer)
2024-10-30 [FEATURE] Flag topnews records in backend list (Commit 30c4d6bf by Georg Ringer)
2024-10-30 [FEATURE] Add StatusInformation to pages with news (Commit 804c939b by Georg Ringer)
2024-10-30 [BUGFIX] Migrate cobj->getTreeList() in sitemap generation #2542 (Commit 2a8f7a5f by Georg Ringer)
2024-10-24 [TASK] Add relationship `manyToOne` for group fields with maxitems 1 (#2540) (Commit bb43d614 by Nikita Hovratov)
2024-10-21 [TASK] Check datefield field not only for not null (Commit 479287fa by Georg Ringer)
2024-10-21 [FEATURE] Add site sets as drop in replacements for TypoScript includes (#2536) (Commit b4075dba by Lina Wolf)
2024-10-21 [BUGFIX] Make the backend admin work #2534 (#2535) (Commit 031cb899 by Georg Ringer)
Copied!

This list has been created by using git log $(git describe --tags --abbrev=0)..HEAD --abbrev-commit --pretty='%ad %s (Commit %h by %an)' --date=short.

12.0.0 - 20th October 2024

This is the first release of the extension that supports TYPO3 12 and 13. This also means that the active support for TYPO3 11 has been stopped.

Breaking changes

No breaking changes known

All Changes

This is a list of all changes in this release:

2024-09-13 [BUGFIX] Remove outdated code (Commit 16c9970c by Georg Ringer)
2024-09-12 Merge remote-tracking branch 'origin/main' into 12-13 (Commit b058b703 by Georg Ringer)
2024-08-24 [BUGFIX] Correct count demand call #2217 (Commit d3156642 by Georg Ringer)
2024-08-24 Remove reference to AltPageTitleProvider from config (#2515) (Commit 9003bf73 by Česlav Przywara)
2024-08-24 [TASK] Remove outdated TypoScript files with .txt ending (#2518) (Commit f68c5163 by Lina Wolf)
2024-08-24 [BUGFIX] ogImage condition - don't render media of null (#2517) (Commit 60fcf3f5 by Rafał Jania)
2024-08-24 [BUGFIX] Fix failing runTests (#2520) (Commit 768112ec by Lina Wolf)
2024-07-31 [BUGFIX] Always render og:image if news has at least one image (#2510) (Commit 2ea58725 by Peter Kraume)
2024-07-29 [DOCS] Korrekt route names (#2122) (Commit b0a2d725 by Lina Wolf)
2024-07-29 [Docs] Remove TYPO3 9 from infobox (#2511) (Commit a3c990ac by Lina Wolf)
2024-07-23 [TASK] Fix cs issues (Commit 9084bdda by Georg Ringer)
2024-07-23 [TASK] Improve code of titletagVH (Commit f92eae5a by Georg Ringer)
2024-07-23 [TASK] Fix Icon deprecation statement (Commit 9598000e by Georg Ringer)
2024-07-23 [TASK] Fix Icon deprecation statement (Commit 843c1140 by Georg Ringer)
2024-07-23 [TASK] Remove RecordListQueryHook (Commit bfc3d57c by Georg Ringer)
2024-07-23 [TASK] Skip errors for ExtensionManagementUtility::addPageTSConfig (Commit f212b746 by Georg Ringer)
2024-07-23 [TASK] Use correct version (Commit 7ec11a5e by Georg Ringer)
2024-07-23 Prevent queries if pagination is deactivated (#2493) (Commit 4fd12065 by Stefan Frömken)
2024-07-23 [DOCS] Fix duplicate attribute "type" in section "Improved routing" of changelog v11.0.0 (#2502) (Commit 8dbf2be9 by Felix Heller)
2024-07-01 [TASK] Avoid implicitly nullable class method parameter (#2499) (Commit f60c1048 by Stefan Bürk)
2024-07-01 [TASK] Avoid implicitly nullable class method parameter (#2500) (Commit 1a996aeb by Stefan Bürk)
2024-06-10 [TASK] Migrate SchemaManager (Commit 1cf9a3cf by Georg Ringer)
2024-05-27 [DOC] Adopt linkhandler path (Commit b5deaff0 by Georg Ringer)
2024-05-24 [TASK] Simplify code in NewsRowInitializeNew (Commit 5b93f608 by Georg Ringer)
2024-05-22 [DOCS] Fix contents menu and other warnings (#2482) (Commit 05c237da by Lina Wolf)
2024-05-22 [TASK] Streamline Build/Scripts/runTests.sh (#2480) (Commit 9c74fd87 by Stefan Bürk)
2024-05-22 [TASK] Streamline `12-13` branch handling (#2481) (Commit 510c430a by Stefan Bürk)
2024-05-17 [DOCU] Add misc section for RSS feed (#2090) (Commit 7e6d8f8f by Stefan Frömken)
2024-05-17 [DOC] How to create links with PHP #2098 (Commit f8e776fc by Georg Ringer)
2024-05-17 [DOC] How to create links with PHP #2098 (Commit 019dd68f by Georg Ringer)
2024-05-17 [TASK] Remove switchablecontrolleractions from old flexform #2302 (Commit ed85c9c8 by Georg Ringer)
2024-05-17 [TASK] Remove switchablecontrolleractions from old flexform #2302 (Commit 0554e47d by Georg Ringer)
2024-05-16 [TASK] Fix possible notice (Commit 24d95d75 by Georg Ringer)
2024-05-16 [BUGFIX] Fix exception due missing check in ArgumentsViewHelper (Commit 8f2f7778 by Georg Ringer)
2024-05-14 [BUGFIX] 5th argument BU::wrapClickMenuOnIcon() must be an array (#2477) (Commit 14b5ffe8 by Christoph Lehmann)
2024-04-15 [DOC] Add v13 badge (Commit f38720cc by Georg Ringer)
2024-04-15 [DOC] Add v13 to readme (Commit fc9829ea by Georg Ringer)
2024-04-24 [TASK] Rename github workflow (Commit a8a9f74c by Georg Ringer)
2024-04-20 [TASK] Make csfixer happy (Commit ca97ab1f by Georg Ringer)
2024-04-20 [TASK] Revert change for timebeing (Commit 0b864011 by Georg Ringer)
2024-04-20 [TASK] Revert change for timebeing (Commit 63af20b4 by Georg Ringer)
2024-04-19 [TASK] Rector attributes (Commit ca281074 by Georg Ringer)
2024-04-19 [TASK] Rector UseServerRequestInsteadOfGeneralUtilityGetRector (Commit 2a7d8ef6 by Georg Ringer)
2024-04-19 [TASK] Rector MigrateGeneralUtilityGPRector (Commit 5b166cfc by Georg Ringer)
2024-04-19 [TASK] Rector MigrateConfigurationManagerGetContentObjectRector (Commit dc707397 by Georg Ringer)
2024-04-19 [TASK] Rector PrivatizeFinalClassPropertyRector, PrivatizeFinalClassMethodRector (Commit eed224cb by Georg Ringer)
2024-04-19 [TASK] Rector RemoveUnusedPrivateClassConstantRector (Commit fb55cfc1 by Georg Ringer)
2024-04-19 [TASK] Rector RemoveUnusedPrivateMethodParameterRector (Commit 5ed2ebae by Georg Ringer)
2024-04-19 [TASK] Rector RemoveNonExistingVarAnnotationRector (Commit e30fdfca by Georg Ringer)
2024-04-19 [TASK] Rector RemoveUnusedConstructorParamRector (Commit 32f7d580 by Georg Ringer)
2024-04-19 [TASK] Rector RemoveDoubleAssignRector (Commit 33249c6b by Georg Ringer)
2024-04-19 [TASK] Rector RemoveUnusedVariableAssignRector (Commit 3cfa8736 by Georg Ringer)
2024-04-19 [TASK] RemoveUnusedPrivateMethodRector (Commit 5eadab47 by Georg Ringer)
2024-04-19 [TASK] Rector RemoveAlwaysTrueIfConditionRector (Commit b71e4ece by Georg Ringer)
2024-04-19 [TASK] Rector SimplifyUselessVariableRector (Commit 5c1f4613 by Georg Ringer)
2024-04-19 [TASK] Rector ReadOnlyPropertyRector (Commit 179d8026 by Georg Ringer)
2024-04-19 [TASK] Rector MixedTypeRector (Commit 73cf522e by Georg Ringer)
2024-04-19 [TASK] Rector TernaryToNullCoalescingRector (Commit d0a97521 by Georg Ringer)
2024-04-19 [TASK] Rector IfIssetToCoalescingRector (Commit 30f9f687 by Georg Ringer)
2024-04-19 [TASK] Rector ChangeSwitchToMatchRector (Commit 6cc7213b by Georg Ringer)
2024-04-19 [TASK] Rector RemoveUnusedVariableInCatchRector (Commit 839f34a4 by Georg Ringer)
2024-04-19 [TASK] Rector StrStartsWithRector + StrContainsRector (Commit 26b6dc44 by Georg Ringer)
2024-04-19 [TASK] Rector StringClassNameToClassConstantRector (Commit 6ec07078 by Georg Ringer)
2024-04-19 [TASK] Rector TernaryToElvisRector (Commit d934a2d9 by Georg Ringer)
2024-04-19 [TASK] Rector: ClassConstantToSelfClassRector (Commit 0cc324b4 by Georg Ringer)
2024-04-18 [TASK] Cleanup AddNewsToMenuProcessor (Commit 1a31e755 by Georg Ringer)
2024-04-18 Revert "[TASK] Cleanup AddNewsToMenuProcessor" (Commit 2dc12b98 by Georg Ringer)
2024-04-18 [TASK] Cleanup AddNewsToMenuProcessor (Commit 1ac61f5b by Georg Ringer)
2024-04-18 [TASK] Simplify IfIsActiveViewHelper (Commit f792b047 by Georg Ringer)
2024-04-18 [TASK] Rector V (Commit 3bedaf25 by Georg Ringer)
2024-04-18 [TASK] Simplify ext_emconf (Commit ed6847ec by Georg Ringer)
2024-04-18 [TASK] Rector TypedPropertyFromStrictConstructorRector (Commit 6c33abd8 by Georg Ringer)
2024-04-18 [TASK] Improve code quality on 2 places (Commit 2c9d0e63 by Georg Ringer)
2024-04-18 [TASK] Use PHP-CS-Fixer (Commit ce0838e8 by Georg Ringer)
2024-04-18 [TASK] Rector IV (Commit 2aefbe8a by Georg Ringer)
2024-04-18 [TASK] Rector III (Commit 5e619a4e by Georg Ringer)
2024-04-18 [TASK] Rector II (Commit ed8b9dec by Georg Ringer)
2024-04-18 [TASK] Rector I (Commit 84cc7a88 by Georg Ringer)
2024-04-18 [TASK] Use new content element wizard (Commit 6da2edf5 by Georg Ringer)
2024-04-17 [TASK] Fix label for description (Commit 22e50dc1 by Georg Ringer)
2024-04-17 [TASK] Remove extra label of language field (Commit 2268481f by Georg Ringer)
2024-04-17 [TASK] Remove tceforms from xml (Commit 3232093d by Georg Ringer)
2024-04-17 Merge remote-tracking branch 'origin/12-13' into 12-13 (Commit b5192f03 by Georg Ringer)
2024-04-17 [TASK] Add typecast to PluginPreview (Commit b7f9478a by Georg Ringer)
2024-04-17 [TASK] Use proper type for FileReference (Commit 6ed96a27 by Georg Ringer)
2024-04-17 [TASK] Update getContentObjectData (Commit 19f46f08 by Georg Ringer)
2024-04-15 [TASK] Remove outdated comment (Commit a3811304 by Georg Ringer)
2024-04-15 [TASK] Remove not needed definitions for sql (Commit 915baf6e by Georg Ringer)
2024-04-15 [TASK] Add type to NewsController:initializeAction (Commit 0e8ada15 by Georg Ringer)
2024-04-15 [TASK] Update backend module registration (Commit e5783b1d by Georg Ringer)
2024-04-15 [TASK] Migrate _GET in Hook to proper API usage (Commit 06862140 by Georg Ringer)
2024-04-15 [TASK] Switch update wizard registration (Commit 5c36785b by Georg Ringer)
2024-04-15 [TASK] Remove InlineElementHook (Commit 575e63d3 by Georg Ringer)
2024-04-15 [TASK] Remove outdated PageViewQueryHook (Commit 5371b5b8 by Georg Ringer)
2024-04-15 [TASK] Adopt ci pipeline name (Commit b32d14a3 by Georg Ringer)
2024-04-15 [TASK] Make CSfixer happy (Commit fcb1d546 by Georg Ringer)
2024-04-15 [TASK] Update test matrix (Commit f3abe45f by Georg Ringer)
2024-04-15 [TASK] Change version requirements (Commit 7a8c0463 by Georg Ringer)
2024-04-15 [TASK] Update mappers (Commit 016ecf07 by Georg Ringer)
2024-04-15 [TASK] Cleanup PluginPermissionUpdater (Commit c3a2c079 by Georg Ringer)
2024-04-15 [TASK] Cleanup ClasssLoader (Commit 485bb56d by Georg Ringer)
2024-04-15 [TASK] Cleanup PageLayout JS (Commit 6965ba0a by Georg Ringer)
2024-04-15 [TASK] Cleanup PageLayout JS (Commit 5f9039e5 by Georg Ringer)
2024-04-15 [TASK] Cleanup CategoryRepository (Commit 641e3c21 by Georg Ringer)
2024-04-15 [TASK] Cleanup AddNewsToMenuProcessor (Commit 73c505f7 by Georg Ringer)
2024-04-15 [TASK] CLeanup csh + ext_tables (Commit 4190164a by Georg Ringer)
2024-04-15 [TASK] Cleanup SearchformVH (Commit c3de3616 by Georg Ringer)
2024-04-15 [TASK] TCA file cleanup (Commit dd705f52 by Georg Ringer)
2024-04-15 [TASK] Update tca for sys_file_reference (Commit ebf86bc0 by Georg Ringer)
2024-04-15 [TASK] TCA for sys_category images (Commit 227886b4 by Georg Ringer)
2024-04-15 [TASK] TCA for tca labels (Commit 523ae3e3 by Georg Ringer)
2024-04-15 [TASK] Adopt TCA for pages (Commit 5a5d85fc by Georg Ringer)
2024-04-15 [TASK] Adopt TCA required (Commit 4c9eeaca by Georg Ringer)
2024-04-15 [TASK] Cleanup TCA for link fields (Commit 4bbb96b0 by Georg Ringer)
2024-04-15 [TASK] Cleanup datetime + archive TCA (Commit 8181b2a4 by Georg Ringer)
2024-04-15 [TASK] Set TCA for crdate + tstamp (Commit 8de5ebf2 by Georg Ringer)
2024-04-15 [TASK] Remove usage of cruser_id (Commit 6d1350d7 by Georg Ringer)
2024-04-15 [TASK] Remove version check for seo fields (Commit 50c39616 by Georg Ringer)
Copied!

This list has been created by using git log $(git describe --tags --abbrev=0)..HEAD --abbrev-commit --pretty='%ad %s (Commit %h by %an)' --date=short.

11.4.3 - 13th November 2024

Breaking changes

No breaking changes!

All Changes

This is a list of all changes in this release:

2024-08-24 [BUGFIX] Correct count demand call #2217 (Commit 9ee31e9f by Georg Ringer)
Copied!

This list has been created by using git log $(git describe --tags --abbrev=0)..HEAD --abbrev-commit --pretty='%ad %s (Commit %h by %an)' --date=short.

11.4.2 - 14th May 2024

Important changes

This commit fixes an issue which came up with the latest release of TYPO3 core 11.5.37 & 12.4.15

Breaking changes

No breaking changes!

All Changes

This is a list of all changes in this release:

2024-05-14 [BUGFIX] 5th argument BU::wrapClickMenuOnIcon() must be an array (#2477) (Commit 1955dfb0 by Christoph Lehmann)
2024-05-01 Fix typo in docs Index.rst (#2471) (Commit b3278fed by Tobias Gaertner)
2024-05-01 Docs mention wrong linkHandler (#2473) (Commit 01e81f7f by Stefan)
2024-04-24 [BUGFIX] Return correct response in handleNoNewsFoundError (#2470) (Commit 8b62835d by Georg Ringer)
2024-04-24 [BUGFIX] Reduce the number of possible combinations of categorys  (#2378) (Commit 24d5d7ca by Oliver Eglseder)
2024-04-24 [DOCS] Modernize outdated conditions still using globalVar (#2469) (Commit e59cb08c by Eric Harrer)
2024-04-24 [TASK] Make CS right (Commit dac45973 by Georg Ringer)
2024-04-24 [DOCS] Switch to using the new cards directive (#2464) (Commit 96c44ced by Lina Wolf)
2024-04-24 [BUGFIX] Check if variable exists (Commit 7f7b0eaa by Georg Ringer)
2024-04-24 [BUGFIX] Use eval as source for eval (#2412) (Commit 30b7e05d by André Buchmann)
2024-04-24 [BUGFIX] Resolve rendering warnings (#2461) (Commit 1f7d30e3 by Lina Wolf)
2024-04-15 [DOC] Add v13 badge (Commit 2b318c40 by Georg Ringer)
2024-04-15 [DOC] Add v13 to readme (Commit d261e221 by Georg Ringer)
2024-03-07 [DOCS] Format documentation and fix a few bugs (#2360) (Commit 80ced4c3 by Simon Schaufelberger)
2024-03-07 [BUGFIX] Make inherited method visibility same as parent (#2365) (Commit f0e965fb by Sascha Nowak)
2024-03-06 Slash missing (#1990) (Commit 5e66db89 by Stephan Bauer)
2024-03-05 [BUGFIX] Fix notice (Commit 4c41691f by Georg Ringer)
2024-02-27 [BUGFIX] Fix more notices (Commit 244ecd13 by Georg Ringer)
2024-02-27 [BUGFIX] Fix notice in CategoryController (Commit 968328ab by Georg Ringer)
2024-02-19 [DOCS] Switch documentation rendering to PHP-based rendering (#2356) (Commit 1f6f2b32 by Lina Wolf)
2024-02-12 [DOC] Update dependencies of news_content_elements (Commit edb24bb9 by Georg Ringer)
Copied!

This list has been created by using git log $(git describe --tags --abbrev=0)..HEAD --abbrev-commit --pretty='%ad %s (Commit %h by %an)' --date=short.

11.4.1 - 8th February 2024

Breaking changes

No breaking changes!

All Changes

This is a list of all changes in this release:

2024-02-08 [TASK] Remove recordlist constraint (Commit 72ec2b17 by Georg Ringer)
Copied!

This list has been created by using git log $(git describe --tags --abbrev=0)..HEAD --abbrev-commit --pretty='%ad %s (Commit %h by %an)' --date=short.

11.4.0 - 8th February 2024

Features

Official support for PHP 8.3

Breaking changes

No breaking changes!

All Changes

This is a list of all changes in this release:

2024-02-07 [TASK] Prevent generation of `composer.lock` (#2348) (Commit 147838ca by Oliver Klee)
2024-01-29 [DOCS] Add RenderMedia ViewHelper to docs (#2343) (Commit 2c2af8b5 by Karsten Nowak)
2024-01-26 [BUGFIX] Make `symfony/console` an explicit dependency (#2315) (Commit 00550a8f by Oliver Klee)
2024-01-24 Revert "Apply fixes from StyleCI (#2335)" (Commit f9c43767 by Georg Ringer)
2024-01-23 [DOCS] Add start anchor to the index page (#2301) (Commit fc4fccea by Lina Wolf)
2024-01-23 [TASK] Categories tree select is to small (#2311) (Commit 0b40172a by Stephan Bauer)
2024-01-23 Apply fixes from StyleCI (#2335) (Commit a8c51ca2 by Georg Ringer)
2024-01-23 [BUGFIX] Uncaught TYPO3 Exception: #1476045117 (#2336) (Commit 04d0e993 by bugskarl)
2024-01-22 [TASK] Streamline the PHPUnit configuration files (#2327) (Commit 999e5918 by Oliver Klee)
2024-01-21 [DOC] Resolve documentation warnings (#2309) (Commit 018a6ca6 by Lina Wolf)
2024-01-21 [TASK] Properly define dependencies on system extensions (#2328) (Commit b5da14af by Oliver Klee)
2024-01-18 [BUGFIX] Raise the minimum 12LTS version (#2329) (Commit a8c2f4ba by Oliver Klee)
2024-01-18 Set correct variable type of `$importId` in method signatures (#2330) (Commit 5c21a126 by Albrecht Köhnlein)
2024-01-16 [FEATURE] Add support for PHP 8.3 (#2316) (Commit fd31533e by Oliver Klee)
2024-01-16 [TASK] Drop obsolete Composer conflicts (#2317) (Commit 4f2dd669 by Oliver Klee)
2024-01-16 [BUGFIX] Bump the development dependencies (#2322) (Commit e378b357 by Oliver Klee)
2024-01-16 [BUGFIX] Migrate usages of the PDO param type constants (#2318) (Commit 57007e49 by Oliver Klee)
2024-01-16 [BUGFIX] Use the PHP version from the CI matrix for the CGL checks (#2320) (Commit 58e648c1 by Oliver Klee)
2024-01-16 [BUGFIX] Ensure command compat with Symfony >= 7.x (#2313) (Commit 990150d7 by Andreas Kienast)
Copied!

This list has been created by using git log $(git describe --tags --abbrev=0)..HEAD --abbrev-commit --pretty='%ad %s (Commit %h by %an)' --date=short.

11.3.0 - 20th December 2023

Breaking changes

No breaking changes!

All Changes

This is a list of all changes in this release:

2023-12-06 [DOC] FIx doc for tag record #2284 (Commit d6eb4e9f by Georg Ringer)
2023-12-06 [TASK] Remove outdated widget code #2289 (Commit 11787630 by Georg Ringer)
2023-12-04 [TASK] Update locallang_db.xlf (#2285) (Commit 3f8a4475 by Georg Ringer)
2023-12-02 [DOC] Change section of quickstart regarding record creation (Commit 37d03dbb by Georg Ringer)
2023-12-02 [DOC] Imorove addon doc (Commit 93c3b941 by Georg Ringer)
2023-11-27 [DOCS] Make file and position for Linkhandler more clear (#2277) (Commit 01691444 by Lina Wolf)
2023-11-26 [BUGFIX] Make sure all model classes are extensible (#2272) (#2274) (Commit d67c56f3 by Philipp Kitzberger)
2023-11-23 [FEATURE] Allow to set a ttl for the rss feed (#2271) (Commit a4ee01d5 by Michael Krohn)
2023-11-21 [DOCS] Update link to TYPO3 core LinkHandler feature changelog (#2267) (Commit 162b9874 by Josef Glatz)
2023-11-17 [FEATURE] Allow configuring RSS fields in the constant editor (#2261) (Commit 64fcff3d by Michael Krohn)
2023-11-17 [TASK] Rename plugin names (and descriptions) (#2258) (Commit b7b9e9aa by Philipp Kitzberger)
2023-11-17 [DOCS] add a quick start section to the routing chapter (#2260) (Commit 7ef16f20 by Lina Wolf)
2023-11-17 [TASK] Add generic types (#2262) (Commit e04ea0d0 by Michael Krohn)
2023-11-06 [DOCS] Add tip for pagination routing (#2256) (Commit 53ee78ea by Karsten Nowak)
2023-11-01 [TASK] Make MariaDB the default for functional tests in `runTests.sh` (#2248) (Commit d6049634 by Oliver Klee)
2023-11-01 Check request object in conditions (#2252) (Commit 9f99a082 by Daniel Corn)
2023-10-25 [BUGFIX] Fix AddNewsToMenuProcessor for 12 #2236 (Commit 92788340 by Georg Ringer)
2023-10-25 [DOC] Add more examples to improve search #2240 (Commit 521ae056 by Georg Ringer)
2023-10-24 [CLEANUP] Add missing parameter signatures (#2237) (Commit 405acd9a by Philipp Kitzberger)
2023-10-23 [BUGFIX] Avoid nested content element get rendered twice (#2202) (Commit 0099d5b7 by Daniel)
2023-10-23 [BUGFIX] Fix CGL (#2232) (Commit 88e86c10 by Georg Ringer)
2023-10-19 [DOC] Update Index.rst / change use classes (#2229) (Commit 5e70c3e8 by wrock)
2023-10-15 [FEATURE] New plugin update eventlistener (Commit 5cff1fe7 by Georg Ringer)
2023-10-14 [TASK] Check if $GLOBALS['TYPO3_REQUEST'] exists in hook (Commit 6f75da95 by Georg Ringer)
2023-10-14 [TASK] Set correct return type (#2222) (Commit 5d52a73d by Michael Krohn)
2023-10-14 [TASK] Remove duplicated entry in test data set (#2214) (#2223) (Commit cc9effb3 by Michael Krohn)
2023-10-12 [DOC] Fix flexform example (#2219) (Commit b4b50f82 by Seb Red)
2023-10-10 [TASK] Only allow LTS core versions (#2215) (Commit 1c3d17df by Oliver Klee)
2023-10-09 [TASK] Bump the development dependencies (#2210) (Commit eaec7dd0 by Oliver Klee)
2023-10-09 [CLEANUP] Autoformat the code with the latest PHP-CS-Fixer version (#2209) (Commit 5b5b860a by Oliver Klee)
2023-10-09 [BUGFIX] Make a flaky test not timing-sensitive anymore (#2211) (Commit 38f5efc4 by Oliver Klee)
2023-10-09 [TASK] Add index for parent relation in link table (#2207) (Commit 6141a044 by Christoph Lehmann)
2023-10-05 [BUGFIX] Add setter function (#2205) (Commit 2b831173 by nlehmkuhl)
2023-09-18 [BUGFIX] Correctly create LanguageService in UpgradeWizard (#2199) (Commit 430acf6f by Nicole Cordes)
2023-09-18 [BUGFIX] Ensure only valid plugins are migrated in UpgradeWizard (#2200) (Commit 0ee60553 by Nicole Cordes)
2023-09-18 [DOCS] Clarify target core version for FlexForm syntax (#2198) (Commit a0490b29 by Markus Klein)
2023-09-18 [BUGFIX] Ensure correct context for ext:form flexform hook (#2197) (Commit db86a9c7 by Markus Klein)
2023-09-17 [BUGFIX] Allow orderDirection again for DateMenu plugin (#2196) (Commit e8d91834 by Markus Klein)
2023-09-17 [BUGFIX] Use FlexFormTools to clean up flexforms in plugin updater (#2173) (Commit aba80684 by Elias Häußler)
2023-09-15 [BUGFIX] Overwrite via tx_news_pi1[overwriteDemand][categories][] broken (#2194) (Commit 9c768c88 by Philipp Kitzberger)
2023-09-15 [TASK] Remove weird characters (#2193) (Commit e4154f1e by Philipp Kitzberger)
2023-09-07 [TASK] Remove redundant ORDER BY clause in default_sortby (#2189) (Commit d71e20ed by Nikita Hovratov)
2023-09-04 [DOC] Example how to override labels of pagination #2179 (Commit 0d181e85 by Georg Ringer)
2023-09-02 [TASK] Adopt license (Commit 342da4b8 by Georg Ringer)
Copied!

This list has been created by using git log $(git describe --tags --abbrev=0)..HEAD --abbrev-commit --pretty='%ad %s (Commit %h by %an)' --date=short.

11.2.0 - 30th August 2023

Breaking changes

No breaking changes!

All Changes

This is a list of all changes in this release:

2023-08-28 [BUGFIX] Fix undefined array key "single" in NewsRepository (#2181) (Commit 4376c5da by Nikita Hovratov)
2023-08-22 [BUGFIX] Fix notice in InlineElementHook (Commit 87b4bee5 by Georg Ringer)
2023-08-21 [DOC] Fix links and code examples in contribution guidelines (#2174) (Commit 595095af by Elias Häußler)
2023-08-21 [BUGFIX] Improve label check #2175 (Commit f141a796 by Georg Ringer)
2023-08-21 [TASK] Fix cgl (Commit 1a0eb2dc by Georg Ringer)
2023-08-21 [TASK] Fix error in fixtures (Commit d0aab632 by Georg Ringer)
2023-08-18 [BUGFIX] fix undefined array key warning (#2170) (Commit 0cc224cc by DaRealFreak)
2023-08-05 [TASK] Remove not needed TCA config internal_type (#2169) (Commit a8139806 by Gerrit Mohrmann)
2023-08-05 [BUGFIX] Protect sitemap against missing category record (#2095) (Commit 60487e8e by Jakub Zgirski)
2023-08-04 [TASK] Add support for TYPO3 v12 ES6 modules (#2168) (Commit 6b6d7662 by Benjamin Franzke)
2023-08-02 [DOC] Update example using TS #2156 (Commit 52a5e40c by Georg Ringer)
2023-08-02 [FEATURE] Ical detail view (Commit 5eba25f1 by Georg Ringer)
2023-08-02 [FEATURE] Deprecate Legacy sitemap and provide new solution (#2118) (Commit 0a16288f by Lina Wolf)
2023-07-28 [BUGFIX] Improve slug generation during imports (Commit 1acf0662 by Georg Ringer)
2023-07-24 [BUGFIX] Avoid undefined array key findCategoriesByImportSource (#2166) (Commit 28860d69 by Gerrit Mohrmann)
2023-07-24 [TASK] Remove TYPO3 defined check (Commit 73bca170 by Georg Ringer)
2023-07-24 Apply fixes from StyleCI (#2164) (Commit 46b74fc6 by Georg Ringer)
2023-07-24 [Task] Improved ObjectStorage return type with generic type parameter (#2096) (Commit 43866683 by Michael Krohn)
2023-07-24 [TASK] Fix CGL (Commit dca2b71f by Georg Ringer)
2023-07-24 [DOCS] How to create a Route Enhancer for the news sitemap (#2119) (Commit 2740eb31 by Lina Wolf)
2023-07-23 [TASK] Remove addQueryStringMethod usage in templates (#2160) (Commit 77fa563e by Torben Hansen)
2023-07-21 [BUGFIX] Avoid another notice (Commit 2c2417e2 by Georg Ringer)
2023-07-21 [BUGFIX] Fix possible notice (Commit b29aae1d by Georg Ringer)
2023-07-14 Update docs about 404 redirects (#2144) (Commit 2d8c41c7 by Torben Hansen)
2023-07-14 [BUGFIX] Remove non-existent FlexformHook from Services.php (#2145) (Commit 870ab589 by Markus Klein)
2023-07-14 [DOC] Load different partial in Template selector example (#2147) (Commit 85a274b0 by Stefan Melmuk)
Copied!

This list has been created by using git log $(git describe --tags --abbrev=0)..HEAD --abbrev-commit --pretty='%ad %s (Commit %h by %an)' --date=short.

11.1.2 - 14th July 2023

Breaking changes

No breaking changes!

All Changes

This is a list of all changes in this release:

2023-07-09 [TASK] Hide again content elements in list module (#2140) (Commit ec05e72a by Georg Ringer)
2023-07-09 [TASK] Avoid usage of GU::_GET() (Commit 58a70b08 by Georg Ringer)
2023-07-08 [TASK] Remove constructor's return type (Commit 9706e0d8 by Georg Ringer)
2023-07-08 [BUGFIX] RSS example: News Plugins now use the "Generic" template (#2137) (Commit 18fc36a8 by ghermens)
2023-07-07 [FEATURE] Add custom static language mapper (Commit ccf922f3 by Georg Ringer)
2023-06-27 [Bugfix] Allow media files for news again (#2133) (Commit b4978880 by Timo Webler)
Copied!

This list has been created by using git log $(git describe --tags --abbrev=0)..HEAD --abbrev-commit --pretty='%ad %s (Commit %h by %an)' --date=short.

11.1.1 - 26th June 2023

Breaking changes

No breaking changes!

All Changes

This is a list of all changes in this release:

2023-06-26 [BUGFIX] Properly handle ObjectStorage in tt_content domain model (#2132) (Commit 8a282b8a by Eric Chavaillaz)
Copied!

This list has been created by using git log $(git describe --tags --abbrev=0)..HEAD --abbrev-commit --pretty='%ad %s (Commit %h by %an)' --date=short.

11.1.0 - 23rd June 2023

Breaking changes

No breaking changes!

Important features

Support of SlidingWindowPagination

SlidingWindowPagination is a pagination implementation since TYPO3 v12 which is identical to the pagination brought to you by https://packagist.org/packages/georgringer/numbered-pagination.

The new pagination is now also supported within EXT:news

Support if in dataprocessors

For more flexibility (and avoidance of overhead/errors), the if property allows limiting DataProcessors to specific situations (e.g. the presence of a newId via if.isTrue.data = GP:tx_news_pi1|news).

All Changes

This is a list of all changes in this release:

2023-06-23 [TASK] Enrich updated wizard for EXT:eventnews (Commit 9ecc702b by Georg Ringer)
2023-06-20 [CLEANUP] Fix code style issues (#2129) (Commit adf3e73f by Oliver Klee)
2023-06-20 [BUGFIX] Create proper canonical URLs for the single view (#2128) (Commit aacad5ca by Oliver Klee)
2023-06-16 [TASK] Improve hook of PluginPreviewRenderer (Commit 4a46f2b6 by Georg Ringer)
2023-06-01 [BUGFIX] Use splat-operator on logicalAnd() within TagRepository (#2121) (Commit 0c1d094c by Matthias Vossen)
2023-05-17 [TASK] Change TtContent Image and Media to lazy ObjectStorage (#2115) (Commit 875fa6ee by Thomas Lüder)
2023-05-15 Apply fixes from StyleCI (#2114) (Commit 9ad9ea75 by Georg Ringer)
2023-05-15 Spelling Fix (#2113) (Commit a8cbb27b by Moritz Hacker)
2023-05-10 [FEATURE] Support SlidingWindowPagination #2101 (Commit 18f633cc by Georg Ringer)
2023-05-10 [DOC] Improve extend flexform snippet (Commit eece3183 by Georg Ringer)
2023-05-10 [BUGFIX] sys_category -> images column TCA configs fixed (#2104) (Commit 406701a1 by Mohsin Khan)
2023-05-09 Update Index.rst (#2102) (Commit f6a93cb2 by Alexander Obert)
2023-05-09 [TASK] Ensure working `runTests.sh` and CI (#2105) (Commit 66d2a936 by Stefan Bürk)
2023-04-21 [DOC] Add missing closing bracket in example (#2091) (Commit 9c4ab109 by Myrmod)
2023-04-19 [BUGFIX] Split NewsAliasMapper into dedicated classes (#2088) (Commit 644326a0 by Markus Klein)
2023-04-18 [FEATURE] Support `if` in dataprocessors (#2075) (Commit c299bb8a by Julian Hofmann)
2023-04-18 [TASK] Fix CGL (#2079) (Commit 10a464e1 by Sybille Peters)
2023-04-17 [TASK] Use current standard for web-dir (#2078) (Commit 11a3634c by Sybille Peters)
2023-04-16 [TASK] Use core-testing-* images from ghcr.io (#2081) (Commit 26053a58 by Stefan Bürk)
2023-04-13 [BUGFIX] Show news detail in insert record ce (#2063) (Commit 071fc9df by buepro)
2023-04-13 [DOC] Change FlexForm tutorial to work with TYPO3 v12 (#2065) (Commit f3fe1995 by Tim Dreier)
2023-04-11 Use `if` with DisableLanguageMenuProcessor (#2066) (Commit 96269184 by Julian Hofmann)
2023-04-11 [BUGFIX] Fix wrong mockings in tests (Commit c25f9485 by Georg Ringer)
2023-03-29 [BUGFIX] Fix typeerror for slugprefix #2056 (Commit b0f0dd0a by Georg Ringer)
2023-03-29 [DOC] Fix example of ts inclusion #2054 (Commit b1ab7867 by Georg Ringer)
2023-03-28 Remove requirements from route path (#2041) (Commit 7b63e98d by Stefan Frömken)
2023-03-28 Fix Warning: Undefined array key "switchableControllerActions" (#2047) (Commit b11bfd57 by Dennis Metz)
2023-03-28 [TASK] Support new TCA select format (#2049) (Commit 8ec0282f by Georg Ringer)
2023-03-28 [TASK] Use correct type in test (Commit 593c659d by Georg Ringer)
2023-03-19 [FEATURE] Add attribute  to MetaTagVh (#2043) (Commit aa4c97bd by Georg Ringer)
2023-03-15 [DOC] Change example of news by TS rendering (Commit 43fbc213 by Georg Ringer)
2023-03-15 [DOC] Replace usage of switchablecontrolleractions from docs (Commit 271a3f65 by Georg Ringer)
2023-03-15 [BUGFIX] Avoid cycle in ContentElementWizard (Commit 3f35963f by Georg Ringer)
2023-03-14 The order of SEO page title (#2036) (Commit cc4806ad by Zellwerker)
2023-03-14 [BUGFIX] Fix notice in CategoryImportService (Commit 028bceb0 by Georg Ringer)
2023-03-13 [BUGFIX] skip incomplete news plugins in plugin updater (#2030) (Commit 1c40a0a8 by Andreas Kießling)
2023-03-09 [BUGFIX] Fix uribuilder in SearchFormViewHelper #2023 (Commit 6cf1c422 by Georg Ringer)
2023-03-09 [BUGFIX] Fix PHP8 notice (Commit 2d0171e6 by Georg Ringer)
Copied!

This list has been created by using git log $(git describe --tags --abbrev=0)..HEAD --abbrev-commit --pretty='%ad %s (Commit %h by %an)' --date=short.

11.0.0 - 9th March 2023

This is the first release of the extension that supports TYPO3 12 and 11. This also means that the active support for TYPO3 10 (EXT:news v9) has been stopped.

Breaking changes

Even though a new major version has been released, there is only one important change which has a couple of various consequences:

Split plugins into separate plugins

With the removal of the so called "SwitchableControllerActions" in TYPO3 12, the plugin of EXT:news has been splitted into separate plugins. This means that every selection in the former flexform field "What to display" is now a separate plugin.

An updated wizard in the Install Tool is available to migrate the plugins to the new plugins.

Permission configuration

Due to the plugin splitting, the access permissions must be adopted as not only the plugin news_pi1 must be allowed but all various plugins an editor is allowed to use.

An updated wizard in the Install Tool is available to migrate the permissions to the new plugins.

Changed plugin registration

Instead of using the field CType with list and list_type with news_pi1, only the field CType` is now used:

  • news_pi1: article list view + detail view
  • news_newsliststicky: article list view with doesn't switch to a detail view
  • news_newsdetail: article detail view
  • news_newsselectedlist: selected list of articles
  • news_newsdatemenu: date menu of articles
  • news_newssearchform: search form
  • news_newssearchresult: search result
  • news_categorylist: category listing
  • news_taglist: tag listing

Please adopt your code if you e.g. select plugins based on the CType or if modify the TCA of the plugin element.

Features

Improved routing

With the change b8e2b3ea the routing configuration has been simplified.

# before
aspects:
  news-title:
     type: PersistedAliasMapper
     tableName: tx_news_domain_model_news
     routeFieldName: path_segment

# now
aspects:
   news-title:
     type: NewsTitle
Copied!

Additionally, if a record can't be retrieved for the given slug (e.g. because it has been deleted), the controller can now show the fallback again.

Optional namespaces for plugins

As a result, the plugins can now also be configured more independently from each other by using the optional custom namespaces:

plugin {
   tx_news_newsliststicky.settings {
      myCustomSetting = 1
   }

   tx_news_newsdetail.settings {}
   tx_news_newsselectedlist.settings {}
   tx_news_newsdatemenu.settings {}
   tx_news_categorylist.settings {}
   tx_news_newssearchform.settings {}
   tx_news_newssearchresult.settings {}
   tx_news_taglist.settings {}
}
Copied!

Support of PostgreSQL

PostgreSQL is now supported as database backend. This means that the extension can be used with PostgreSQL as well as MySQL and MariaDB.

All Changes

This is a list of all changes in this release:

2023-03-09 [DOC] Cleanup readme.md (Commit 06543a51 by Georg Ringer)
2023-03-09 [DOC] Clarify version information (Commit 9b8a0e87 by Georg Ringer)
2023-03-08 Support of TYPO3 v12 (#2022) (Commit 2f8c4b03 by Georg Ringer)
2023-02-19 Support for php 8.2 (Commit 80145a6d by Georg Ringer)
2023-02-19 [BUGFIX] Avoid dependency conflict with core requirements (Commit 62455558 by Stefan Bürk)
2023-02-17 [TASK] Xclass ExtensionService of extbase (Commit 259631ff by Georg Ringer)
2023-02-16 [TASK] Require typo3/cms-composer-installers 3.1.3 for PHP 8.2 compatibility (Commit 97c530cf by Markus Klein)
2023-02-16 [TASK] Make php-csfixer happy (Commit 599ef39a by Georg Ringer)
2023-01-12 [FEATURE] Support EXT:sys_reaction (Commit 34309fea by Georg Ringer)
2023-01-11 [FEATURE] Migrate plugin permissions (Commit 6238d17b by Georg Ringer)
2022-12-28 [DOC] Start release notes (Commit b4dbee4f by Georg Ringer)
2022-12-14 [TASK] Simplify error handling (Commit 1651e7e5 by Georg Ringer)
2022-12-13 [TASK] Use same namespace for all plugins (Commit ff9983f1 by Georg Ringer)
2022-12-13 [BUGFIX] Fix call in CategoryRepository (Commit 70900efd by Georg Ringer)
2022-11-28 [BUGFIX] Order news list by sorting is missing (Commit d256ca92 by Henrik Ziegenhain)
2022-11-28 [BUGFIX] Order news list by sorting is missing (Commit 175662c5 by Henrik Ziegenhain)
2022-11-24 Merge remote-tracking branch 'origin/main' into 11-12 (Commit 8bb71c5a by Georg Ringer)
2022-11-24 [BUGFIX] Order news list by sorting is missing (Commit a2348223 by Henrik Ziegenhain)
2022-11-22 [TASK] Show count of plugins to be updated (Commit c4e2f60b by Georg Ringer)
2022-11-22 [FEATURE] Updater for plugins (Commit 7f8b6f30 by Georg Ringer)
2022-11-20 [BUGFIX] Fix datemenu label (Commit 7751c5e2 by Georg Ringer)
2022-11-15 [TASK] Force 11.5.19 to avoid regression of 11.5.18 (Commit f52b8468 by Georg Ringer)
2022-11-14 [TASK] Improve wording of plugin selection (Commit 99766863 by Georg Ringer)
2022-11-14 [BUGFIX] Make datemenu work (Commit 4d5c0450 by Georg Ringer)
2022-11-12 [TASK] Enable postgres functional testing in GitHub Action workflow (Commit ade6337b by Stefan Bürk)
2022-11-11 [!!!][TASK] Remove not needed FlexformHook (Commit a5c59a26 by Georg Ringer)
2022-11-10 [TASK] Set minimum version to 11.5.18 (Commit af0fffb5 by Georg Ringer)
2022-11-10 [TASK] Add .php-cs-fixer.cache to gitignore (Commit cb6743a0 by Georg Ringer)
2022-11-10 [TASK] Improve csfixer (Commit d5a91e33 by Georg Ringer)
2022-11-10 [TASK] Make cgl happy (Commit bab2890a by Georg Ringer)
2022-11-09 [TASK] Support postgres (Commit 635c0c94 by Georg Ringer)
2022-11-04 [TASK] Ensure unique docker-compose name for runTests.sh execution (Commit 0ae07522 by Stefan Bürk)
2022-11-04 [TASK] Add unit tests execution to GitHub Action workflows (Commit b0798263 by Stefan Bürk)
2022-11-03 [TASK] Ensure code files follows cgl rules (Commit 8fe9ed21 by Stefan Bürk)
2022-11-03 [TASK] Implement coding-style guideline guard (Commit ff376ae7 by Stefan Bürk)
2022-11-03 [BUGFIX] Fix update wizard DB queries (Commit 4e6ef7ab by Georg Ringer)
2022-11-03 [BUGFIX] Remove unused class (Commit 91d387be by Georg Ringer)
2022-11-03 [TASK] Ignore more false positives of extension scanner (Commit f5f5e56b by Georg Ringer)
2022-11-01 Apply fixes from StyleCI (Commit 9327a28e by StyleCI Bot)
2022-11-01 [TASK] Introduce Build/Scripts/runTests.sh as testing wrapper (Commit c096f4b3 by Stefan Bürk)
2022-11-01 [BUGFIX] Avoid PHP8.1 error if null is passed for int method argument (Commit 4cf87d59 by Stefan Bürk)
2022-11-01 [BUGFIX] Avoid incorrect TCA language type configuration (Commit 7e36261a by Stefan Bürk)
2022-11-01 [TASK] Remove old "ci" workflow (Commit f8a9cfb1 by Stefan Bürk)
2022-11-01 [TASK] Avoid dependency as non-dev and dev dependency (Commit d00217ba by Stefan Bürk)
2022-11-01 [BUGFIX] Avoid `Cannot unpack array with string keys` error (Commit 614811f1 by Stefan Bürk)
2022-11-01 [TASK] Avoid prophecy in skipped TagControllerTest (Commit 888a23df by Stefan Bürk)
2022-11-01 [TASK] Move php-cs-fixer configuration (Commit 404e6b38 by Stefan Bürk)
2022-11-01 [TASK] Add typo3/testing-framework as dev dependency (Commit a4597ba1 by Stefan Bürk)
2022-11-01 [TASK] Remove unused dev dependency `php-coveralls` (Commit f179cbf0 by Stefan Bürk)
2022-11-01 [TASK] Add .idea and .fleet folders to .gitignore (Commit 455b52df by Stefan Bürk)
2022-11-01 [TASK] Remove wildly distributed duplicates of tests configs (Commit 2050d267 by Stefan Bürk)
2022-11-01 [TASK] Disable GitHub Action workflow jobs (Commit 7523183e by Stefan Bürk)
2022-10-29 [TASK] Use ContextualFeedbackSeverity::INFO if available (Commit f95d0a30 by Georg Ringer)
2022-10-29 [!!!][TASK] Remove the import controller (Commit be192a72 by Georg Ringer)
2022-10-29 [TASK] Remove usage of objectmanager (Commit 69f7ddce by Georg Ringer)
2022-10-29 [TASK] Remove outdated usage of ::getInstance (Commit f095a50f by Georg Ringer)
2022-10-29 [TASK] Skip false positives in extension scanner (Commit 3216cf4f by Georg Ringer)
2022-10-29 [BUGFIX] Fix test (Commit eb10333c by Georg Ringer)
2022-10-29 [BUGFIX] Force editlink to be a string (Commit 2128ee75 by Georg Ringer)
2022-10-29 [TASK] Migrate to withFormat (Commit 6497cf5f by Georg Ringer)
2022-10-29 [TASK] Simplify code in LinkViewHelper (Commit e2312f7e by Georg Ringer)
2022-10-29 [TASK] Proper initilization of RendererRegistry (Commit dcd6b70a by Georg Ringer)
2022-10-29 [TASK] Let extension scanner skip implementation of QueryGenerator (Commit 10ce1b97 by Georg Ringer)
2022-10-29 [TASK] Remove usage of TYPO3_mode from Utility\Page (Commit 99df8a6c by Georg Ringer)
2022-10-29 [TASK] Migrate ExtensionManagementUtility::allowTableOnStandardPages (Commit 3eb33fd9 by Georg Ringer)
2022-10-29 [TASK] Let extension scanner skip handled issues in SearchFormViewHelper (Commit 33ca5f9d by Georg Ringer)
2022-10-29 [!!!][TASK] The ViewHelper IncludeFileViewHelper has been removed (Commit 29285166 by Georg Ringer)
2022-10-29 [TASK] Use own implementation of GeneralUtility::rmFromList (Commit 9e88753d by Georg Ringer)
2022-10-29 [TASK] Use own implementation of the QueryGenerator (Commit ccbd8360 by Georg Ringer)
2022-10-29 [TASK] Remove non needed typo3_mode call (Commit 11523181 by Georg Ringer)
2022-10-29 [TASK] let extension scanner skip a class (Commit 26c8ee15 by Georg Ringer)
2022-10-29 [TASK] Migrate to forwardResponse (Commit 99b05012 by Georg Ringer)
2022-10-29 [TASK] Replace calls to orX & andX (Commit 66ba7377 by Georg Ringer)
2022-10-29 [TASK] Let extension scanner skip fixed deprecated usage (Commit 1510ed74 by Georg Ringer)
2022-10-29 [TASK] Replace hook modifyQuery for pagemodule (Commit bd4675d1 by Georg Ringer)
2022-10-29 [TASK] Skip CSH for 12+ (Commit c5c50d45 by Georg Ringer)
2022-10-29 [TASK] Replace usage of tceformsInlineHook (Commit 8a2691ef by Georg Ringer)
2022-10-29 [!!!] Remove contentElementPreview (Commit 7c775efe by Georg Ringer)
2022-10-29 [BUGFIX] Use correct error response (Commit bbee02d1 by Georg Ringer)
2022-10-29 [TASK] Change preview rendering (Commit dc697be9 by Georg Ringer)
2022-10-29 [TASK] Unify icon names (Commit 2b8376e7 by Georg Ringer)
2022-10-28 [TASK] Followup, allow it as plugin.. (Commit 0daa22cf by Georg Ringer)
2022-10-28 [TASK] Require sbuerk/typo3-cmscomposerinstallers-testingframework-bridge (Commit ab8c8875 by Georg Ringer)
2022-10-28 [TASK] Allow 12 in tests (Commit 93bba8cc by Georg Ringer)
2022-10-28 [TASK] Raise testing framework (Commit 4d3a2cf6 by Georg Ringer)
2022-10-28 [BUGFIX] Update queries (Commit 700d2b22 by Georg Ringer)
2022-10-28 [TASK] Migrate ExtensionManagementUtility::getFileFieldTCAConfig (Commit d5998e15 by Georg Ringer)
2022-10-28 [TASK] Migrate TCA (Commit 96a7fbed by Georg Ringer)
2022-10-28 [BUGFIX] Fix typo in fixture (Commit 81a542ee by Georg Ringer)
2022-10-28 [TASK] Update queries + unit tests (Commit 8c73c1bb by Georg Ringer)
2022-10-28 [BUGFIX] Fix icons (Commit 0291fc73 by Georg Ringer)
2022-10-28 [TASK] Add invidiual icons for content elements (#1893) (Commit c6d55178 by Malte Riechmann)
2022-10-26 [TASK] Migrate DB call (Commit 928dcba7 by Georg Ringer)
2022-10-26 [TASK] Migrate missing controller pieces (Commit 35d8301e by Georg Ringer)
2022-10-26 [TASK] 1st cleanup of FlexformHook (Commit b2721f93 by Georg Ringer)
2022-10-26 [TASK] Update flexforms (Commit 85ac6ff7 by Georg Ringer)
2022-10-26 Apply fixes from StyleCI (#1894) (Commit 4c885f6a by Georg Ringer)
2022-10-25 [TASK] Move test base to csv (Commit c7603d23 by Georg Ringer)
2022-10-25 [!!!][WIP][FEATURE] Switch to plugins instead of switchable controller actions" (Commit 2a3eda69 by Georg Ringer)
2022-10-12 [TASK] Avoid usage of objectmanager (Commit 8a086688 by Georg Ringer)
2022-10-12 [TASK] Switch to proper response in actions (Commit fb367c3e by Georg Ringer)
2022-10-12 [TASK] Remove leftover of tca (Commit 8b3e2772 by Georg Ringer)
2022-10-12 [TASK] Use other variable name for icons (Commit 4ea14028 by Georg Ringer)
2022-10-12 [TASK] Remove t3ver_ fields from ext_tables.sql (Commit 01b540c8 by Georg Ringer)
2022-10-12 [TASK] Remove tca showRemovedLocalizationRecords option (Commit c31ad45c by Georg Ringer)
2022-10-12 [TASK] Remove ctrl|thumbnail usage (Commit 846970f5 by Georg Ringer)
2022-10-12 [TASK] Convert tca sys_language_uid (Commit a566f9e0 by Georg Ringer)
2022-10-12 [TASK] Remove not needed check (Commit 791969b5 by Georg Ringer)
2022-10-12 [TASK] Set correct version constraints (Commit 8cdf6b7d by Georg Ringer)
2022-10-12 [TASK] Rename mode (Commit ab66a58b by Georg Ringer)
2022-10-12 [TASK] Move icons (Commit e2532645 by Georg Ringer)
2023-03-09 [DOC] Update badges in readme (Commit ba86b8ef by Georg Ringer)
2023-03-07 [DOC] Add TsCode snippets to documentation about how to reduce allowed cont… (#2021) (Commit d47ed617 by Patrick Crausaz)
2023-03-06 Update "requirements" indentation for DateManu (#2020) (Commit 7e07114a by mtness)
2023-02-28 [BUGFIX] prevent error in cleanup:deletedrecords command (#2012) (Commit 202051a2 by Andreas Kießling)
2023-02-24 Correct small typo (#2015) (Commit 005a9c6b by Myrmod)
2023-02-17 Fix Typo (Commit f4e0c3f6 by Myrmod)
2023-02-01 Update README.md (Commit f95d8f3d by Georg Ringer)
2023-01-30 [BUGFIX] Check for valid recordId before generating URL (Commit 8cbed9b8 by Julian Hofmann)
2023-01-23 Update Example Template Multi Category Selection (Commit 1802b367 by lauralang)
2023-01-17 Loading Issue with large category tree backwards compatibility (Commit 8acdc810 by Alexander Bohn)
2023-01-09 Revert "Loading Issue with large category tree" (Commit 8d625392 by Alexander Bohn)
2023-01-09 Loading Issue with large category tree (Commit 3b50db4a by Alexander Bohn)
2022-12-21 [BUGFIX] Fix notice in LinkHandlerTargetService (Commit 7b474e18 by Georg Ringer)
2022-12-14 [DOC] Add section about render content with b13/container and example TypoScript lib (Commit a127506e by Manuel Munz)
2022-12-12 [BUGFIX] fix undefined array key warnings (Commit 344ab7e8 by Johannes Kasberger)
2022-12-09 [DOC] Add EXT:news_seo to manual (Commit b056d6ae by Georg Ringer)
2022-12-07 [TASK] Remove superfluous TypoScript setting googlePlusLocale (Commit cdeb51f7 by Josef Glatz)
2022-11-29 [BUGFIX] Add PHP version constraints (Commit fa8589c3 by Andreas Fernandez)
2022-11-24 [FEATURE] Introduce simplified AliasMapper for News Routing (Commit b8e2b3ea by Benni Mack)
2022-11-24 [FEATURE] Add top/bottom move buttons in plugin's flexform (Commit a54751d7 by Philipp Idler)
Copied!

This list has been created by using git log $(git describe --tags --abbrev=0)..HEAD --abbrev-commit --pretty='%ad %s (Commit %h by %an)' --date=short.

10.0.3 - 21st November 2022

Bugfix release

Remove some bugfixes

All Changes

This is a list of all changes in this release:

2022-11-21 [BUGFIX] Check if file exists before using in import services (Commit 248ef9e6 by Georg Ringer)
2022-11-21 [TASK] Update .gitattributes (Commit 51aad1e5 by Stefan Frömken)
2022-11-08 [BUGFIX] fix type casting, these values are strings (Commit eabd5dd1 by Tobias Bräutigam)
2022-10-28 [DOC] Update pricing (Commit da7e5c2b by Georg Ringer)

Copied!

This list has been created by using git log $(git describe --tags --abbrev=0)..HEAD --abbrev-commit --pretty='%ad %s (Commit %h by %an)' --date=short.

10.0.2 - 27th October 2022

Bugfix release

Remove some bugfixes and improve the docs

All Changes

This is a list of all changes in this release:

2022-10-27 [Docs] Fix rendering error (#1899) (Commit 2d06e890 by Lina Wolf)
2022-10-27 [Docs] Fix rendering (#1900) (Commit 70e438ed by Lina Wolf)
2022-10-27 [Docs] promote news Administration by a link (#1901) (Commit ef5812a4 by Lina Wolf)
2022-10-26 [BUGFIX] Fix TypeError when using SlugPrefix option (#1886) (#1890) (Commit 0a1dcbd3 by Thomas Balko)
2022-10-24 [BUGFIX] Remove wrong tag in administration template (#1891) (Commit 964ccb0f by Torben Hansen)
2022-10-19 [DOC] Rename numbered_navigation > numbered_pagination #1888 (Commit 3799160b by Georg Ringer)
2022-10-13 [BUGFIX] Use correct route for NewsAdministration module (#1874) (Commit 52a3ddef by Eric Bode)
2022-10-13 [TASK] Update to psr12 (#1884) (Commit 4e6649da by Georg Ringer)
2022-10-13 [TASK] Remove funding.yaml (Commit 8b2a397d by Georg Ringer)
2022-10-13 Update FUNDING.yml (Commit 7601f274 by Georg Ringer)
2022-10-12 [DOC] Add additional note (Commit 37f24fe6 by Georg Ringer)
2022-10-12 [DOC] Add ext:news_redirect_slug_change (Commit d1f8c546 by Georg Ringer)
2022-10-12 [DOC] Add ext:news_content_elements (Commit d5f4d0c1 by Georg Ringer)
2022-10-11 [BUGFIX] Make SearchFormVH work in v10 (Commit bc1fab82 by Georg Ringer)
2022-10-10 Cast hidden value to bool in import services (#1871) (Commit f0fa5212 by Stefan Frömken)
2022-10-10 Better strict types for import (#1870) (Commit 8fe79dc5 by Stefan Frömken)
2022-10-05 Do not convert empty timestamp to DateTime (#1867) (Commit 7e4406e4 by Stefan Frömken)
2022-10-05 Convert timestamps to DateTime before assigning to object (#1866) (Commit 1240c15d by Stefan Frömken)
2022-10-05 Migrate endtime with set endtime #1863 (#1864) (Commit 4c27a5f3 by Stefan Frömken)
2022-10-04 [BUGFIX] Proper check for news in workspace in LinkVh (#1861) (Commit 307e1c00 by Georg Ringer)
2022-09-28 [BUGFIX] Typecast of attributes in RenderMediaVh (Commit 61e69e15 by Georg Ringer)
2022-09-28 [TASK] Use ImageService directly in RenderMediaVh (Commit a4810b1a by Georg Ringer)
2022-09-28 [BUGFIX] Fix notices in NewsImportServices (Commit 9d17438b by Georg Ringer)
2022-09-27 [BUGFIX] Remove debug message (Commit d13312ec by Georg Ringer)
2022-09-27 [BUGFIX] Move pagination after event #1855 (#1856) (Commit 8cc6d511 by Georg Ringer)

Copied!

This list has been created by using git log $(git describe --tags --abbrev=0)..HEAD --abbrev-commit --pretty='%ad %s (Commit %h by %an)' --date=short.

10.0.1 - 22nd September 2022

Important changes

A tutorial has been added which describes how infinite scrolling can be added to the list view.

Thanks to made in nature (Stefan Grothus), https://www.made-in-nature.de/ for sponsoring this task.

All Changes

This is a list of all changes in this release:

2022-09-22 [BUGFIX] Allow null for return value of News::getTags (Commit 05961d71 by Georg Ringer)
2022-09-22 [DOC] Clarify license for infinite scrolling (Commit 43156784 by Georg Ringer)
2022-09-21 [DOC] Add tutorial for infinite scrolling (#1853) (Commit 7e8ad654 by Georg Ringer)
2022-09-21 [BUGFIX] Fix notices in NewsImportService (Commit d55d5b73 by Georg Ringer)
2022-09-21 [BUGFIX] Use fetchColumn instead of fetchOne #1852 (Commit 9dd4b9f7 by Georg Ringer)

Copied!

This list has been created by using git log $(git describe --tags --abbrev=0)..HEAD --abbrev-commit --pretty='%ad %s (Commit %h by %an)' --date=short.

10.0.0 - 20th September 2022

The big cleanup

The extension "news" is one of the most used extensions and known for its feature richness. However, to be able to satisfy the need for stable releases and early adoptions to upcoming LTS releases it was necessary to improve and slim the code base. More than 60 issues of the issue tracker have been handled during the development of this release.

Extracting features to separate extensions makes it possible to have a smaller main code base with faster releases on the one hand and dedicated releases of extensions providing features on the other hand.

More extensions are planned already!

Extract backend module

The backend module of EXT:news is awesome to manage lots of articles. It has been extracted into an own extension called news_administration.

See manual for details

Extract tag auto creation via suggest

The possibility of creating tag records on the fly within a news record is an awesome feature. It has been extracted into an own extension called news_tagsuggest.

See manual for details

Rename classes

The following classes have been renamed:

  • Hooks/DataHandler => Hooks/DataHandlerHook
  • Hooks/BackendUtility => Hooks/FlexformHook

This avoids wrong suggestions of your IDE when checking for DataHandler or BackendUtility

Features

Configurable slug prefix in backend

The slug information is prefixed by default with the current domain. By using the TsConfig tx_news.slugPrefix it can be overridden by the path to a page to show the correct slug.

See manual for details

Improved events

Couple of events have been improved and added to make it easier to extend EXT:news

All Changes

This is a list of all changes in this release:

2022-09-19 [FEATURE] Pre and post import eventDispatchers (#1850) (Commit c028923c by Jacco van der Post)
2022-09-15 [!!!] CategoryRepository::findChildren uses the sorting field (Commit 8b09c684 by Georg Ringer)
2022-08-30 [BUGFIX] Use date aspect instead of $GLOBALS['SIM_EXEC_TIME'] (#1847) (Commit 7b0ae96c by Georg Ringer)
2022-08-23 [BUGFIX] Fix notice during stdWrap of settings #1825 (Commit be7ffe1c by Georg Ringer)
2022-08-05 [BUGFIX] PHP 8.1 warning in XML Sitemap DataProvider (#1834) (Commit cc3aed00 by Peter Kraume)
2022-08-04 [BUGFIX] Additional check if the page arguments are set (#1837) (Commit 99a348ee by Heiko B)
2022-07-30 Propose simplified wording for timeRestriction (#1833) (Commit c2cd50d1 by Urs Braem)
2022-07-28 [BUGFIX] Proper check for valid URL path (#1832) (Commit 3fcb8bb6 by Peter Kraume)
2022-07-28 [BUGFIX] PHP8.1 warning in Administration module (#1831) (Commit 83acbc10 by Henrik Ziegenhain)
2022-07-27 [FOLLOWUP][DOC] Exclude internal & external news in sitemap (#1827) (Commit 69bfab01 by Eric Chavaillaz)
2022-07-24 Apply fixes from StyleCI (#1826) (Commit 808c7cb8 by Georg Ringer)
2022-07-24 [TASK] Improve additionalCanonicalizedUrlParameters if EXT:seo is installed #1091 (Commit 7d3d71c7 by Georg Ringer)
2022-07-24 [DOC] Exclude internal & external news in sitemap #1769 (Commit 5f8eb935 by Georg Ringer)
2022-07-24 [TASK] Remove duplicated init of ConfigurationManager (Commit 9c4d6c56 by Georg Ringer)
2022-07-20 [BUGFIX] extensionSummary Hook Call (#1824) (Commit 8fa2bc25 by lucmuller)
2022-07-17 [TASK] Rename hreflang identivier (Commit 7a60ecf1 by Georg Ringer)
2022-07-08 [DOC] Link correction to templatesSelector (#1818) (Commit fdab3ac7 by Sven Jürgens)
2022-07-07 [BUGFIX] Allow null as return type (Commit 5f613b13 by Georg Ringer)
2022-07-05 [BUGFIX] Allow null as return type #1817 (Commit ff2fd058 by Georg Ringer)
2022-07-04 [DOC] Followup (Commit 25f9e8dc by Georg Ringer)
2022-07-04 [DOC] Example how to generate URL #1790 (Commit c4a7dcb7 by Georg Ringer)
2022-07-04 [DOC] Add more exts (Commit 0dbae0ef by Georg Ringer)
2022-07-03 [DOC] Document alternative extensions (Commit d10f4d8a by Georg Ringer)
2022-07-01 [DOC] Document news_tagsuggest (Commit 04eaca33 by Georg Ringer)
2022-07-01 [TASK] Suggest EXT:news_tagsuggest (Commit b0906df6 by Georg Ringer)
2022-06-28 [!!!][TASK] Move backend module to custom extension (#1814) (Commit fccece94 by Georg Ringer)
2022-06-26 [TASK] Add itemprop="url" to links (Commit 3f84f824 by Georg Ringer)
2022-06-21 [BUGFIX] Proper check for currentPage (Commit affef472 by Georg Ringer)
2022-06-14 [!!!][TASK] Rename 2 hooks to avoid same namings (#1811) (Commit 4bb34c25 by Georg Ringer)
2022-06-14 [!!!][TASK] Remove unused Utility/Url (Commit 5cfcae0f by Georg Ringer)
2022-06-13 [TASK] Cleanup leftovers of tx_news_categorymounts (Commit fcfb89ed by Georg Ringer)
2022-06-13 [BUGFIX] Fix template selector rendering with allowedColPos (Commit c9d8dd32 by Georg Ringer)
2022-06-13 Apply fixes from StyleCI (#1810) (Commit 50c5a724 by Georg Ringer)
2022-06-13 [FEATURE] Add current request to the PSR-14 events (Commit 5bad4994 by Georg Ringer)
2022-06-13 [TASK] Resolve #1439 and increase XML sitemap generation with many news records (#1443) (Commit a353f25f by Tim)
2022-06-13 [FEATURE] Transform search to GET (#1805) (Commit 314d3d2d by Georg Ringer)
2022-06-13 [BUGFIX] Fix notice in TargetLinkViewHelper (Commit 3565880e by Georg Ringer)
2022-06-09 [FEATURE] Set target=_blank for external links (Commit a9b053b5 by Georg Ringer)
2022-06-09 [DOC] Example how to change default showinpreview (Commit 3c76cfd4 by Georg Ringer)
2022-06-09 [!!!][TASK] Remove on the fly tag creation (Commit 8ae5776e by Georg Ringer)
2022-06-09 [TASK] a little cleanup and SVG optmi. (#1716) (Commit ec1847a0 by Marcus Förster)
2022-06-09 [FEATURE] Add PSR-14 event to modify cache tags based on news (#1800) (Commit f90bd5cd by Sebastian Michaelsen)
2022-06-09 [FEATURE] Set cache tags for related news in detail action (#1799) (Commit 747bca06 by Sebastian Michaelsen)
2022-06-08 [TASK] Change method visibility in PageViewQueryHook (Commit 665c06d6 by Georg Ringer)
2022-06-08 [TASK] Use an array key for hook registration (Commit d9f7037b by Georg Ringer)
2022-06-08 [FEATURE] Add PSR-14 event to modify cache tags based on demand (#1798) (Commit 8399f4d4 by Sebastian Michaelsen)
2022-06-03 Apply fixes from StyleCI (#1797) (Commit fd188152 by Georg Ringer)
2022-06-03 [FEATURE] Improve irre info for showinpreview (Commit 3aab5d2e by Georg Ringer)
2022-06-03 [FEATURE] Support cropVariants in RenderMediaViewHelper (Commit 5f5cad34 by Georg Ringer)
2022-06-03 [TASK] Provide update wizard for title field change in 8.4 (Commit e94f1dbe by Georg Ringer)
2022-06-03 [TASK] Provide update wizard to fix related_links change (Commit 93f5862d by Georg Ringer)
2022-06-03 [TASK] Improve cache clearance (Commit 59acca42 by Georg Ringer)
2022-06-03 [FEATURE] Provice command to rebuild proxy caches (Commit 33e97073 by Georg Ringer)
2022-06-03 [BUGFIX] Bring back thumbnails in record list for v10 (Commit c471ea81 by Georg Ringer)
2022-06-03 [DOC] Use correct example for GoogleNews Sitemap (Commit bc5359e4 by Georg Ringer)
2022-06-03 [BUGFIX] Typecast image size (Commit e8db776c by Georg Ringer)
2022-06-02 [FEATURE] Configurable slug prefix in backend (#1792) (Commit 57e9e4ab by Georg Ringer)
2022-06-01 [DOC] Closing tag on output preview was wrong (#1788) (Commit 380aa772 by medarob)
2022-05-25 [BUGFIX] Fix line indentations of YAML and PHP code snippets (#1786) (Commit 0d0e8716 by Eric Bode)
2022-05-25 [BUGFIX] Revert "[BUGFIX] Respect categories from demand (#1555)" (Commit 7ae3e1c0 by Georg Ringer)
2022-05-25 BUGFIX: Fix typo in filepath Configuration/Services.yaml (#1785) (Commit d38898e8 by Eric Bode)
2022-05-12 Update LinkHandlerTargetPageService.php (Commit 468210ad by Georg Ringer)
2022-05-11 [TASK] Remove exclude from editlock (Commit df16cdc2 by Georg Ringer)
2022-05-05 [BUGFIX] #1777 usort return values in PHP 8.0 (#1779) (Commit 0d152202 by Marco Kuprat)
2022-05-05 [DOC] Add hint for EXT:numbered_pagination in list.paginate settings (#1778) (#1780) (Commit a22cf6b1 by Luis Becker)
2022-05-03 [BUGFIX] Fix notice in ClassCacheManager (Commit 22bdbd4f by Georg Ringer)
2022-05-02 [BUGFIX] Change return type of start/endtime (Commit b7a38244 by Georg Ringer)
Copied!

This list has been created by using git log $(git describe --tags --abbrev=0)..HEAD --abbrev-commit --pretty='%ad %s (Commit %h by %an)' --date=short.

9.4.0 - 26th April 2022

Thanks to

This release is dedicated to Benni Mack and b13 (https://b13.com/). Thanks for leading by example, helping me out as dev and as friend ❤️!

If you use EXT:news and it works out fine for you, please consider donating. Head over to https://github.com/sponsors/georgringer!

All Changes

This is a list of all changes in this release:

2022-04-26 [BUGFIX] Remove download + columnselector in be module (Commit 84bc6a02 by Georg Ringer)
2022-04-24 [BUGFIX] Fix notice in NewsController (#1775) (Commit 104a5275 by Georg Ringer)
2022-04-24 [BUGFIX] Use correct notice check (Commit cc2c7dc9 by Georg Ringer)
2022-04-24 [TASK] Change condition order (Commit d04fe5c9 by Georg Ringer)
2022-04-24 [BUGFIX] Link title in backend module again (Commit 63132676 by Georg Ringer)
2022-04-23 [TASK] Fix PHP notice (#1774) (Commit 8dd77033 by Peter Kraume)
2022-04-23 [BUGFIX]n Fix notices (#1773) (Commit 03182cdf by Georg Ringer)
2022-04-20 [DOCS] Align with new TYPO3 documentation standards (#1771) (Commit 2b0c6c51 by Alexander Nitsche)
2022-04-01 [BUGFIX] Return empty instead NULL (#1740) (#1763) (Commit a34e236a by Philipp Idler)
2022-04-01 [BUGFIX] Avoid warning undefined array key (#1764) (Commit 6873a913 by nigelmann)
2022-03-30 [BUGFIX] Fix notice for singleNews argument (Commit a046697b by Georg Ringer)
2022-03-29 Remove unnecessary part .text('Back') in JavaScript Snippet (#1762) (Commit 7e6b31a8 by Eric Bode)
2022-03-28 [FEATURE] Add 'fileIndex' argument to MediaViewHelper (Commit ee811c85 by Philipp Parzer)
2022-03-24 [BUGFIX] Fix notice in ItemsProcFunc (Commit 7e7d8179 by Georg Ringer)
2022-03-23 [BUGFIX] Fix notice in PageLayoutView (Commit 70105f0c by Georg Ringer)
2022-03-21 [BUGFIX] Show news in backend module again (Commit 11e85013 by Georg Ringer)
2022-03-19 Add func tests for news controller (#1757) (Commit b745f4c7 by Stefan Frömken)
2022-03-18 Add unit tests for static text (#1756) (Commit 271ade85 by Stefan Frömken)
2022-03-18 [TASK] Improve code of category model (Commit 7cefc9e7 by Stefan Frömken)
2022-03-18 Add allow-plugins to composer.json (#1752) (Commit 77db38cf by Stefan Frömken)

Copied!

This list has been created by using git log $(git describe --tags --abbrev=0)..HEAD --abbrev-commit --pretty='%ad %s (Commit %h by %an)' --date=short.

9.3.1 - 17th March 2022

Important bugfixes

Support of pagination with limit & offset

Since the transformation from the ViewHelper widgets to the pagination API the pagination didn't allow to set an additional limit and offset in the plugin.

This works now again.

All Changes

This is a list of all changes in this release:

2022-03-17 [BUGFIX] Make the limit and offset in combination with pagination work (Commit bc85dff1 by Georg Ringer)
2022-03-16 Apply fixes from StyleCI (#1747) (Commit d18ad5bf by Georg Ringer)
2022-03-16 [FEATURE] List tags in admin module (Commit 0495266b by Georg Ringer)
2022-03-16 [TASK] Adopt class copyright (Commit 2df86068 by Georg Ringer)
2022-03-16 [BUGFIX] Fix notices in NewsController (Commit a043c278 by Georg Ringer)
2022-03-16 Apply fixes from StyleCI (#1742) (Commit 77c75b91 by Georg Ringer)
2022-03-16 [BUGFIX] Fix notice in PageViewQueryHook (Commit fdac4d02 by Georg Ringer)
2022-03-16 [BUGFIX] Fallback for category overlay in backend #1740 (Commit 12aa9135 by Georg Ringer)
2022-03-15 [BUGFIX] Fix notice in RecordListQueryHook (Commit 52d12735 by Georg Ringer)
2022-03-15 [TASK] Remove media preview in backend list (Commit 46951129 by Georg Ringer)
2022-03-14 [TASK] Change path to dummyImage for using EXT:news with typo3/cms-composer-installers 4.0 (#1739) (Commit d893d410 by Andreas Kessel)

Copied!

This list has been created by using git log $(git describe --tags --abbrev=0)..HEAD --abbrev-commit --pretty='%ad %s (Commit %h by %an)' --date=short.

9.3.0 - 14th March 2022

Important features

Support of single_pid in linkhandler

The linkhandler can be used to generate links to news records by editors using the UI. If the field single_pid of a news categories is used to define a dynamic target page instead of one hardcoded page, the following userFunc can now be used to get the correct page:

config.recordLinks.tx_news {
    typolink {
        # Detail page
        parameter.cObject = USER
        parameter.cObject {
            userFunc = GeorgRinger\News\Service\LinkHandlerTargetPageService->process
            news.data = field:uid
            # Page used if no detail page is set in the category
            fallback = 123
        }
        additionalParams.data = field:uid
        additionalParams.wrap = &tx_news_pi1[controller]=News&tx_news_pi1[action]=detail&tx_news_pi1[news]=|
    }
}
Copied!

All Changes

This is a list of all changes in this release:

2022-03-09 [BUGFIX] News::getDatetime can be null (Commit a46afa56 by Georg Ringer)
2022-03-04 [BUGFIX] Change used constants in TWB5 templates (Commit 641a22bc by Georg Ringer)
2022-02-21 [TASK] Adopt sorting in LinkHandlerTargetPageService (Commit 811472cc by Georg Ringer)
2022-02-21 [BUGFIX] Fix georgringer/news#1576: extension classes can be included twice and cause fatail error (#1727) (Commit 4e984e7c by Dmitry Dulepov)
2022-02-18 Apply fixes from StyleCI (#1726) (Commit 36da8ace by Georg Ringer)
2022-02-18 [DOC][FEATURE] Example how to skip dedicated detail page (Commit c066cf5d by Georg Ringer)
2022-02-18 [FEATURE] Provide linkhandler with category single_pid (Commit b1cae28b by Georg Ringer)
2022-02-14 [BUGFIX] Add workspace-restriction to XML-sitemap (#1722) (Commit 0abc861d by maximilian-walter)
2022-02-14 [DOCS] Clear cache for auto-publishing (#1718) (Commit a71a0560 by Lina Wolf)
2022-02-07 [BUGFIX] Avoid notice exception on ClassCacheManager (Commit 48a4e4b7 by Georg Ringer)
2022-02-04 [BUGFIX] Fix notices in backend (#1717) (Commit ade53b52 by Thomas Lüder)
2022-02-02 [FEATURE] Display number of news per category in Category Menu (#1699) (Commit 70beb6a8 by Philipp Kitzberger)
2022-02-02 [TASK] Do not link current page in pagination #1663 (Commit b74a4db0 by Georg Ringer)
2022-02-02 [BUGFIX] Show pagination only if required (Commit 99510b74 by Georg Ringer)
2022-02-02 [BUGFIX] Show pagination only if required (Commit a6e5b43d by Georg Ringer)
2022-02-02 [BUGFIX] Fix notices in backend (Commit a201e24c by Georg Ringer)
2022-02-02 [BUGFIX] Add "section" to link URL if uriOnly = 1 (#1709) (Commit 7013fa79 by Felix Heller)
2022-02-02 [BUGFIX] Fix "section" attribute in link tags (#1708) (Commit f59f21db by Felix Heller)
2022-01-28 [BUGFIX] Fix notice in CategoryService (Commit ffd8c12a by Georg Ringer)
2022-01-26 [BUGFIX] Remove bogus line (Commit 31a241a5 by Georg Ringer)
2022-01-25 [TASK] Remove not needed template (Commit 6de45b36 by Georg Ringer)
Copied!

This list has been created by using git log $(git describe --tags --abbrev=0)..HEAD --abbrev-commit --pretty='%ad %s (Commit %h by %an)' --date=short.

9.2.2 - 25th January 2022

Bugfix release

This release is just a bugfix release.

All Changes

This is a list of all changes in this release:

2022-01-25 [BUGFIX] Allow null as return value of NewsRepository::findByUid (Commit ca58c4f1 by Georg Ringer)
2022-01-24 [BUGFIX] Rename variable name in NewsBaseController (Commit 1f21a325 by Georg Ringer)
2022-01-23 [TASK] Remove ajax pagination left overs (Commit 76c09fca by Georg Ringer)
2022-01-11 Update BackendUtility.php (#1688) (Commit d5c2c795 by Naderio)
2022-01-11 [DOCS] Display TypoScript and Extension configuration as confvals (#1696) (Commit fa5ffbdb by Lina Wolf)
2022-01-11 [BUGFIX] Fix pagination style for Bootstrap 3 (#1693) (Commit 19367ea8 by Daniel Haupt)
2022-01-11 Apply fixes from StyleCI (#1702) (Commit b81878a0 by Georg Ringer)
2022-01-11 [TASK] Further array check (Commit e6a0534b by Georg Ringer)
2022-01-11 [BUGFIX] Improve constructor merging (Commit fc3daf55 by Stig Nørgaard Færch)
2022-01-11 [BUGFIX] Check for variable in PageLayoutView (Commit 985ced62 by Georg Ringer)
2022-01-11 [BUGFIX] Better type checks for PHP8 (Commit cfe9fd7b by Georg Ringer)
2022-01-05 [BUGFIX] Move Changelog back to previous position (#1690) (Commit 8ad6c136 by Lina Wolf)
2022-01-05 [FEATURE] Display TSconfig as confvals (#1695) (Commit cd580513 by Lina Wolf)
2021-12-23 Update Item.html (#1666) (Commit 877000e5 by Thorsten Griebenow)
2021-12-23 [DOCS] Fix installation page (#1671) (Commit 374fbf72 by Sybille Peters)
2021-12-23 [DOCS] Update information about versioning (#1680) (Commit e447b4a0 by Sybille Peters)
2021-12-23 [BUGFIX] Take language id into account when generating a unique value in SlugService (#1684) (Commit 82fa4b3c by Wolfgang Klinger)
2021-12-23 [DOCS] Automate Screenshots (#1682) (Commit a097d3a6 by Lina Wolf)
Copied!

This list has been created by using git log $(git describe --tags --abbrev=0)..HEAD --pretty=format:'%ad %s (Commit %h by %an)' --date=short.

9.1.1 - 20th December 2021

Christmas release

All Changes

This is a list of all changes in this release:

2021-12-16 [TASK] Update module_administration.svg (#1677) (Commit a1d143ef by bucheggerOnline)
2021-12-16 [DOCS] Add portal-like startpages (#1679) (Commit 28555eef by Lina Wolf)
2021-12-12 [DOCS] Minor improvements on How to start page (#1670) (Commit 2e79c284 by Sybille Peters)
2021-12-12 [DOCS] Minor improvements on thanks page (#1669) (Commit df5da57f by Sybille Peters)
2021-12-12 [DOCS] Changes related to Extension Configuration (#1672) (Commit 0bc2d96e by Sybille Peters)
2021-12-12 [DOCS] Improve style (#1675) (Commit ab49e789 by Sybille Peters)
2021-12-12 [DOCS] Fix formatting for typoscript (#1674) (Commit 17d9d7d4 by Sybille Peters)
2021-12-10 [BUGFIX] Properties of type DateTimeInterface should be nullable (Commit 4fd307ee by Georg Ringer)
2021-12-05 [DOCS] Fix typo (#1667) (Commit 53f2e97d by Alexander Nitsche)
2021-12-02 [BUGFIX] Replace outdated usage of clearable (Commit 9ab99cc3 by Georg Ringer)
2021-11-23 [DOC] Update badges in readme (Commit 923b9649 by Georg Ringer)
2021-11-23 [DOCS] Add General TSconfig examples (#1649) (Commit d5bbd3ce by Lina Wolf)
2021-11-23 [DOCS] documents data processors (#1655) (Commit eddb7d96 by Lina Wolf)
2021-11-23 Fix deprecated tests (Commit 1f4024bd by Georg Ringer)
2021-11-23 [TASK] Remove test class without test (Commit daf71ea6 by Georg Ringer)
2021-11-23 [BUGFIX] Remove invalid character (Commit ef7e00f2 by Georg Ringer)
2021-11-23 [BUGFIX] Allow null for archive (Commit 03cf9093 by Georg Ringer)
2021-11-20 Fix path to news_only.tsconfig (#1650) (Commit bae5fb38 by Michael Binder)
2021-11-17 fix small typo (#1648) (Commit 85297d36 by Volker Burggräf)
2021-11-16 [TASK] Remove trailing dot from pagination overview (#1647) (Commit a24f20f2 by Benjamin Franzke)
2021-11-11 [BUGFIX] Remove outdated linkvalidator configuration #1644 (Commit dd9d1bda by Georg Ringer)
Copied!

This list has been created by using git log $(git describe --tags --abbrev=0)..HEAD --pretty=format:'%ad %s (Commit %h by %an)' --date=short.

9.1.0 - 11th November 2021

Important features

Twitter Bootstrap v5 templates

Thanks to Carsten Hager who provided templates variants based on Twitter Boostrap v5 which have been added next to the TWBv3 templates.

Improved manual

Thanks to Lina Wolf who updated the documentation and provided lots of additional information!

Support of lazy loading images

The following TypoScript configuration has been added which are used in the templates.

plugin.tx_news.settings {
    list.media.image.lazyLoading = {$styles.content.image.lazyLoading}
    detail.media.image.lazyLoading = {$styles.content.image.lazyLoading}
}
Copied!

If EXT:fluid_styled_content is not set, provide the configuration yourself.

All Changes

This is a list of all changes in this release:

2021-11-10 [BUGFIX] Return description of media #1643 (Commit 977c0dfa by Georg Ringer)
2021-11-10 [DOC] Add suggestion for fluid_styled_content #1642 (Commit 40b1623d by Georg Ringer)
2021-11-10 [DOC] Mention the twb5 templates in the according docs (Commit 66428004 by Georg Ringer)
2021-11-10 [TASK] Add description for suggestion instead of version information (Commit 6b5d0fd6 by Georg Ringer)
2021-11-10 [DOC] Add example how FAL properties can be rendered (Commit d393772b by Georg Ringer)
2021-11-10 [TASK] Add addQueryString:1 to TWB5 pagination (Commit 8ba5623d by Georg Ringer)
2021-11-10 [DOCS] Explain concept of "Demands" (#1638) (Commit 90f6aad8 by Lina Wolf)
2021-11-05 [BUGFIX] Handle hreflang event only if news is found #1532 (Commit f63e4408 by Georg Ringer)
2021-11-05 [BUGFIX] Use correct alt/title for list items in TWB variants (Commit 40e97f12 by Georg Ringer)
2021-11-05 [FEATURE] Support lazy loading for images (Commit 061c3968 by Georg Ringer)
2021-11-05 Apply fixes from StyleCI (#1637) (Commit 4221725b by Georg Ringer)
2021-11-05 [BUGFIX] Fix #1400: make mod.web_list.deniedNewTables/mod.web_list.allowedNewTables work again (#1401) (Commit fe0cb3f5 by Dmitry Dulepov)
2021-11-05 [BUGFIX] AbstractDemandedRepository::countDemanded uses generateQuery (Commit 95f8eb09 by Georg Ringer)
2021-11-05 [TASK] Support workspaces for tags #1397 (Commit 0c4b8b45 by Georg Ringer)
2021-11-05 [TASK] Add option uniqueInPid to slug options #1298 (Commit a22f5f36 by Georg Ringer)
2021-11-05 [BUGFIX] Fix SQL definition for related_link (#1436) (Commit 16be8bf1 by Eric Chavaillaz)
2021-11-05 [TASK] Remove non existing opengraph tags #1264 (Commit 08b95e37 by Georg Ringer)
2021-11-05 [BUGFIX] Respect categories from demand (#1555) (Commit 770c2ee2 by Thomas Helmrich)
2021-11-03 [DOCS] Modernize Page "Save & Preview" (#1634) (Commit 71c4e3a1 by Lina Wolf)
2021-11-01 [BUGFIX] Allow null for News::contentElements (Commit a4ff4ac6 by Georg Ringer)
2021-11-01 [Docs] Improve documentation content (#1628) (Commit 29004c02 by Lina Wolf)
2021-10-26 [BUGFIX] Proper migration of ExtensionUtility::configurePlugin #1617 (Commit 49732f58 by Georg Ringer)
2021-10-26 [DOC] Improve example for proxy class generation #1576 (Commit 3c85c812 by Georg Ringer)
2021-10-26 [BUGFIX] Add querystring to pagination links #1618 (Commit 9297aa56 by Georg Ringer)
2021-10-26 [DOCS] Fix Syntax, bring rst up to date (#1620) (Commit b241a78c by Lina Wolf)
2021-10-26 [FEATURE] Bootstrap 5 Templates (Commit f65b09bf by Carsten Hager)
2021-10-25 Fix code examples (#1615) (Commit 0639533d by Lina Wolf)
2021-10-25 [DOC] Fix date in release notes (Commit a9f5752c by Georg Ringer)

Copied!

This list has been created by using git log $(git describe --tags --abbrev=0)..HEAD --abbrev-commit --pretty='%ad %s (Commit %h by %an)' --date=short.

9.0.0 - 23th October 2021

Support for TYPO3 10 && 11

This version fully supports TYPO3 10 and 11 LTS. Due to a lot of changes it might be that small issues still might occur. Please report those at https://github.com/georgringer/news/issues!

Breaking changes

The following changes should be carefully checked.

Removed ViewHelpers

The ViewHelpers <n:widget.paginate> and <n:widget.ajax.paginateAdditionalParams> have been removed as widget ViewHelpers have been removed with TYPO3 11 (see https://docs.typo3.org/c/typo3/cms-core/master/en-us/Changelog/11.0/Breaking-92529-AllFluidWidgetFunctionalityRemoved.html).

Take a look at the default templates for a migration

<f:if condition="{settings.list.paginate.insertAbove}">
    <f:render partial="List/Pagination" arguments="{pagination: pagination.pagination, paginator: pagination.paginator}" />
</f:if>
<f:for each="{pagination.paginator.paginatedItems}" as="newsItem" iteration="iterator">
    <f:render partial="List/Item" arguments="{newsItem: newsItem,settings:settings,iterator:iterator}" />
</f:for>
<f:if condition="{settings.list.paginate.insertBelow}">
    <f:render partial="List/Pagination" arguments="{pagination: pagination.pagination, paginator: pagination.paginator}" />
</f:if>
Copied!

Use the extension numbered_pagination (https://extensions.typo3.org/extension/numbered_pagination) to get a better pagination, like showing only 10 pages at a time.

Changed ImageSizeViewHelper

The view-helper to retrieve image related information like width/height has been changed. The attribute image is now required. The following changes have been done in the default templates and can be duplicated to the custom templates:

Partials/Detail/Opengraph.html

<f:variable name="ogImagePath" value="{f:uri.image(src:'{newsItem.firstPreview.uid}', treatIdAsReference:1, maxWidth:'1200')}" />
<n:metaTag
   property="og:image"
   content="{ogImagePath}"
   forceAbsoluteUrl="1" />
<n:metaTag property="og:image:width" content="{n:imageSize(property:'width', image:'{ogImagePath}')}" />
<n:metaTag property="og:image:height" content="{n:imageSize(property:'height', image:'{ogImagePath}')}" />
Copied!

Templates/News/List.xml

<f:if condition="{newsItem.firstPreview}">
   <f:variable name="ogImage" value="{f:uri.image(image:newsItem.firstPreview, absolute:1, maxWidth: '1920', maxHeight: '1920')}" />
   <enclosure url="{ogImage}" length="{n:imageSize(property:'size',image:ogImage)}" type="{newsItem.firstPreview.originalResource.mimeType}"/>
</f:if>
Copied!

Switch from signals to events

Events are now used instead of signals

Drop setting skipControllerAndAction

The setting settings.link.skipControllerAndAction is not evalulated anymore as it should be removed by the routing configuration.

Improved code quality

The code quality has been improved by adding more return types

All Changes

This is a list of all changes in this release:

2021-10-23 [TASK] Add tests running in PHP8 & TYPO3 dev-master (Commit 9058745d by Georg Ringer)
2021-10-22 [TASK] Allow more pagination implementations (#1610) (Commit d009a903 by Georg Ringer)
2021-10-22 [TASK] Make tests work in v11 (Commit 9fe96a48 by Georg Ringer)
2021-10-22 [DOC] Improve changelog for 9.0 (Commit be266618 by Georg Ringer)
2021-10-22 [TASK] Allow rx_shariff v14 (Commit d5e3941f by Georg Ringer)
2021-10-17 [DOC] use english words in example (Commit a3ce7bae by Georg Ringer)
2021-10-17 [DOC] Fix typo in docs (Commit 52d6122e by Georg Ringer)
2021-10-12 [TASK] Update Index.rst to clarify usage of "previewHiddenRecords" (#1591) (Commit d3a9dd0c by Markus)
2021-10-11 [TASK] Add tca for tx_news_related_news (Commit ab936766 by Georg Ringer)
2021-10-11 [TASK] Import namespace in AdministrationController (Commit 95cc7454 by Georg Ringer)
2021-10-07 [BUGFIX] Leave slash at the beginning of the image path in TYPO3 11 to be in sync with the paths which get retrieved by $assetCollector->getMedia() in ImageSizeViewHelper (#1587) (Commit 3eb0c8ec by chris)
2021-10-07 Improve backend module for TYPO3 11.5 (#1588) (Commit 53923eab by Johannes)
2021-10-06 [BUGFIX] Use own check for firstpartofstr (Commit 27a191b0 by Georg Ringer)
2021-10-05 [TASK] Use GeneralUtility::isFirstPartOfStr in ClassLoader (Commit 94a21ec9 by Georg Ringer)
2021-09-28 [TASK] Replace deprecated string util methods (#1583) (Commit 9ad81c70 by Georg Ringer)
2021-09-28 [BUGFIX] Add timeRestrictionHigh to overrideFlexformSettingsIfEmpty (Commit feef53ef by Georg Ringer)
2021-09-17 [!!!][TASK] Change headline in detail from h3 to h1 (Commit d6a8bd6b by Georg Ringer)
2021-09-16 [ FEATURE ] In Detail view showing related news sorted by sorting foreign #1563 (#1565) (Commit 686a9e5f by Robert von Hackwitz)
2021-09-15 [!!!][TASK] Rework ImageSizeViewHelper (Commit 9cff6564 by Georg Ringer)
2021-09-15 [BUGFIX] Followup variable check (Commit 7e362528 by Georg Ringer)
2021-09-15 [BUGFIX] Add more type checks (Commit c1eb4645 by Georg Ringer)
2021-09-15 [BUGFIX] Check variables in PageLayoutView before accessing (Commit 1117f480 by Georg Ringer)
2021-09-15 [TASK] Remove outdated softref configuration (Commit e003bc18 by Georg Ringer)
2021-09-14 [TASK] Check for array key (Commit d46c41c6 by Georg Ringer)
2021-09-07 [TASK] Add explicit keys on subclasses registration (#1562) (Commit b899ae37 by Eric Chavaillaz)
2021-09-07 [!!!][FEATURE] Switch from signal to event (#1567) (Commit 96bfe0a6 by Gerrit Mohrmann)
2021-09-07 Apply fixes from StyleCI (#1572) (Commit fbc2b8c9 by Georg Ringer)
2021-09-07 [TASK] Remove extensionmanager from functional test ext loading (#1573) (Commit b04cee28 by Georg Ringer)
2021-09-07 [TASK] Remove dev-master from ci.yml (Commit a1b84bdb by Georg Ringer)
2021-09-07 [BUGFIX] Remove not available softref from tca (#1568) (Commit 7bc86a4b by Gerrit Mohrmann)
2021-09-07 [DOC] Fixed little typo in example (#1569) (Commit 0e7cca7e by Volker)
2021-09-01 [DOC] Fix subclass registration (#1560) (Commit 2e003608 by iresults-tma)
2021-08-15 [TASK] Switch from SignalSlot to Event in Importer classes (#1554) (Commit aa6f0db4 by Gerrit Mohrmann)
2021-08-12 [TASK] Remove deprecated usages (Commit 3403a4c2 by Gerrit Mohrmann)
2021-07-29 [TASK] EmConfiguration can't be autowired (Commit 8ad5d463 by Georg Ringer)
2021-07-27 [TASK] Handle access control for newer Apache versions (#1544) (Commit 06f3d908 by Sybille Peters)
2021-07-22 [BUGFIX] Fix namespace issue in AdministrationController (Commit bc1e759b by Georg Ringer)
2021-07-22 Merge branch '11' (Commit 6f207e09 by Georg Ringer)
2021-05-20 [TASK] Move setting modification to different call (Commit 70a58bc5 by Georg Ringer)
2021-05-12 [BUGFIX] Properly set permissions (Commit 6412442a by Georg Ringer)
2021-05-12 [BUGFIX] Reset tabledata in page layout hook (Commit b1e2e0cf by Georg Ringer)
2021-05-11 [BUGFIX] Use ObjectManager in Administration module (Commit d8ab1b90 by Georg Ringer)
2021-05-06 [BUGFIX] Proper compare in BackendUtility (Commit 2871820e by Georg Ringer)
2021-04-03 [TASK] Further code improvements (Commit 5bfb1bd1 by Christoph Lehmann)
2021-03-29 Symfony Dependency Injection (DI) (#1503) (Commit 6fbc2d02 by AKaravas)
2021-03-21 Apply fixes from StyleCI (#1496) (Commit 4426ffc8 by Georg Ringer)
2021-03-21 Merge remote-tracking branch 'origin/master' into 11 (Commit e2522f5d by Georg Ringer)
2021-03-21 [TASK] Rename typoscript & tsconfig files (Commit 6fcd2975 by Georg Ringer)
2021-03-16 [BUGFIX] Make numberedpagination optional (Commit e0d3afd0 by Georg Ringer)
2021-03-16 [BUGFIX] Fix return type error for related #1482 (Commit 25fffdef by Georg Ringer)
2021-03-16 Update composer.json (Commit fcbe1f23 by Georg Ringer)
2021-03-11 [BUGFIX] Replace usage of self (Commit ccb75ca1 by Georg Ringer)
2021-03-11 [TASK] Change github action ubuntu version (Commit 38c4a933 by Georg Ringer)
2021-03-11 [BUGFIX] Make the admin module work (Commit b9a7caee by Georg Ringer)
2021-03-09 [BUGFIX] Use correct composer dependencies (Commit 95903049 by Georg Ringer)
2021-03-03 [BUGFIX] Set categories only as array (Commit a0b7f58f by Georg Ringer)
2021-03-03 [BUGFIX] Allow nullable return value of category (Commit 559708fb by Georg Ringer)
2021-03-03 [DOC] Update example to extend news types #1381 (Commit d0f7f391 by Georg Ringer)
2021-03-03 [BUGFIX] Use correct attribute in MetaTagViewHelper (Commit e42d3705 by Georg Ringer)
2021-02-25 [BUGFIX] Show tag count in twb templates #1044 (Commit cdaff6bc by Georg Ringer)
2021-02-24 [!!!][BUGFIX] Remove setting skipControllerAndAction (Commit ab5c6d1c by Georg Ringer)
2021-02-22 [BUGFIX] Set proper types (Commit d87fd0a8 by Georg Ringer)
2021-02-22 [BUGFIX] Fix failing functional test (Commit a32280d8 by Georg Ringer)
2021-02-22 [TASK] Check functional tests (Commit c8bf3ac4 by Georg Ringer)
2021-02-22 [TASK] Remove gitlab-ci.yml (Commit 31117381 by Georg Ringer)
2021-02-17 [TASK] Work on better types (Commit f3020f1a by Georg Ringer)
2021-02-17 [TASK] Improve code by using psalm (Commit 2c424b91 by Georg Ringer)
2021-02-17 [TASK] Add typo3 dev-master (Commit 759534d9 by Georg Ringer)
2021-02-17 [TASK] Allow more versions in github actions (Commit 83dae3cd by Georg Ringer)
2021-02-17 [BUGFIX] Fix more type issues (Commit 8f3b8597 by Georg Ringer)
2021-02-17 [BUGFIX] Improve types (Commit 59d45e84 by Georg Ringer)
2021-02-17 [BUGFIX] Add missing return types (Commit a7436b18 by Georg Ringer)
2021-02-17 [TASK] Add return types (Commit b992ddf5 by Georg Ringer)
2021-02-17 [TASK] Switch to github actions instead of travis (Commit 0f391d5d by Georg Ringer)
2021-02-17 [FEATURE] Use new pagination implementation (Commit 434a43bc by Georg Ringer)
2021-02-16 [BUGFIX] Limit flexform fields for new records as well (Commit 98b5fa1b by Georg Ringer)
2021-02-16 [TASK] Improve code by php-cs-fixer (Commit 85429fa8 by Georg Ringer)
2021-02-16 [TASK] Improve code quality with rector (Commit 59d20395 by Georg Ringer)
2021-02-16 [!!!][TASK] Remove all widget ViewHelpers (Commit 82b69a9b by Georg Ringer)
2021-02-16 [TASK] Allow version 10-11 (Commit 760505dc by Georg Ringer)
2021-02-12 [TASK] Remove interfaces from TCA (Commit 3ee96b03 by Georg Ringer)

Copied!

This list has been created by using git log $(git describe --tags --abbrev=0)..HEAD --abbrev-commit --pretty='%ad %s (Commit %h by %an)' --date=short.

8.6.0 - 22th July 2021

Bugfix release

Just a bugfix release

All Changes

This is a list of all changes in this release:

2021-07-21 [BUGFIX] Fix page permissions SQL clause in Page-Utility (#1438) (Commit 0af5cb4a by Ingo Fabbri)
2021-07-15 [BUGFIX] Create valid DTSTAMP in List.ical (#1535) (Commit 0be75d03 by Markus Klein)
2021-07-13 Remove noBlur = 1 (#1517) (Commit ba5edd06 by Daniel Koether)
2021-07-13 [BUGFIX] Clear cache for old pid when move news record (#1531) (Commit a4c954a3 by Christoph Lehmann)
2021-07-08 [BUGFIX] Ensure Demand properties have correct data type (#1528) (Commit 936bb818 by Markus Klein)
2021-06-01 [BUGFIX] module.localizationView can be disabled (#1518) (Commit cd1d45c4 by Markus Klein)
2021-05-20 [BUGFIX] Exclude domain models from DI container scanning (#1512) (Commit e0399174 by Oliver Eglseder)
2021-04-03 [BUGFIX] Preview of translations in strict language mode (#1484) (Commit ee889f83 by Christoph Lehmann)
2021-03-23 [BUGFIX] Rebuild caches if not existing (#1470) (Commit dbfa9ec2 by Georg Ringer)
2021-03-18 [FEATURE] Define a setting for the typeNum of the rss feed (#1493) (Commit e8692d4c by Jan Kiesewetter)
2021-03-16 [DOC] Add configuration for Edit on GitHub button (#1486) (Commit daf47b36 by Sybille Peters)
2021-03-11 [DOCS] Description of settings.timeRestriction (#1476) (Commit 44043e1a by Felix Heller)
2021-02-17 [TASK] Always show path_segment field (Commit 99fbc185 by Georg Ringer)
2021-02-05 Fix doc in NewsAvailability class (#1434) (Commit 47c37f4e by Łukasz Uznański)
2021-01-19 [BUGFIX] Hide editlock for non admins (#1427) (Commit 7b72b79b by echavaillaz)
2021-01-13 [DOC] Use correct condition for news detail view detection (#1421) (Commit 02a8d117 by Markus Klein)


Copied!

This list has been created by using git log $(git describe --tags --abbrev=0)..HEAD --abbrev-commit --pretty='%ad %s (Commit %h by %an)' --date=short.

8.5.2 - 12th January 2021

Important changes

Thanks to

Thanks to Simple Web-Solutions GmbH (https://www.simple-web-solutions.de/) who sponsored this release!

All Changes

This is a list of all changes in this release:

2021-01-12 [BUGFIX] Exclude current news in simpleprevnext (Commit 13e538cf by Georg Ringer)
2021-01-08 [DOC] Index news records, don't index page itself (SEO) (#1337) (Commit 20e3bdc6 by Sebastian Klein)
2021-01-08 [TASK] Fix annotations (Commit e1a0838e by Christian Bülter)

Copied!

This list has been created by using git log $(git describe --tags --abbrev=0)..HEAD --abbrev-commit --pretty='%ad %s (Commit %h by %an)' --date=short.

8.5.1 - 8th January 2021

Important changes

Thanks to

Thanks to Violetta Digital Craft GmbH (https://www.violetta.ch) who sponsored this release!

New TYPO3 version requirement

The mimimum TYPO3 version is either 9.5.17 or 10.4.12.

All Changes

This is a list of all changes in this release:

2021-01-04 [BUGFIX] Adjust the IRRE xclass to match v10.4.12 (#1412) (Commit b13d167a by Markus Klein)
2020-12-31 [DOC] Add documentation to limit available content element CTypes (#1411) (Commit 77d0d62c by Peter Kraume)
2020-12-17 [BUGFIX] Fix invalid crop usage in RenderMediaViewHelper (#1409) (Commit a8bca7c7 by Markus Klein)
2020-12-11 [BUGFIX] Prevent double encoding of metatag content (#1403) (Commit 2f452fdf by Markus Klein)
2020-12-11 [BUGFIX] Fix entry level in category menu for TYPO3 10 (#1404) (Commit c3944732 by echavaillaz)
2020-11-20 [DOC] Fixed locale for LocaleModifier example (#1386) (Commit a1ecb3b1 by Torben Hansen)
2020-11-20 [BUGFIX] Use correct time in ical (#1392) (Commit 50bd6917 by Markus Klein)
2020-11-15 [BUGFIX] Set correct default for fe_group field (Commit f7f989cd by Georg Ringer)
2020-11-02 [BUGFIX] Correctly adjust timezone in sitemap (#1380) (Commit 8f40f411 by Markus Klein)
2020-10-22 [TASK] Remove maxItems for selectedList (#1373) (Commit 7b1a52ca by ayacoo)

Copied!

This list has been created by using git log $(git describe --tags --abbrev=0)..HEAD --abbrev-commit --pretty='%ad %s (Commit %h by %an)' --date=short.

8.5.0 - 20th October 2020

Important changes

Improved language menu on news detail pages

Thanks to Andrea Moroni (https://www.web-to-date.com/) for sponsoring this important feature! It is now possible to render a correct language menu on detail pages which respects if a news record is translated or not.

10 = TYPO3\CMS\Frontend\DataProcessing\LanguageMenuProcessor
10 {
   as = languageMenu
   addQueryString = 1
}

11 = GeorgRinger\News\DataProcessing\DisableLanguageMenuProcessor
# comma separated list of language menu names
11.menus = languageMenu
Copied!

All Changes

This is a list of all changes in this release:

2020-10-20 [FEATURE] Disable language menu item if news is not translated (Commit 99caedee by Georg Ringer)
2020-10-16 [TASK] Remove trailing comma (Commit d1834a3d by Georg Ringer)
2020-10-15 [TASK] Update outdated links (#1369) (Commit 4e7cab53 by Simon Schaufelberger)
2020-10-15 [BUGFIX] Map translated news aliases (#1363) (Commit 9f535c3d by creifenscheid)
2020-10-15 Apply fixes from StyleCI (#1367) (Commit f0f20c93 by Georg Ringer)
2020-10-15 [BUGFIX] show correct overlay palette for video and audio filetypes (#1366) (Commit 13244e80 by Richard Vollebregt)
2020-10-08 [BUGFIX] BE module category search (#1359) (Commit 0fccc9a4 by Markus Klein)
2020-10-05 [BUGFIX] respect sys_language in FindInList (#1357) (Commit e1680790 by Henrik Ziegenhain)
2020-10-01 [TASK] Revert FilterMenuPagesHook (Commit 0bb7a10e by Georg Ringer)
2020-09-30 [BUGFIX] Check if _PAGES_OVERLAY_REQUESTEDLANGUAGE exists (Commit 87e28e62 by Georg Ringer)
2020-09-29 [FEATURE] Filter detail pages if news is not translated (Commit 957d2be1 by Georg Ringer)

Copied!

This list has been created by using git log $(git describe --tags --abbrev=0)..HEAD --abbrev-commit --pretty='%ad %s (Commit %h by %an)' --date=short.

8.4.1 - 25th September 2020

Bugfix release

Just a bugfix release

All Changes

This is a list of all changes in this release:

2020-09-25 [TASK] Drop DataMapper workaround for QueryInterface injection (Commit e82cff29 by Georg Ringer)
2020-09-25 Apply fixes from StyleCI (#1348) (Commit 91f2a266 by Georg Ringer)
2020-09-25 [BUGFIX] Fix failing test (Commit a34348c0 by Georg Ringer)
2020-09-25 [BUGFIX] Show sitemap_changefreq only for version 10. (Commit 757c306e by Georg Ringer)
2020-09-25 Apply fixes from StyleCI (#1346) (Commit 6cf21870 by Georg Ringer)
2020-09-25 [TASK] Remove self_accessor from styleci.yml (Commit 78ae4f7b by Georg Ringer)
2020-09-25 [TASK] Remove no_alias_functions from styleci.yml (Commit e269fd27 by Georg Ringer)
2020-09-25 [TASK] Remove unused property in test (Commit 30dffa9a by Georg Ringer)
2020-09-25 [BUGFIX] Remove wrong displayCond (Commit 20e98668 by Georg Ringer)
2020-09-21 [TASK] Use addToList for allowedNewTables (Commit 9f21abda by Georg Ringer)
2020-09-16 fasted ==> fastest (#1339) (Commit 0fbfadbd by Franz Holzinger)
2020-08-28 Add missing page key to config section (#1329) (Commit 868701f1 by Martin Hummer)
Copied!

This list has been created by using git log $(git describe --tags --abbrev=0)..HEAD --abbrev-commit --pretty='%ad %s (Commit %h by %an)' --date=short.

8.4.0 - 18th August 2020

Important changes

Database compare required

2 changes require a database compare after an update

All Changes

This is a list of all changes in this release:

2020-08-13 [DOCS] Use new TypoScript condition syntax for RSS feed (#1325) (Commit 518f290c by Chris Müller)
2020-07-30 [BUGFIX] Use makeInstance for ResourceFactory in ImportController (Commit d46a3d35 by Georg Ringer)
2020-07-30 [BUGFIX] Use makeInstance for ResourceFactory in ImportController (Commit 9336e543 by Georg Ringer)
2020-07-29 [BUGFIX] Determine current route correctly (#1315) (Commit e6acd640 by Markus Klein)
2020-07-29 [DOCS] Minor fix in TypoScript configuration (#1317) (Commit bd9f4a06 by Sybille Peters)
2020-07-29 [DOCS] Fix code blocks in TypoScript settings (#1318) (Commit 3ef5d601 by Sybille Peters)
2020-07-21 [FEATURE] Add changefreq and priority for XML sitemap (#1316) (Commit 08e0d600 by echavaillaz)
2020-07-20 [DOCS] Add more TypoScript / Flexform default values (#1320) (Commit 005aa681 by Sybille Peters)
2020-07-20 [DOCS] Fix docs rendering warnings (#1319) (Commit 94e52a4b by Sybille Peters)
2020-07-09 [!!!][TASK] Change title from tintytext to varchar(255) (#1310) (Commit 5661e8d5 by Stefanos Karasavvidis)
2020-07-06 Add Extbase persistence configuration to PHP (#1308) (Commit 8857b7cf by Toben Schmidt)
2020-06-18 [DOC] Overwrite Demand in FE (Commit 28dd3af2 by Georg Ringer)
2020-06-09 [DOC] Fix typo in admin documentation (#1295) (Commit 5157cd5f by Markus Poerschke)
2020-06-09 [BUGFIX] Update deprecated function call in News Import module (#1296) (Commit f60a7763 by ben mckenzie)
2020-05-26 [BUGFIX] Use correct page not found handler (Commit 8ea355e9 by Georg Ringer)
2020-05-24 [BUGFIX] Use correct module routes (#1273) (Commit 802e6a64 by Jonathan Kieling)
2020-05-16 [BUGFIX] Fix excludeAlreadyDisplayedNews condition (#1278) (Commit af5beda6 by Helmut Hummel)
2020-05-15 [BUGFIX] give priority to news-title as primary source for NewsTitleProvider (#1277) (Commit 89eb4cd9 by Ingo Fabbri)
2020-05-12 [BUGFIX] Improve check if news record exists (Commit 05a8d843 by Georg Ringer)

Copied!

This list has been created by using git log $(git describe --tags --abbrev=0)..HEAD --abbrev-commit --pretty='%ad %s (Commit %h by %an)' --date=short.

8.3.0 - 12th May 2020

Important changes

Required Core version

Due to important bugfixes in TYPO3 Core itself, the minimum version is now either TYPO3 9.5.17 or 10.4.2.

Improved RSS by plugin example

EXT:news now ships a modified version of EXT:fluid_styled_content's List.html to simplfiy the setup of RSS feeds. All you need to do is use

lib.contentElement.templateRootPaths.5 = EXT:news/Resources/Private/Examples/Rss/fluid_styled_content/Templates
Copied!

All Changes

This is a list of all changes in this release:

2020-05-12 [TASK] Raise requirements for TYPO3 Core (Commit 2a3bf518 by Georg Ringer)
2020-05-12 [FEATURE] Ship custom List.html of EXT:fluid_styled_content (Commit 9c92a3e0 by Georg Ringer)
2020-05-06 [DOC] Proper changelist for 8.2.0 (Commit 1401dc7c by Georg Ringer)

Copied!

This list has been created by using git log $(git describe --tags --abbrev=0)..HEAD --abbrev-commit --pretty='%ad %s (Commit %h by %an)' --date=short.

8.2.0 - 4th May 2020

Important changes

The slug eval configuration of all 3 slug fields (news,tag and category record) is changed from uniqueInSite to unique.

If you really need uniqueInSite you can switch to this setting in the Extension settings in the Install Tool.

Some further explanation:

  • If uniqueInSite is used, news records in multiple sites can have the slug. The drawback is that those news can't be shared between these sites.
  • Using unique means that news records in multiple sites have always a different slug, no matter if the title is the same or not. Therefore news can be shared between multiple sites.

All Changes

This is a list of all changes in this release:

2020-05-06 Apply fixes from StyleCI (#1262) (Commit c0a7da2e by Georg Ringer)
2020-05-06 [!!!][BUGFIX] Change slug evaluation to unique instead of uniqueInSite (Commit b578b8f1 by Georg Ringer)
2020-05-06 [BUGFIX] Force integer for chunk size (Commit d41e9471 by Georg Ringer)
2020-05-05 [TASK] Avoid TCA migration entries for 10 LTS (Commit 9fd89417 by Georg Ringer)

Copied!

This list has been created by using git log 8.1.0..HEAD --abbrev-commit --pretty='%ad %s (Commit %h by %an)' --date=short.

8.1.1 - 4th May 2020

Important changes

If you are using TYPO3 10.4.0, please update to 10.4.1!

All Changes

This is a list of all changes in this release:

2020-05-04 Apply fixes from StyleCI (#1254) (Commit b0222e5d by Georg Ringer)
2020-05-04 [BUGFIX] Add default priority #1253 (Commit 57fcf9ad by Georg Ringer)
2020-05-04 [DOC] Remove outdated doc about sitemap (Commit ed6da01c by Georg Ringer)
2020-05-03 [BUGFIX] Check for correct pageTitle setting (#1251) (Commit 8359bbce by Andreas Fernandez)
2020-04-29 [BUGFIX] Create valid returnUrls in BE module (#1247) (Commit b060df67 by Markus Klein)
Copied!

This list has been created by using git log 8.1.0..HEAD --abbrev-commit --pretty='%ad %s (Commit %h by %an)' --date=short.

8.1.0 - 28th April 2020

Important changes

The following changes might be important for your installation.

Adopt minimum requirements

If still using TYPO3 9.5, the minimum TYPO3 version is now 9.5.16.

The reason is the class \TYPO3\CMS\Core\Information\Typo3Information which is available since this version.

Custom ChunkViewHelper

The ViewHelper Iterator\Chunk has been copied from EXT:vhs to EXT:news to be independent from other extensions.

It allows rendering news items in columns.

<f:for each="{news -> n:iterator.chunk(count: 3)}" as="col" iteration="cycle">
   <div class="row">
      <f:for each="{col}" as="newsItem">
         <div class="col-md-4">
            <f:render partial="List/Item" arguments="{newsItem: newsItem, settings:settings}"/>
         </div>
      </f:for>
   </div>
</f:for>
Copied!

All Changes

This is a list of all changes in this release:

2020-04-28 [TASK] Mention VH remove in docs (Commit 1b70f3de by Georg Ringer)
2020-04-28 [TASK] Allow more versions of rx_shariff in ext_emconf (Commit 62d0cbaa by Georg Ringer)
2020-04-28 [TASK] Allow more versions of rx-shariff (Commit b388b026 by Georg Ringer)
2020-04-28 [TASK] Use Typo3Version (#1239) (Commit b8b8c511 by Georg Ringer)
2020-04-28 [TASK] Add test for ChunkViewHelper (Commit 6ba0aec3 by Georg Ringer)
2020-04-28 [FEATURE] Add VH iterator:chunk (Commit c58b81e4 by Georg Ringer)
2020-04-28 [BUGFIX] Fix redirect to TSconfig configured storage page (#1233) (Commit e8b30d74 by Markus Klein)

Copied!

This list has been created by using git log 8.0.0..HEAD --abbrev-commit --pretty='%ad %s (Commit %h by %an)' --date=short.

8.0.0 - 2020/21/04

Support for TYPO3 9 & 10

This version supports TYPO3 9 and 10 LTS only. To ease the upgrade from older installations, the upgrade wizards for news are still kept.

A big thanks to:

  • TYPO3 Academic Committee and especially Doris Leonhardt for organizing sponsorings by various universities: Hochschule Osnabrück, Hochschule Offenburg, Technische Universität Kaiserslautern, Universität Ulm, Universität Rostock, Bauhaus-Universität Weimar, Universität Wien, Otto-Friedrich-Universität Bamberg, Technische Universität München, Akademie der Wissenschaften und der Literatur Mainz, Hochschule Darmstadt
  • Sponsors: webconsulting, Torben Hansen, macopedia, Agenda Open Systems, sitegeist, mediatis, dörler engineering services e.U., Cyberhouse, Elementare Teilchen
  • Individual sponsors: Karavas Aristeidis, Susanne Moog, naderio.de, Damian Ickler, atnexxt, Stephan Salzmann, Rainer Karnowski, Sebastian Klein, Markus Timtner, Fritz Knauf, Marco Bresch, Marc Fell, Andreas Heller, Metin Yilmaz

This release wouldn't have been possible without your support!

Also thanks to Benjamin Franzke and Sebastian Fischer who helped codewise a lot.

Breaking changes

The following changes should be carefully checked.

Removed ViewHelpers

The following Social ViewHelpers have been removed:

  • Disqus
  • GooglePlus
  • Gravatar
  • Twitter
  • Facebook/Comment
  • Facebook/Like
  • Facebook/Share

Remove local xlf files

The translated xlf files have been removed in favor of Crowdin as Language Service. In TYPO3 10 Crowdin is used by default, for 9 Crowdin must be enabled with a feature flag.

Get all information about that at https://docs.typo3.org/m/typo3/reference-coreapi/master/en-us/ApiOverview/Internationalization/ManagingTranslations.html.

The Crowdin project can be found at https://crowdin.com/project/typo3-extension-news.

Use extension configuration api

Watch out that only the configuration $GLOBALS[’TYPO3_CONF_VARS']['EXTENSION']['news'] is used. The serialized counterpart $GLOBALS['TYPO3_CONF_VARS']['EXT']['extConf'] has been deprecated with TYPO3 9 already!

Remove import command

The import command controller has never really been used and has been removed.

Features

Improved SEO features

The TitleTagViewHelper has been migrated to use the PageTitleProvider.

Hreflang on news detail pages

If using languages with the language mode strict, the hreflang tag must only be generated if the according news record is translated as well!

EXT:news reduces the rendered hreflang attributes by using this event and checking the availability of the records.

Check availability in Fluid templates

If you are building a language menu and want to check if the news record is available, you can use the ViewHelper <n:check.pageAvailableInLanguage language="{languageId}">. A full example can look like this:

<ul>
    <f:for each="{LanguageMenu}" as="item">
        <f:if condition="{item.available}">
            <n:check.pageAvailableInLanguage language="{item.languageId}">
                <li class="language-switch {f:if(condition:item.active, then:'active')}">
                    <a href="{item.link}">{item.navigationTitle}</a>
                </li>
            </n:check.pageAvailableInLanguage>
        </f:if>
    </f:for>
</ul>
Copied!

All Changes

This is a list of all changes in this release:

2020-04-21 [BUGFIX] Proper mocking of LanguageService in Tests (Commit 8168cbf1 by Georg Ringer)
2020-04-21 [TASK] Force composer to use 10.4 (Commit b9bb646c by Georg Ringer)
2020-04-21 [DOC] Further documentation for 8.0.0 (Commit f807d5d4 by Georg Ringer)
2020-04-15 [BUGFIX] Adopt max key length for path_segment (Commit 9554b36e by Georg Ringer)
2020-04-15 [BUGFIX] Fix path_segment not set in NewsImportService (#1186) (Commit 50d1f3b7 by Markus Mächler)
2020-04-15 [DOC] Update TS condition for detail page (#1216) (Commit 4d8a0463 by Markus Klein)
2020-04-14 [TASK] Check TYPO3_branch for version info (Commit ed365443 by Georg Ringer)
2020-04-10 [DOC] Improve 8.0.0 rst (Commit 2252ce82 by Georg Ringer)
2020-04-09 [TASK] Folluwp (Commit 69cf06d8 by Georg Ringer)
2020-04-09 [TASK] Follwup (Commit da13a9ef by Georg Ringer)
2020-04-09 [TASK] Properly set up ClassCacheManager in 9 (Commit 70b5e280 by Georg Ringer)
2020-04-09 [TASK] Follwup php error (Commit 02ccc9cd by Georg Ringer)
2020-04-09 [FEATURE] Support strict mode for hreflang + language menu (Commit f4dc5de1 by Georg Ringer)
2020-04-08 [DOC] Update example about TCAdefaults (Commit ce109636 by Georg Ringer)
2020-04-07 [DOC] Start 8.0.0 changelog (Commit 94352cef by Georg Ringer)
2020-04-07 [TASK] Readd title tag vh (Commit fc950092 by Georg Ringer)
2020-04-07 [BUGFIX] leave early when no proxy class is set (#1202) (Commit 20a7c13b by Christian Eßl)
2020-04-01 [BUGFIX] Force cache rebuild after clear (Commit d1bab5e1 by Georg Ringer)
2020-04-01 [TASK] Simplify class loader logic (Commit d3c1b85c by Georg Ringer)
2020-03-30 [BUGFIX] Check properly for DI in ClassLoader (Commit ac0cb20c by Georg Ringer)
2020-03-30 [TASK] Remove exclude from l10n_parent (Commit 205cb3ef by Georg Ringer)
2020-03-28 Merge remote-tracking branch 'origin/8.0' (Commit 10807c7b by Georg Ringer)
2020-03-28 [DOC] fix spelling in doc-code for registerPlugin and flexform path (#1182) (Commit 12946e00 by MonTea)
2020-03-03 [BUGFIX] Flx class loading for 10 (Commit cc8f162d by Georg Ringer)
2020-02-26 Reduce bytes of path_segment INDEX to 225 (#1169) (Commit 93d318cb by Stefan Frömken)
2020-02-26 Add Index to speed up Slug Generation for UpgradeWizard (#1167) (Commit fd17fbde by Stefan Frömken)
2020-02-18 [BUGFIX] Fix update wizards (Commit 03e53e24 by Georg Ringer)
2020-02-17 [TASK] Readd slug updates (Commit 6bd900fd by Georg Ringer)
2020-02-16 [TASK] Fix notices (Commit 20a1827d by Georg Ringer)
2020-02-16 [TASK] Fix namespace of tests (Commit 05a58bf1 by Georg Ringer)
2020-02-16 [TASK] Remove outdated test (Commit 73be698b by Georg Ringer)
2020-02-15 Apply fixes from StyleCI (#1156) (Commit a56524d8 by Georg Ringer)
2020-02-15 [BUGFIX] Disable Treeprovider for the moment (Commit c40ea4e8 by Georg Ringer)
2020-02-15 [BUGFIX] Force initialize cache (Commit e28d77ef by Georg Ringer)
2020-02-15 [TASK] Add month.html from ext:eventnews to gitignore (Commit 6b003a1d by Georg Ringer)
2020-02-15 [FEATURE] Reenable page title through template (Commit eaa45b8f by Georg Ringer)
2020-02-13 [TASK] Replace all other usages of EmConfiguration (Commit 7320bf04 by Georg Ringer)
2020-02-13 [BUGFIX] Add missing ; (Commit 26608149 by Georg Ringer)
2020-02-13 Merge branch 'master' into 8.0 (Commit c7951ea6 by Georg Ringer)
2020-02-13 [!!!][TASK] Remove usage of \GeorgRinger\News\Utility\EmConfiguration (Commit c8ab6426 by Georg Ringer)
2020-02-13 [TASK] Use ::class everywhere (Commit bd7fb248 by Georg Ringer)
2020-02-13 [TASK] Add functional tests (Commit e3f52cbb by Georg Ringer)
2020-02-12 [DOC] Better description for "archiveRestriction = active" (#925) (Commit bb89dd28 by esokoll2)
2020-02-12 [TASK] add documentation how to define multiple sitemaps (#1093) (Commit b847e076 by Johannes)
2020-02-09 [!!!][TASK] Remove local xlf files (Commit 38beffc2 by Georg Ringer)
2020-02-09 [BUGFIX] Fix #1115: bulk editing of records is not possible since TYPO3 8.x (#1116) (Commit b17358ff by Dmitry Dulepov)
2020-02-09 [TASK] Use group type for l10n_parent (#1142) (Commit c84f2ea3 by Stefan Frömken)
2020-02-09 Apply fixes from StyleCI (#1144) (Commit 9c390576 by Georg Ringer)
2020-02-09 [TASK] Allow all 10x versions (Commit 5609ade0 by Georg Ringer)
2020-02-08 [TASK] Remove init of unused and outdated hook (Commit 3eb81488 by Georg Ringer)
2020-02-07 [TASK] Run tests for php 7.4 (Commit f0ca37be by Georg Ringer)
2020-02-07 [BUGFIX] Fix tests for 10 (Commit d4ba706a by Georg Ringer)
2020-02-06 [TASK] Followup (Commit 6bb23010 by Georg Ringer)
2020-02-06 [TASK] Followup (Commit 2e8cb8e0 by Georg Ringer)
2020-02-06 [TASK] Use void (Commit 2db8eb69 by Georg Ringer)
2020-02-06 [TASK] Adopt unit tests (Commit ef671873 by Georg Ringer)
2020-02-03 [BUGFIX] Remove not needed constructor (Commit fc366da6 by Georg Ringer)
2020-01-22 [TASK] Change max width for OG images (Commit 5ce3fbd7 by Georg Ringer)
2020-01-17 [BUGFIX] don't show path_segment when in non live workspace (#1124) (Commit 3981dfc4 by Hannes Bochmann)
2020-01-14 This is to add the possibility to load a footer .js file instead of an header one (#936) (Commit dcb54175 by Nalmar-x)
2020-01-14 [BUGFIX] prevent rendering of html tag if video is rendered (#1121) (Commit 0d77f56a by DerBasti)
2019-12-18 [FEATURE] Use custom page title provider (Commit 2ce0e72f by Georg Ringer)
2019-12-13 [BUGFIX] Skip content elements with negative colPos (Commit 8ae936d6 by Georg Ringer)
2019-12-13 [DOC] Changes in routeEnhancer Documentation regarding pagination to page 1 (#1104) (Commit 9e037721 by esokoll2)
2019-11-19 [BUGFIX] Take account of the fieldname for category relations in AccessControlService (#1057) (Commit 93d07ec2 by Thomas Scholze)
2019-11-19 [BUGFIX] Remove "default" richtextConfiguration from TCA (#934) (Commit ca376ac4 by Io Kon)
2019-10-24 [BUGFIX] Use SlugHelper::generate in order to considerate slug field TCA configuration (#1089) (Commit 964ded3b by Felix Nagel)
2019-10-22 Apply fixes from StyleCI (#1087) (Commit f8c3c19a by Georg Ringer)
2019-10-22 [!!!][TASK] Remove import command (Commit b1ae25b2 by Georg Ringer)
2019-10-22 [TASK] Remove call to ->showHiddenRecords (Commit 01828d2f by Georg Ringer)
2019-10-22 [BUGFIX] Fix composer validations (Commit e5578b9b by Georg Ringer)
2019-10-22 [BUGFIX] Fix composer validations (Commit 59307366 by Georg Ringer)
2019-10-22 [TASK] Replace usage of PATH_site (Commit 49cdc6b0 by Georg Ringer)
2019-10-22 [DOC] Updated "extend flexforms" documentation (#1085) (Commit a6656b58 by Naderio)
2019-10-19 [!!!][TASK] Use extension configuration api (Commit 28345b4a by Georg Ringer)
2019-10-19 [TASK] Replace usage of GeneralUtility::devLog (Commit defec1eb by Georg Ringer)
2019-10-19 [TASK] Use LanguageAspect in SimplePrevNextVh (Commit 8b5704cc by Georg Ringer)
2019-10-19 Apply fixes from StyleCI (#1081) (Commit d22f36d0 by Georg Ringer)
2019-10-19 [TASK] Use proper method to set meta tags (Commit c3fc5f7b by Georg Ringer)
2019-10-19 [BUGFIX] Fix tag assigned in unit test for news (#1073) (Commit 857aee48 by Klaus Hörmann-Engl)
2019-10-19 [!!!][TASK] Remove usage of removed disqus VH (Commit b08d5304 by Georg Ringer)
2019-10-19 [!!!][TASK] Set an action in action link of DateMenu (Commit cadc3024 by Georg Ringer)
2019-10-19 [TASK] Replace usage of $GLOBALS['TSFE']->tmpl->getFileName (Commit 43469c65 by Georg Ringer)
2019-10-17 [BUGFIX] Fix docblock issues (Commit 3237f099 by Georg Ringer)
2019-10-15 [TASK] Update TargetLinkViewHelper (Commit 834e1f13 by Georg Ringer)
2019-10-13 [BUGFIX] Use correct url (Commit 988072b7 by Georg Ringer)
2019-10-13 [TASK] Use proper routing in BE module (Commit 302e5bbd by Georg Ringer)
2019-10-13 [BUGFIX] Fix TCA of checkoxes (Commit e1fbec05 by Georg Ringer)
2019-10-13 [TASK] Use proper access to user tsconfig (Commit 534495ba by Georg Ringer)
2019-10-13 [TASK] Use EXT:core instead of EXT:lang (Commit 6ef7294a by Georg Ringer)
2019-10-13 [TASK] Use TYPO3\CMS\Core\Localization\LanguageService (Commit b86286da by Georg Ringer)
2019-10-13 [TASK] Add persistence configuration (Commit 776f6184 by Georg Ringer)
2019-10-10 [BUGFIX] prevent sanitizing title if title is not set in fieldArray (#1063) (Commit 7d61edce by DaRealFreak)
2019-09-30 Update Index.rst (#1058) (Commit 5bd43900 by bahneclaussen)
2019-09-25 [BUGFIX] Use correct time for hrDate in sitemaps (#1056) (Commit 84e73ed7 by Markus Klein)
2019-09-25 [DOC] Add demo template for google news sitemap (#1055) (Commit 13e345ad by Markus Klein)
2019-09-19 [BUGFIX] Remove slash in path_segement of news (TYPO3 8) (#1053) (Commit 0f0feefe by chris)
2019-09-18 [FEATURE] Add Google News mode to xml sitemap provider (#1052) (Commit 5412f2b1 by Markus Klein)
2019-09-18 [BUGFIX] Show internal or external news in shortcut render #1046 (#1047) (Commit 5d6c7320 by Guillaume Germain)
2019-09-17 Return must be an array (#1050) (Commit 21a11d41 by Jo Hasenau)
2019-09-11 [BUGFIX] Return true for executed wizard, also if no update queries necessary (#1033) (Commit 09115be8 by Jörg Kummer)
2019-09-10 Apply fixes from StyleCI (#1043) (Commit 42146f61 by Georg Ringer)
2019-09-09 [TASK] Remove version check from AddNewsToMenuProcessor (Commit 05899aa7 by Georg Ringer)
2019-09-09 [TASK] Add strict type to Url Utility (Commit 8306a75b by Georg Ringer)
2019-09-09 [TASK] Remove 9 checks in php (Commit e17c0a31 by Georg Ringer)
2019-09-09 [TASK] Remove check for dd_googlesitemap (Commit eb97a76e by Georg Ringer)
2019-09-09 [TASK] Use new annotations in models (Commit 05a24ef7 by Georg Ringer)
2019-09-09 [TASK] Use correct AbstractConditionViewHelper class (Commit 5e5aae0b by Georg Ringer)
2019-09-09 [TASK] Use correct interface in TargetLinkViewHelperTest (Commit 898409b8 by Georg Ringer)
2019-09-09 [!!!][TASK] Refactor ViewHelpers (Commit 3514f0a7 by Georg Ringer)
2019-09-09 [!!!][TASK] Start migration to 9-10 support (Commit f9e36e39 by Georg Ringer)
2019-09-04 [TASK] Add new translations (Commit 1da3b709 by Georg Ringer)
2019-09-03 [TASK] Add crowdin badge (Commit 4d2b91bd by Georg Ringer)
2019-08-30 [TASK] Add a .gitignore (#1029) (Commit b5cf6acb by Oliver Klee)

Copied!

This list has been created by using git log 7.3.1..HEAD --abbrev-commit --pretty='%ad %s (Commit %h by %an)' --date=short.

7.3.1 - 2019/29/08

All Changes

This is a list of all changes in this release:

2019-08-29 [TASK] Add translations (Commit f2727976 by Georg Ringer)
2019-08-29 [BUGFIX] Fix XCLASS for XliffParser in 8 (Commit 8e995ac9 by Georg Ringer)
Copied!

This list has been created by using git log 7.3.0..HEAD --abbrev-commit --pretty='%ad %s (Commit %h by %an)' --date=short.

7.3.0 - 2019/28/08

Important changes

Starting of major refactoring

This release is the starting point of next major refactoring project. The main target is to support TYPO3 9 & 10 LTS. Providing support for 2 LTS versions has got the following advantages: - People using 9 already get the new features - Upgrade to 10 is therefore easier because it means that the extension is already compatible

So what is it all about:

  • SEO: Support for MetaTag-API, custom TitleTag-Provider, custom Sitemap-Provider
  • Translations: With 9 the translations changed a lot, so this needs to be all checked and tested
  • Code adoption: Fix deprecations, remove code specific to 8
  • Best practice: The extension is used for a lot of developers as best practice example. Some code parts need to be improved to fit the expectations.
  • Features: I got a couple of features in my mind as well
  • Breaking changes: Those won't be many and will be feature like but as those change behaviour those are still breaking.

You can follow the next steps at https://github.com/georgringer/news/projects/3.

Features

The following features have been added.

Custom Sitemap Provider

A custom sitemap provider NewsXmlSitemapDataProvider has been added to improve the sitemaps generated by EXT:seo in version 9. Read about its configuration in the chapter Best practice > SEO.

XLF Translations

Instead of using the translation server (http://translation.typo3.org) the service https://crowdin.com/project/typo3-extension-news is being used. The translations are now included in the extension itself.

All Changes

This is a list of all changes in this release:

2019-08-28 [TASK] Update translations (Commit f2b95587 by Georg Ringer)
2019-08-19 [TASK] Fix CI issues (Commit 209bc55d by Georg Ringer)
2019-08-19 [TASK] Prioritize local language files over global ones (Commit 0bf8c488 by Georg Ringer)
2019-08-18 [FEATURE] Support hrDate in sitemap (Commit f5fd8def by Georg Ringer)
2019-08-17 [BUGFIX] Fix wrong handling of singal dispatcher result (Commit f21ff259 by Dmitry Dulepov)
2019-08-17 Apply fixes from StyleCI (#1009) (Commit cdcf2c70 by Georg Ringer)
2019-08-17 [TASK] Finish docs (Commit 340e47f9 by Georg Ringer)
2019-08-16 [DOC] Start 7.3.0 notes (Commit 7b165f3d by Georg Ringer)
2019-08-16 [TASK] Update german translations (Commit b01b0b6f by Georg Ringer)
2019-08-15 [DOC] Example how to render news with same tags (Commit 1d69a13a by Georg Ringer)
2019-08-15 [BUGFIX] Use correct lenght attribute in rss feed (Commit f109bf49 by Georg Ringer)
2019-08-15 [FEATURE] Add itemprop="image" to image elements (Commit ff368f09 by Georg Ringer)
2019-08-15 [BUGFIX] Get only last defined optiongroup (#963) (Commit daa6f485 by 123AltmarkAgentur)
2019-08-15 [TASK] Change slug generation for 8 and wizards (#1002) (Commit b9aedf7a by Georg Ringer)
2019-08-15 [BUGFIX] Respect dates before 1970 in datemenu (Commit a2795e21 by Georg Ringer)
2019-08-15 [BUGFIX] Provide identifir for RealurlAliasNewsSlugUpdater (Commit 34d7023f by Georg Ringer)
2019-08-14 [TASK] Add more translations (Commit fcd1b573 by Georg Ringer)
2019-08-14 Update Crowdin configuration file (Commit 4dec05e7 by Georg Ringer)
2019-08-14 [TASK] Add translations to the extension (Commit ad9e13bd by Georg Ringer)
2019-08-14 [TASK]Apply fixes from StyleCI (Commit 1717655a by Georg Ringer)
2019-08-14 [BUGFIX] Add support for tag lists with pagination in twb template (#988) (Commit 889920c9 by Johannes)
2019-08-14 Update Crowdin configuration file (Commit 43bbad50 by Georg Ringer)
2019-08-14 [TASK] Add isRegistered check for custom icons (Commit ebad625e by Georg Ringer)
2019-08-14 [BUGFIX] Check for the category setting to exist when adding category constraints. (#905) (Commit db50d859 by Simon Fischer)
2019-08-13 [BUGFIX] #960: SQL error in the search module (#961) (Commit 81fb114d by Dmitry Dulepov)
2019-08-13 [TASK] Remove DebugConsole from import js (Commit aa96a55b by Georg Ringer)
2019-08-12 [FEATURE] Provide custom Sitemap provider (Commit 8f3c7a8d by Georg Ringer)
2019-08-12 [DOC] Use 7.2.3 instead of 7.2.2 in Changelog/7-2-3.rst (#959) (Commit e47ed862 by Georg Tiefenbrunn)
2019-08-08 [TASK] Replace deprecated constant TAB (Commit b9f72a82 by Georg Ringer)


Copied!

This list has been created by using git log 7.2.3..HEAD --abbrev-commit --pretty='%ad %s (Commit %h by %an)' --date=short.

7.2.3 - 2019/08/06

This is a bugfix release and reverts commit 095bd174cc5134296142fb3e969c88d5a3f741af

All Changes

This is a list of all changes in this release:

2019-08-06 Revert "BUGFIX: Allow to overwrite TypoScript settings (#908)" (Commit 87c3b31f by Georg Ringer)

Copied!

This list has been created by using git log 7.2.2..HEAD --abbrev-commit --pretty='%ad %s (Commit %h by %an)' --date=short.

7.2.2 - 2019/08/05

This is a followup bugfix release as the composer release was kind of strange.

7.2.1 - 2019/08/04

This is a bugfix release.

All Changes

This is a list of all changes in this release:

2019-08-04 [TASK] Add funding button (Commit ede0e834 by Georg Ringer)
2019-08-04 [TASK] Add renderType inputDateTime to datetime columns (#923) (Commit f13009c2 by Jan Kiesewetter)
2019-08-04 [BUGFIX] Make the setRespectSysLanguage configurable in CategoryRepository (Commit 63b7a617 by Georg Ringer)
2019-08-02 [Bugfix] Constructor in subsequent proxyclasses (#947) (Commit 5402a228 by Markus Kugler)
2019-07-25 Add MySQL as service to Travis conf (#946) (Commit dda700a3 by Stefan Frömken)
2019-07-16 [BUGFIX] Replace undefined var $recordTitle (#941) (Commit fb5e8c6b by vaxul)
2019-05-20 Fix news sitemap for multiple storage pages (#910) (Commit 4582db99 by Ayke Halder)
2019-05-09 BUGFIX: Allow to overwrite TypoScript settings (#908) (Commit 095bd174 by Daniel Siepmann)
2019-05-06 [BUGFIX] Add data-namespace-typo3-fluid (#902) (Commit 3db158ec by T3 Premium)
2019-05-06 [TASK] Change datetime and archive fields to bigint (#903) (Commit d0c62921 by Daniel Huf)
2019-05-06 [TASK] Define absolute typolinks for atom feed (#904) (Commit 45dbd213 by Daniel Huf)


Copied!

This list has been created by using git log 7.2.0..HEAD --abbrev-commit --pretty='%ad %s (Commit %h by %an)' --date=short.

7.2.0 - 2019/04/15

Important changes

On the fly creation of tags

A special thanks to Nicole Cordes who provided a new implementation of creating tags on the fly. The code has been taken from https://github.com/IchHabRecht/t3tags.

Features

Custom menu processor

A processor has been added which is useful for detail pages to add the news record as fake menu entry.

10 = TYPO3\CMS\Frontend\DataProcessing\MenuProcessor
10 {
   as = breadcrumbMenu
   ... further configuration
}
20 = GeorgRinger\News\DataProcessing\AddNewsToMenuProcessor
20.menus = breadcrumbMenu,specialMenu
Copied!

All Changes

This is a list of all changes in this release:

2019-04-10 [DOC] Added tip for chars counter. (Commit 7b687c59 by gaumondp)
2019-04-09 [FEATURE] Allow other extensions to add actions to the news administration module (#688) (Commit c8208edd by Dmitry Dulepov)
2019-04-09 [BUGFIX] Change parentcategory getter in Category model (Commit 8dc44dc5 by Georg Ringer)
2019-04-09 [BUGFIX] Reset news in detailAction if internal or external (Commit e1cb2be1 by Georg Ringer)
2019-04-09 [DOC] Example how to set link page in Fluid (Commit 23679999 by Georg Ringer)
2019-04-09 [TASK] Set correct tca information for crdate+tstamp (Commit 9773c9bc by Georg Ringer)
2019-04-09 [FEATURE] Add menu processor to add news record to menus (Commit 32ca5b56 by Georg Ringer)
2019-04-08 [BUGFIX] Use logicalAnd to combine search results (Commit 30cd65d9 by Georg Ringer)
2019-04-08 [TASK] Change label of bodytext (Commit 5faeee2f by Georg Ringer)
2019-04-08 [FEATURE] Custom page icon for pages with news plugins (Commit 9637af05 by Georg Ringer)
2019-04-08 [BUGFIX] Fix #858 by adding PageLayoutView hook to hide all inline tt_content elements showing in page module (#861) (Commit 18f742af by JarvisH)
2019-04-08 [BUGFIX] Use f:link.typolink instead of f:link.page (Commit 5193e57b by Georg Ringer)
2019-04-08 [BUGFIX] Init object manager in RenderMediaVh (Commit ec4db236 by Georg Ringer)
2019-04-08 [BUGFIX] AddCacheTagsByNewsRecords for selectedListAction (#888) (Commit b1a20d0c by Ayke Halder)
2019-04-08 [DOC] Explain routing in TYPO3 v9 (#891) (Commit 49af74f3 by Sebastian Klein)
2019-04-08 [BUGFIX] Remove offset from calculcationg number of pages (Commit aa1d4a15 by Georg Ringer)
2019-04-05 [TASK] Release of 7.1.1 (Commit 9b0e54ab by Georg Ringer)
2019-04-05 [BUGFIX] Add missing l10n_source columns (#890) (Commit a9c907bd by Oliver Hader)
2019-04-04 - parameter disableLanguageOverlayMode has been added to the generateQuery method (#889) (Commit 40709195 by Alex)
2019-04-03 Fix strip of "ORDER BY" in statistics query (#883) (Commit 6a796eb4 by Markus Poerschke)
2019-03-25 [BUGFIX] Handle array's within method Page::setRegisterProperties (#881) (Commit 9752108d by Jörg Kummer)
2019-03-22 [BUGFIX] Restore dummy-preview-image (#875) (Commit 676c5319 by Jörg Kummer)
2019-03-20 FIX #870 Exception when importing tt_news with news_ttnewsimport (#872) (Commit 8adf2987 by Peter Linzenkirchner)
2019-03-16 [BUGFIX] Fix creating tags on the fly (Commit f8ed372f by Georg Ringer)
2019-03-14 [BUGFIX] Create a unique slug value in SlugService (#846) (#847) (Commit 20602e8e by Wolfgang Klinger)
2019-03-09 [FEATURE] Provide pagination information to TSFE register (#781) (Commit 2c61711e by p2 media GmbH & Co. KG)
2019-03-08 [TASK] Add archiveRestriction to overrideFlexformSettingsIfEmpty (Commit 1dc2ff92 by Georg Ringer)
2019-03-08 [BUGFIX] Fix slugservice with non ascii (Commit 466b44e8 by Georg Ringer)

Copied!

This list has been created by using git log 7.1.0..HEAD --abbrev-commit --pretty='%ad %s (Commit %h by %an)' --date=short.

7.1.0 - 2019/07/03

Important changes

The following changes might be important for your installation.

Improved slug handling

The following changes might be important if you are using news and TYPO3 9:

The slug configuration for tx_news_domain_model_news improved by using features of the Core which got merged in version 9.5.4. The configuration looks now like:

'generatorOptions' => [
   'fields' => ['title'],
   'replacements' => [
       '/' => '-'
   ],
],
'fallbackCharacter' => '-',
'eval' => 'uniqueInSite',
Copied!

The fields tx_news_domain_model_tag && sys_category have been extended by a slug field as well. Upgrade wizards in the Install Tool can be used to fill the slug field.

Additionally a wizard to migrate realurl alias to the slug field has been integrated.

All Changes

This is a list of all changes in this release:

2019-02-18 [TASK] Add getIdentifier to SlugUpdater (Commit 2c8522ad by Georg Ringer)
2019-02-18 [BUGFIX] Allow setSplitSubjectWords to be false (#850) (Commit 8e60a197 by Jonas Schwabe)
2019-02-18 [TASK] Use '-' for '/'-replacement in slug (#853) (Commit 84c9c3ac by nebrot)
2019-02-11 [TASK] Use '-' for '/'-replacement in slug (#851) (Commit 638c5bb6 by nebrot)
2019-02-09 [FEATURE] Add realurl alias migration for news slugs (#849) (Commit e2cdb891 by Jörg Kummer)
2019-02-01 Check for existence of properties before formating (#835) (Commit 25ad077e by Harald Atteneder)
2019-01-28 [TASK] Remove suggest entries (Commit 06d72d4b by Georg Ringer)
2019-01-11 [BUGFIX] Fix #825 by adding cache tags for selected list news (#829) (Commit d921e823 by JarvisH)
2019-01-10 [TASK] Remove superfluous TypoScript condition (#827) (Commit 92bfdfed by Josef Glatz)
2018-12-22 [TASK] Move slot for NewsController::detailAction (Commit 8e31439a by Georg Ringer)
2018-12-22 [FEATURE] Add hook for demand creation (Commit c6f89a32 by Georg Ringer)
2018-12-22 [TASK] Fix typo (#821) (Commit 1ce10a69 by Martin)
2018-12-19 Change action name to controller name in advanced RealUrl example (#820) (Commit 996b5648 by Stefan Frömken)
2018-12-18 [BUGFIX] Generate correct URLs in sitemap for dd_googlesitemaps (#818) (Commit 55376019 by Markus Klein)
2018-12-18 [FEATURE] Add possibility to translate tags (#800) (Commit bdfde0bf by Matthias Bernad)
2018-12-11 Fix broken link to Core documentation (#814) (Commit 677c96ad by jokumer)
2018-12-07 [TASK] Improve slug configuration (Commit ea1f35aa by Georg Ringer)
2018-12-06 [TASK] Add slug field to the models (Commit 13cfe929 by Georg Ringer)
2018-12-06 [FEATURE] Slugs for category and tags (Commit 4d14925a by Georg Ringer)
2018-12-05 [BUGFIX] Fix keys for $allLayouts to handle restrictions correctly (#811) (Commit 6b97b9f0 by Dominique Kreemers)
2018-12-02 [FEATURE] Add possibility to retrieve media for detail view only (#801) (Commit 136983a4 by Seb Red)
2018-12-03 Set advancedMediaPreview to 1 instead of true (#808) (Commit 84330731 by Ben Abbott)
2018-11-12 Correction prevNextHeaderTags Condition (#735) (Commit 574e8ceb by in-session)
2018-11-12 [TASK] Remove dead code FormEngine (Commit fab22193 by Georg Ringer)
2018-11-12 [BUGFIX] Readd label for submit button in administration module (Commit 1926f360 by Georg Ringer)
2018-11-07 [DOC] Add links to Settings.cfg (#792) (Commit 48712bbf by Sybille Peters)
2018-11-07 [BUGFIX] Fix PaginateAdditionalParamsViewHelper for 9 LTS (Commit 69e46a42 by Georg Ringer)

Copied!

This list has been created by using git log 7.0.8..HEAD --abbrev-commit --pretty='%ad %s (Commit %h by %an)' --date=short.

7.0.8 - 2018/06/11

Important changes

To fix a regression of the Core regarding routing, a change has been made which requires a DB compare to add the field l10n_source. You can also upgrade to master branch of the Core until 9.5.2 is released. All Changes ----------- This is a list of all changes in this release:

2018-11-02 [TASK] Document how to manipulate flexform with tsconfig (Commit 013c1d1d by Georg Ringer)
2018-10-31 [TASK] Add recordlist as dependency (Commit a70d62a7 by Georg Ringer)
2018-10-31 [TASK] Provide l10n_source field in TCA (Commit 9c8777ce by Georg Ringer)
2018-10-25 [BUGFIX] Do not override page header data on CE shortcut to news record (#772) (Commit e624f956 by jokumer)

Copied!

This list has been created by using git log 7.0.7..HEAD --abbrev-commit --pretty='%ad %s (Commit %h by %an)' --date=short.

7.0.7 - 2018/24/10

All Changes

This is a list of all changes in this release:

2018-10-22 [TASK] Skip another test for 9 (Commit 569120ad by Georg Ringer)
2018-10-22 [TASK] Fix errors in tests (Commit 8032b877 by Georg Ringer)
2018-10-22 [TASK] Skip tests for 9 and Extbase command controllers (Commit 95a4b687 by Georg Ringer)
2018-10-22 [TASK] Adapt ViewHelper example code (#765) (Commit 886aefe8 by jokumer)
2018-10-15 [BUGFIX] Allow hiding the page tree in 9 LTS (Commit f94a5e4a by Seb Red)
2018-10-15 [BUGFIX] Improve end date in search in FE (Commit 51aa4b14 by Georg Ringer)
2018-10-15 [FOLLOWUP] Render related links as link in TYPO3 9.5 (#764) (Commit f1f6934a by echavaillaz)
2018-10-12 Fix url in redirectToPageOnStart() (#757) (Commit ed5dbe61 by Seb Red)
2018-10-12  Render related links as link in TYPO3 9.5 (#761) (Commit be8702ce by jokumer)
2018-10-12  Render related links as link in TYPO3 9.5 (#762) (Commit 79ec29b8 by jokumer)
2018-10-12 Changed confirmMsg to confirmMsgText in AdministrationController. (#713) (Commit 90a2cd8e by René Schulze)
2018-10-10 [BUGFIX] Fix token generation for administration module (Commit 7db8c6e4 by Georg Ringer)
2018-10-10 [TASK] Cleanup TCA (Commit 7a174236 by Georg Ringer)
2018-10-10 [!!!][TASK] Use uniqueInSite for path_segment (Commit 74551101 by Georg Ringer)
2018-10-09 [BUGFIX] Fix eval of archive (Commit 6873c7da by Georg Ringer)
2018-10-09 [BUGFIX] Remove duplicated enclosure tag (#752) (Commit 7a9038e2 by Daniel Huf)
Copied!

This list has been created by using git log 7.0.6..HEAD --abbrev-commit --pretty='%ad %s (Commit %h by %an)' --date=short.

7.0.6 - 2018/08/10

This release supports 9.5 LTS

All Changes

This is a list of all changes in this release:

2018-10-02 [BUGFIX] Support custom showinpreview types (Commit aa0a6547 by Georg Ringer)
2018-10-02 [TASK] Use different preview icon (Commit d472d0f4 by Georg Ringer)
2018-10-02 [DOC] Fix example for NewsControllerSettings hook (#738) (Commit 634f864c by Johannes Klinger)
2018-10-02 [Bugfix] correct date formatting in iCal list template (#726) (Commit 3a02ce4d by Hendrik Putzek)
2018-10-01 [FEATURE] Use slug handling of Core (Commit 717c1a32 by Georg Ringer)
2018-09-14 [BUGFIX] Remove wizard for link fields (Commit bafe6a5c by Georg Ringer)
2018-09-14 [BUGFIX] Fix warning detection for foreign record title #727 (#728) (Commit 247a3862 by Sebastian Michaelsen)
2018-07-25 [BUGFIX] AbstractImportService must not be a singleton (Commit cf107019 by Georg Ringer)
2018-07-25 [BUGFIX] Followup: use correct key (Commit c6722456 by Georg Ringer)
2018-07-25 [FEATURE] Change import method to array (Commit fc62d762 by Georg Ringer)
2018-07-23 [DOC] Clarify where to set config for hrDates (#692) (Commit 961b83a1 by Web-Macher)
2018-07-23 [BUGFIX] Fix news slug updater identifier (#707) (Commit 9ff2c908 by Mathias Brodala)
2018-07-06 [BUGFIX] Add a cache tag for listings without a configured startingpoint (#702) (Commit 106bd01d by bnf)
2018-07-06 [DOC] Add clarification to Changelog for 7.0.0 (#700) (Commit de705d99 by Sybille Peters)
2018-06-27 [BUGFIX] Allow strict_mode of Mysql for archive field (Commit b73b1db9 by Georg Ringer)
2018-06-20 [TASK] Allow 9.3 & 9.4 (Commit 83a61092 by Georg Ringer)
2018-06-19 [BUGFIX] Use instance of TimeTracker instead of $GLOBAL['TT'] (#684) (Commit f2a994ae by Tom Hatzer)
2018-06-15 Change ratio of video in detail view (#678) (Commit 3139db4d by Thomas Löffler)
2018-06-15 also add the localized uid as cache tag (#680) (Commit e9015293 by Marco Pfeiffer)
2018-06-15 Documentation change: fix line numbers in realurl example (#677) (Commit e526eafa by Sybille Peters)

Copied!

This list has been created by using git log 7.0.5..HEAD --abbrev-commit --pretty='%ad %s (Commit %h by %an)' --date=short.

7.0.5 - 2018/16/05

All Changes

This is a list of all changes in this release:

2018-06-09 [DOC] Document how to set properties of EM #660 (Commit 1eb5c791 by Georg Ringer)
2018-06-06 [BUGFIX] Make sure to have an array when asking for category permissions (#673) (Commit c4703699 by Markus Klein)
2018-05-22 [TASK] Adopt .gitattributes file (Commit 6980b79f by Georg Ringer)
2018-05-22 [BUGFIX] selected in all views should be available in details view (#662) (Commit 2f18ab13 by Sébastien Rüegg)
2018-05-22 [BUGFIX] Skip link generation if not possible (Commit b7d49dd9 by Georg Ringer)
2018-05-18 [TASK] Add github template issues (Commit 1342c933 by Georg Ringer)
2018-05-18 [DOC] Correct menu in changelog (Commit 9254ee3b by Georg Ringer)
Copied!

This list has been created by using git log 7.0.4..HEAD --abbrev-commit --pretty='%ad %s (Commit %h by %an)' --date=short.

7.0.4 - 2018/16/05

All Changes

This is a list of all changes in this release:

2018-05-16 [DOC] Fix changelog (Commit 3a894566 by Georg Ringer)
2018-05-16 [TASK] Release 7.0.2 (Commit 6f219cb7 by Georg Ringer)
2018-05-16 [BUGFIX] Use correct key for type query (Commit 54ca8316 by Georg Ringer)
2018-05-14 [DOC] Fix wrong code block in custom type example (Commit 49baecb3 by Georg Ringer)
2018-05-11 Improved compatibility for postgres installations (#666) (Commit 52815427 by Damir Andrašević)
2018-05-08 [BUGFIX] Forward from list to single when needed (#664) (Commit 90b314eb by Helmut Hummel)
2018-05-08 dont concatenate js/css files (#652) (Commit c4ca0715 by Marco Pfeiffer)
2018-05-08 [BUGFIX] Remove debug code and make category filter in BE work (Commit 7ec44d35 by Georg Ringer)
2018-05-02 Fixes already fully qualified urls being prefixed for Open Graph Protocol tag (#659) (Commit 243c843d by Markus Mächler)
2018-04-28 [TASK] Force string before any slug conversion (Commit 6a99271f by Georg Ringer)
2018-04-28 [TASK] Use renderType checkboxToggle for 9+ (Commit b1780aec by Georg Ringer)

Copied!

This list has been created by using git log 7.0.1..HEAD --abbrev-commit --pretty='%ad %s (Commit %h by %an)' --date=short.

7.0.1 - 2018/27/04

All Changes

This is a list of all changes in this release:

2018-04-27 [TASK] Bring back old fal getters (Commit 5f609c28 by Georg Ringer)
2018-04-27 [TASK] Use up to date realurl configuration (#655) (Commit 7f1a4c1e by Markus Klein)
2018-04-27 [TASK] Suggest newest version of rx_shariff (#656) (Commit 3287d3dd by Markus Klein)
Copied!

This list has been created by using git log 7.0.0..HEAD --abbrev-commit --pretty='%ad %s (Commit %h by %an)' --date=short.

7.0.0 - 2018/26/04

Important changes

The following changes might be important for your installation.

Support for TYPO3 9 & 8

This is the 1st version which supports the upcoming TYPO3 9 version. Version 8 LTS is supported as well but requires version 8.7.13.

  • Every usage of $GLOBALS['TYPO3_DB'] has been migrated to Doctrine DBAL.
  • Adopt TCA to the best practice of the Core without any deprecations.

Improved SEO support

SEO is important to everyone and now news supports editors with an improved url handling. Since a long time, there has been a field called path_segment which has been well hidden and can be used as alternative path segment for realurl.

Now this field has been moved right below the title and is automatically filled by the title. If the title changes, the slug field will stay the same to keep the URL in the frontend.

The documentation about realurl configuration as been adopted:

// EXT:news start
 'a' => [
     [
         'GETvar' => 'tx_news_pi1[action]',
     ],
     [
         'GETvar' => 'tx_news_pi1[controller]',
     ],
     [
         'GETvar' => 'tx_news_pi1[news]',
         'lookUpTable' => [
             'table' => 'tx_news_domain_model_news',
             'id_field' => 'uid',
             'alias_field' => 'IF(path_segment!="",path_segment,title)',
             'addWhereClause' => ' AND NOT deleted',
             'useUniqueCache' => 1,
             'languageGetVar' => 'L',
             'languageExceptionUids' => '',
             'languageField' => 'sys_language_uid',
             'transOrigPointerField' => 'l10n_parent',
             'expireDays' => 180,
             'enable404forInvalidAlias' => true
         ]
     ]
 ],
// EXT:news end
Copied!

Improved field ordering

The fields of a news record in the backend have been reordered and improved:

  • Fields type & istopnews at the top
  • Date fields moved up
  • Author fields moved to the tab "Metadata"
  • Custom tab for media elements (as in the default content element "Text with media")
  • Custom tab for categories (as in any content element)
  • Custom tab for languages (as in any record)

Allow more options for file preview

The well known checkbox Show in list views inside every FAL relation is changed to a dropdown to allow the following settings:

  • Show only in detail views (Behaviour as the previous unchecked checkbox)
  • Show in all views (Behaviour as the previous checked checkbox)
  • Show only in list views (New)

Donation module

A new view has been added to the administration module to show how you can support the further development of this extension.

Improved administration module

2 more TsConfig options have been added to customize the administration module

  • tx_news.module.controlPanels = 1 to enable control panels
  • tx_news.module.allowedCategoryRootIds = 12,34 to restrict shown categories to list of category root ids

Features

List of all other features.

Show tag count

By using a new ViewHelper it is now possible to get the count of (system-wide) usage of a given tag.

{n:tag.count(tagUid:tag.uid) -> f:variable(name: 'tagUsageCount')}
Copied!

Allow sorting of selectedList items

The view "selected list" which can be used to render a manual selected list of articles is now capable of sorting those just as a regular list.

Support creation filter by multiple categories

By using new ViewHelpers it is now possible to create links to filter news by multiple categories instead of only one.

<!-- check if active -->
<n:multiCategoryLink.isCategoryActive list="{overwriteDemand.categories}" item="{category.item.uid}">
    <f:then>
        <!-- remove link -->
        <f:link.page title="{category.item.title}" class="active" pageUid="{settings.listPid}"
                     additionalParams="{n:multiCategoryLink.arguments(mode:'remove',item:category.item.uid,list:overwriteDemand.categories)}">dazu
        </f:link.page>
    </f:then>
    <f:else>
        <!-- add link -->
        <f:link.page title="{category.item.title}" class="active" pageUid="{settings.listPid}"
                     additionalParams="{n:multiCategoryLink.arguments(mode:'add',item:category.item.uid,list:overwriteDemand.categories)}">dazu
        </f:link.page>
    </f:else>
Copied!

All Changes

This is a list of all changes in this release:

2018-04-17 [DOC] Document linkVars for RSS (Commit 98af3b45 by Georg Ringer)
2018-04-17 [TASK] Raise requirements to 8.7.13 (Commit 5eb5257d by Georg Ringer)
2018-04-17 [TASK] Allow Core 9.2 in ext_emconf (Commit a985dfdb by Georg Ringer)
2018-04-17 [TASK] Adopt versions (Commit 52e0204c by Georg Ringer)
2018-04-17 [TASK] Add DB fields for multilanguage tags (Commit d34a1f11 by Georg Ringer)
2018-04-13 [TASK] Improve hook for showinpreview (Commit 6284ecba by Georg Ringer)
2018-04-13 [DOC] Finalize release notes (Commit 5b2f58cb by Georg Ringer)
2018-04-12 [DOC] Fix toc in manual (Commit 2059f921 by Georg Ringer)
2018-04-12 [TASK] Make new showinpreview configurable (Commit 1da6d732 by Georg Ringer)
2018-04-12 [TASK] Add seperate getter for list only (Commit 2738823f by Georg Ringer)
2018-04-12 [DOC] Start release notes for 7.0 (Commit 518667c5 by Georg Ringer)
2018-04-12 [TASK] Add method to generate slug (Commit c254c522 by Georg Ringer)
2018-04-12 [DOCS] Add docs about multi category filtering (Commit 579c51af by Georg Ringer)
2018-04-12 [TASK] Include sponsor imgs base64 decoded (Commit 4d74d214 by Georg Ringer)
2018-04-11 [FEATURE] Add notes to news model (Commit 1efe02bd by Georg Ringer)
2018-04-11 [FEATURE] Provide slugservice (Commit f82a9b3d by Georg Ringer)
2018-04-10 [TASK] Migrate RTE configuration (Commit eb478dd3 by Georg Ringer)
2018-04-10 [TASK] Move tca to allowLanguageSynchronization (Commit e7b2d0dc by Georg Ringer)
2018-04-10 [TASK] Remove usage of noCopy (Commit f7b57def by Georg Ringer)
2018-04-10 [TASK] Migrate input fields to inputLink rendertype (Commit 99c11643 by Georg Ringer)
2018-04-10 [TASK] Migrate TCA wizards (Commit dd2004cb by Georg Ringer)
2018-04-10 [TASK] Migrate rte wizard (Commit d6e2f27c by Georg Ringer)
2018-04-10 [TASK] Migrate tca suggest options (Commit c57fa2f2 by Georg Ringer)
2018-04-10 [TASK] Use rendertype inputDateTime (Commit 3938ff23 by Georg Ringer)
2018-04-10 [TASK] Migrate usage of showIconTable (Commit 83490854 by Georg Ringer)
2018-04-10 [TASK] Remove usage of TCA config show_thumbs (Commit 096af7c1 by Georg Ringer)
2018-04-10 [BUGFIX] Followup test fix (Commit 082d2ff7 by Georg Ringer)
2018-04-10 [BUGFIX] Fix failing test (Commit 2838c656 by Georg Ringer)
2018-04-07 [!!!][FEATURE] Allow more options for file preview (Commit 624642ff by Georg Ringer)
2018-04-07 [TASK] Correct TCA types (Commit 8252ed08 by Georg Ringer)
2018-04-07 [DOC] Change realurl identifier (Commit 20999d71 by Georg Ringer)
2018-04-07 [FEATURE] Prefill slug field with optimized title (Commit b6d12d18 by Georg Ringer)
2018-04-07 [!!!] Change type of showinpreview to int (Commit 03d817b2 by Georg Ringer)
2018-04-06 [FEATURE] Allow sorting of selectedList items (Commit 3931f7c8 by Georg Ringer)
2018-04-06 [!!!][FEATURE] Pass settings to the signal slots (Commit 35f4446d by Georg Ringer)
2018-04-06 [BUGFIX] Autosubmit form if preselects are there (Commit fa16beb2 by Georg Ringer)
2018-04-05 [BUGFIX] Resolve breaking change in symfony/finder (Commit 8523d344 by Georg Ringer)
2018-04-05 [BUGFIX] Add render method to condition VHs (Commit cdaf2124 by Georg Ringer)
2018-04-05 [TASK] Finalize TCA (Commit a3f21123 by Georg Ringer)
2018-04-04 [TASK] Improve TCA of news (Commit d46db49a by Georg Ringer)
2018-04-03 [DOC] Fix typo in Readme (Commit 6caedf4b by Georg Ringer)
2018-03-31 [FEATURE] Show tag counts (Commit f3f37c1b by Georg Ringer)
2018-03-31 [FEATURE] Add shortcut button to administration module (Commit f1e758ce by Georg Ringer)
2018-03-30 [BUGFIX] Fix and improve search in FE (Commit 31df8272 by Georg Ringer)
2018-03-30 [TASK] Drop usage of old DB conneciton (Commit 6ebe5fac by Georg Ringer)
2018-03-30 [TASK] Finalize gst (Commit d58803f3 by Georg Ringer)
2018-03-30 [TASK] Migrate last usage of old DB (Commit eb21887b by Georg Ringer)
2018-03-29 [TASK] Use XS for the sponsors (Commit 00f76f8d by Georg Ringer)
2018-03-29 [TASK] Add dkd as sponsor (Commit d714a5ec by Georg Ringer)
2018-03-29 [FEATURE] Make rendering of meta tags configurable (Commit f49f6d3f by Georg Ringer)
2018-03-29 [!!!][TASK] Add chash to widget uris (Commit 7c0290de by Georg Ringer)
2018-03-29 [TASK] Revert template changes (Commit 6714dba8 by Georg Ringer)
2018-03-29 [FEATURE] Support multi category links (Commit 331d7db1 by Georg Ringer)
2018-03-28 [DOC] Add support stuff to docs (Commit e1745344 by Georg Ringer)
2018-03-28 Apply fixes from StyleCI (#626) (Commit 6b4de0eb by Georg Ringer)
2018-03-28 [TASK] Change allowed versions (Commit 493d12b5 by Georg Ringer)
2018-03-28 [TASK] Finalize donation template (Commit 06831b81 by Georg Ringer)
2018-03-28 [FEATURE] Make it possible to reduce categories in admin module (Commit e202e23c by Georg Ringer)
2018-03-28 [TASK] Allow more fields as date field (Commit 7d105a52 by Georg Ringer)
2018-03-28 [DOC] Cleanup rss docs (Commit a457e04a by Georg Ringer)
2018-03-28 [FEATURE] Make it possible to show the controlPanels in admin module (Commit 07ba83b2 by Georg Ringer)
2018-03-28 [TASK] Use API to show overlay field in user settings (#624) (Commit e4bac9d8 by Mathias Brodala)
2018-03-27 [BUGFIX] Fix backend module for 9 (Commit 10bb0ff0 by Georg Ringer)
2018-03-27 [TASK] Show donation info in admin module (Commit b0182434 by Georg Ringer)
2018-03-27 [BUGFIX] Fix token generation in backend module (Commit 790f187c by Georg Ringer)
2018-03-26 [BUGFIX] Transform datetime value to integer for registered property (Commit 964e92d5 by Georg Ringer)
2018-03-26 [BUGFIX] Force validation to int for date fields (Commit 15f1126a by Georg Ringer)
2018-03-26 [TASK] Synchronize dependencies (Commit e98b23e3 by Georg Ringer)
2018-03-26 Update ext_localconf.php (#411) (Commit 4db822d9 by bobbel78)
2018-03-25 [BUGFIX] Replace usage of deprecated method create_function() (#617) (Commit 2b3a7426 by Xavier Perseguers)
2018-03-25 [BUGFIX] Correctly link to Composer in the readme (#618) (Commit 10858a6d by Daniel Ruf)
2018-03-22 [TASK] Fix usages of template layouts and optgroups (Commit db696abd by Georg Ringer)
2018-03-22 [FIX] Fixes a small grammar issue. (#615) (Commit 0669b74c by Robert Wildling)
2018-03-17 [DOC] Updated Contribution section in Readme.md (#610) (Commit 96c494d0 by Torben Hansen)
2018-03-16 Fix description in flexform comments. (#603) (Commit 190a7641 by Robert Wildling)
2018-03-16 Remove useless zzz chars (#607) (Commit 8fa60347 by Alexander Grein)
2018-03-14 [TASK] Switch extension icon (Commit f341e09a by Georg Ringer)
2018-03-14 [TASK] Module navigation (Commit f797e89c by Georg Ringer)
2018-03-08 [TASK] Remove not needed VH test (Commit 4f20af71 by Georg Ringer)
2018-03-08 [DOCS] Fix realurl example in docs (Commit 7c8c699d by Georg Ringer)
2018-03-08 Merge branch '8+' (Commit 67763e4e by Georg Ringer)
2018-03-08 [BUGFIX] not generating data-link argument for Ajax Pagination (#599) (#600) (Commit cefa4926 by lsascha)
2018-03-08 [FEATURE] Donation module (Commit f3fd982d by Georg Ringer)
2018-03-01 [BUGFIX] Render audio not as image (Commit 1cfc3e69 by Georg Ringer)
2018-02-28 Apply fixes from StyleCI (#598) (Commit ab924047 by Georg Ringer)
2018-02-28 Update .travis.yml (Commit 52015833 by Georg Ringer)
2018-02-27 [BUGFIX] Pass correct content to stdWrap function (#595) (Commit 5223bd43 by Markus Klein)
2018-02-13 [WIP][TASK] Start working on RecordList changes (Commit 8c4171c6 by Georg Ringer)
2018-02-13 [TASK] Migrate query in RecordListConstraint (Commit b593c466 by Georg Ringer)
2018-02-13 [TASK] Bring back version check variable (Commit d95f3e7c by Georg Ringer)
2018-02-13 [TASK] Replace StringFrontend (Commit 7bc1c609 by Georg Ringer)
2018-02-13 [TASK] Migrate AccessControlService (Commit 19bc9b11 by Georg Ringer)
2018-02-13 [TASK] Migrate query of AccessControlService (Commit 831adfd5 by Georg Ringer)
2018-02-13 [FEATURE] Support settings.opengraph.locale (Commit 3a89b72b by Georg Ringer)
2018-02-12 Apply fixes from StyleCI (#580) (Commit 50fe51bc by Georg Ringer)
2018-02-12 [BUGFIX] Set no_cache flag for news not found template (Commit 332e81ee by Georg Ringer)
2018-02-12 Merge branch 'master' of github.com:georgringer/news into 8+ (Commit e03cf095 by Georg Ringer)
2018-02-11 [TASK] Remove phpunit dev in compsoer (Commit a9978521 by Georg Ringer)
2018-02-11 [TASK] Limit travis jobs for 9 (Commit cf6ad537 by Georg Ringer)
2018-02-11 [BUGFIX] Fix prev next VH (Commit f73707d0 by Georg Ringer)
2018-02-11 [BUGFIX] Remove return type hint (Commit 8df1116d by Georg Ringer)
2018-02-11 [TASK] Allow more versions of testing framework (Commit 151a6db1 by Georg Ringer)
2018-02-11 [TASK] Fix unit tests (Commit 2af853b2 by Georg Ringer)
2018-02-10 [BUGFIX] Prevent output of ViewHelper xmlns-attributes in rendered code on website (#572) (Commit fe5f32cc by chris)
2018-02-07 [TASK] Make hook in recordlist ready for 9 (Commit 9cd7c2d9 by Georg Ringer)
2018-02-07 [TASK] Remove outcommented code (Commit c9ee0e46 by Georg Ringer)
2018-02-07 [TASK] Use proper xlf path (Commit 4d29855a by Georg Ringer)
2018-02-07 [TASK] Convert NewsRepository (Commit a11ab27e by Georg Ringer)
2018-02-07 [TASK] Migrate CategoryService (Commit 4b53a45a by Georg Ringer)
2018-02-07 [TASK] Convert 1st part of CategoryService (Commit fa6303ce by Georg Ringer)
2018-02-07 [TASK] Remove unused method (Commit 81ccdc4c by Georg Ringer)
2018-02-06 [TASK] Migrate NewsRepository (Commit de059447 by Georg Ringer)
2018-02-06 [TASK] Migrate SimplePrevNext (Commit 1f8ee59e by Georg Ringer)
2018-02-06 [TASK] Migrate TagEndPoint (Commit 37d98d99 by Georg Ringer)
2018-02-06 [TASK] Remove unsupported code (Commit 7443ac03 by Georg Ringer)
2018-02-06 [TASK] Migrate CategoryRepository to doctrine DBAL (Commit 6a5cc346 by Georg Ringer)
2018-02-06 [TASK] Remove deprecated flexform configs (Commit e8706144 by Georg Ringer)
2018-02-06 [TASK] Remove checks for older versions in AbstractDemandRepository (Commit 794a6bc2 by Georg Ringer)
2018-02-06 [TASK] Migrate to doctrine DBAL of first classes (Commit 18aa77fa by Georg Ringer)
2018-02-06 [TASK] Restrict to version 8+ (Commit 6adeeb57 by Georg Ringer)
2018-02-06 [DOC] Add administration section (Commit ad094a3d by Georg Ringer)
2018-02-06 [BUGFIX] Fix PHP error (Commit 54dff25e by Georg Ringer)
2018-02-06 [FEATURE] Merged constructor for proxy classes (#368) (Commit f877ddb8 by Marc Bastian Heinrichs)
2018-02-06 [BUGFIX] Fix calculation of numberOfPages (Commit 6fcfcdfb by Georg Ringer)
2018-02-06 [BUGFIX] Explicit override settings with stdWrap enabled (#361) (Commit 5d7a02a3 by Christian Futterlieb)

Copied!

This list has been created by using git log 6.3.0..HEAD --abbrev-commit --pretty='%ad %s (Commit %h by %an)' --date=short.

6.3.0 - 2018/02/01

Important changes

Fix regressions

Fix a small bug in the MetaTagsViewHelper which has been added in last release.

Restrict template layouts to a colPos

It is now possible to restrict template layouts to certain colPos values.

tx_news.templateLayouts {
   1 = Fobar
   2 = Another one
   2.allowedColPos = 1,2,3
   3 =  --div--,Group 2
   4 = Blub
   4.allowedColPos = 0,1
}
Copied!

This feature has been sponsored by h_da - Hochschule Darmstadt, https://www.h-da.de/, thanks a lot!

All Changes

This is a list of all changes in this release:

2018-01-29 [FEATURE] Restrict template layouts to colpos values (Commit 0b14c23d by Georg Ringer)
2018-01-29 [BUGFIX] Fix regression in sorting of sys_language records (Commit 2228d42e by Georg Ringer)
2018-01-29 [DOC] Fix wrong constants in rss docs (Commit 79f1a293 by Georg Ringer)
2018-01-29 [BUGFIX] Remove unwanted attributes in metatags (Commit 8fe15ad2 by Georg Ringer)
2018-01-29 [BUGFIX] Use tstamp for last modification in sitemap (Commit e2cd8dfd by Georg Ringer)
2018-01-24 [DOC] Use correct version (Commit 24a5272c by Georg Ringer)


Copied!

This list has been created by using git log 6.2.1..HEAD --abbrev-commit --pretty='%ad %s (Commit %h by %an)' --date=short.

6.2.1- 2018/01/24

This release makes the extension compatible with PHP 5.6 again

All Changes

This is a list of all changes in this release:

2018-01-24 [BUGFIX] Make code PHP 5.6 compatible (Commit 214a4db5 by Georg Ringer)
2018-01-23 [DOC] Should be "features" instead of "feature" (#539) (Commit 8c7e1e2d by lechenbauer)
2018-01-23 [TASK] Use datetime instead of crdate for sitemap (Commit fbf2ec59 by Georg Ringer)


Copied!

This list has been created by using git log 6.2.0..HEAD --abbrev-commit --pretty='%ad %s (Commit %h by %an)' --date=short.

6.2.0 - 2018/01/23

Important changes

Avoid duplicate page titles in pagination

A pagination information ("Page 3 of 9") is added to the page title to avoid duplicate page titles.

Removal of a ViewHelper

The ObjectViewHelper has been removed.

All Changes

This is a list of all changes in this release:

2018-01-23 [TASK] Check mod.web_list.allowedNewTables/deniedNewTables in admin module (#248) (Commit 9efa4d37 by Marc Bastian Heinrichs)
2018-01-23 [TASK] Respect overwriteDemand parameters on menu creation (#439) (Commit 9cb38263 by Oliver Baran)
2018-01-23 [TASK] Allow limit and offset for tags (#497) (Commit 0e2e2fa9 by Steffen Kamper)
2018-01-23 [FEATURE] Disable Localization in backend module via TSConfig (#420) (#421) (Commit 5e0541f2 by ayacoo)
2018-01-23 Apply fixes from StyleCI (#537) (Commit 8a3122a0 by Georg Ringer)
2018-01-23 [BUGFIX] Check tablenames in mm queries (Commit 1cb623ca by Georg Ringer)
2018-01-23 [BUGFIX] Set cHash also in workspace mode (Commit f5290765 by Georg Ringer)
2018-01-23 [BUGFIX] Fix failing test (Commit bb12a525 by Georg Ringer)
2018-01-22 [DOC] Add linkhandler info (Commit 02de4016 by Georg Ringer)
2018-01-22 [TASK] Add tstamp & crdate fields to TCA for Fluid (Commit f9c1222a by Georg Ringer)
2018-01-22 [TASK] Make 2 VH compatible with 9 (Commit 2edb20d3 by Georg Ringer)
2018-01-22 [TASK] Replace ... with … (Commit e349354a by Georg Ringer)
2018-01-22 [TASK] Make PaginateVh 9 compatible (Commit 8b53482f by Georg Ringer)
2018-01-22 [DOC] Improve module vhs example (Commit 345e54a8 by Georg Ringer)
2018-01-22 [DOC] Improve doc example for ical rendering (Commit edc31bf7 by Georg Ringer)
2018-01-22 Validated output for List.xml (#457) (Commit ab01a824 by Dandy Umlauft)
2018-01-22 [BUGFIX] Add missing counter increment #524 (Commit e75bab78 by Georg Ringer)
2018-01-19 [DOC] Add snippet for cHash in preview links (Commit de0eec81 by Georg Ringer)
2018-01-19 [BUGFIX] Change invalid HTML of time tag (Commit 9b795285 by Georg Ringer)
2018-01-19 [TASK] Change license in composer.json (Commit 19ab9ad1 by Georg Ringer)
2018-01-19 [BUGFIX] Fix spelling (#519) (Commit ce0bcf39 by Michael Stucki)
2018-01-17 Feature/php56 (#517) (Commit 436e2c5d by Georg Ringer)
2018-01-16 [FEATURE] Split search words (Commit 47629cc1 by Georg Ringer)
2018-01-16 [TASK] Revert travis changes (Commit 557b6924 by Georg Ringer)
2018-01-16 [FEATURE] Avoid duplicate title for pagination (Commit 7d9b3dc0 by Georg Ringer)
2018-01-16 [TASK] Respect type in sitemap (Commit 277966b8 by Georg Ringer)
2018-01-16 [TASK] Raise testing-framework version (Commit 0f9cc40b by Georg Ringer)
2018-01-16 [DOC] Improve documentation snippet (Commit a4d11b02 by Georg Ringer)
2018-01-16 Apply fixes from StyleCI (#511) (Commit b684e4c7 by Georg Ringer)
2018-01-16 [TASK] Migrate SitemapGenerator todoctrine (Commit 699ff734 by Georg Ringer)
2018-01-16 [TASK] Remove PHP 5.5 from travis tests (Commit 0e41c332 by Georg Ringer)
2018-01-16 [TASK] Remove phpcs fixes in favor of styleci (Commit 808ace42 by Georg Ringer)
2018-01-16 [BUGFIX] Fix failing test in NewsRepositoryTest (Commit 3beba818 by Georg Ringer)
2018-01-16 [BUGFIX] Remove deprecated usage of buildQueryParametersPostProcess (Commit a2a585a4 by Georg Ringer)
2018-01-16 [BUGFIX] Use proper navigationComponentId for 9+ (Commit 81d6b2f1 by Georg Ringer)
2017-12-17 [TASK] Use $GLOBALS['SIM_EXEC_TIME'] for building queries (Commit b5c87806 by Georg Ringer)
2017-12-17 [TASK] Remove unused palettes (Commit fa7f38ac by Georg Ringer)
2017-12-17 Apply fixes from StyleCI (#491) (Commit 858e3abd by Georg Ringer)
2017-12-17 [TASK] Document related variants in template (Commit 9c638a2f by Georg Ringer)
2017-12-17 [BUGFIX] Make option list.paginate.prevNextHeaderTags work (#481) (Commit 9dcbff50 by Christian Futterlieb)
2017-12-17 Change datatype for tag in newsDemand to string (#483) (Commit cc9f0793 by Torben Hansen)
2017-12-17 fix search by percent or undersCore (#486) (Commit a4cde7d4 by Esteban Marin)
2017-12-05 [TASK] Hide shariff namespace (Commit 93e1b60f by Georg Ringer)
2017-11-21 Fixed Typo (#456) (Commit cb98c935 by Fritz the Cat)
2017-11-21 [TASK] Let it work with 9 (Commit 9c920f19 by Georg Ringer)
2017-11-21 [BUGFIX] Fix category usage in Sitemap generator (Commit cac5cd8f by Georg Ringer)
2017-11-21 [TASK] Use sorting column in ItemsProcFunc (Commit d9a1aa96 by Georg Ringer)
2017-11-06 Fix PHP Notice in ext_localconf.php (#458) (Commit a8e68933 by Tymoteusz Motylewski)
2017-10-26 Apply fixes from StyleCI (#453) (Commit a9350093 by Georg Ringer)
2017-10-26 [FEATURE] Get translated content element id list (Commit 574d93e8 by Georg Ringer)
2017-10-26 Apply fixes from StyleCI (#452) (Commit 9f3e4c0d by Georg Ringer)
2017-10-26 [TASK] Migrate AdministrationController to Doctrine (Commit ecc3af5c by Georg Ringer)
2017-10-26 [TASK] Remove not needed test (Commit ef33512a by Georg Ringer)
2017-10-26 [TASK] Use FAL API in AbstractImportService (Commit 0e32944e by Georg Ringer)
2017-10-26 [TASK] Migrate ItemsProcFunc to Doctrine (Commit b71bf638 by Georg Ringer)
2017-10-26 [TASK] Remove unused methods (Commit 266154aa by Georg Ringer)
2017-10-26 [TASK] Remove unused getter of DatabaseConnection (Commit 13fa94da by Georg Ringer)
2017-10-26 [!!!][TASK] Remove ObjectViewHelper (Commit 2061386e by Georg Ringer)
2017-10-26 Remove incorrect closing bracket (#446) (Commit e5a13dba by Boris Schauer)
2017-10-01 Update Index.rst (#429) (Commit f908c159 by Stefan Isak)
2017-09-27 [BUGFIX] Re-enable settings.detailPid in selectedList's flexform (#436) (Commit ab55ea71 by Rémy DANIEL)
2017-09-22 [BUGFIX] #357 Add tt_content ctype labels to pagelayoutview to get rid of error message (#432) (Commit bb050b02 by Kevin Purrmann)
2017-09-18 Update Readme.md (Commit 2fd3f1eb by Georg Ringer)
2017-09-13 Moved XML-NameSpace-declaration from div- or span-tags into separate html-tags to achieve valid HTML5 output (#415) (Commit 226951a5 by Sebastian Wolfertz)
2017-09-13 [TASK] Changing PhpDoc type for tsstamp (#418) (Commit 3eca0e57 by Thomas Deuling)
2017-09-12 Some minor fixes (#423) (Commit 5f81c827 by Cedric Ziel)
2017-09-11 [TASK] Remove unnecessary else branch (#422) (Commit 906cd336 by Cedric Ziel)

Copied!

This list has been created by using git log 6.1.1..HEAD --abbrev-commit --pretty='%ad %s (Commit %h by %an)' --date=short.

6.1.0 - 2017/08/31

After a far too long time I managed to get a release out again. 6.1. is compatible with 7.6 LTS and 8 LTS and also supports the development version of 9 as long as the extension typo3db_legacy is installed.

Important changes

Add a new action "selectedList"

A new action makes it possible to render a list of custom selected news items. An editor can choose any amount of news records which are shown in the provided order.

The following changes are worth mentioning.

Configurable filters for the administration module

By using TsConfig it is now possible to hide filters in the administration module. The full configuration is:

tx_news.module {
    filters {
        searchWord = 1
        timeRestriction = 1
        topNewsRestriction = 1
        hidden = 1
        archived = 1
        sortingField = 1
        number = 1
        categories = 1
        categoryConjunction = 1
        includeSubCategories = 1
    }
}

Copied!

Page data to Fluid templates

Every frontend Fluid template can now access the full row of the current page by checking the variable pageData. As an example you will get the page title by using pageData.title.

All Changes

This is a list of all changes in this release:

2017-08-28 [TASK] Added add/remove function for tag in news model (#402) (Commit 15e396d by Torben Hansen)
2017-08-24 FIX: typo (#407) (Commit 66a11fd by Philipp Kitzberger)
2017-08-24 FIX: typo (#408) (Commit 0ef6f52 by Philipp Kitzberger)
2017-08-09 SimplePrevNextViewHelper with custom sortField doesn't work (#399) (Commit 35494ed by ayacoo)
2017-08-09 [BUGFIX] Preserve labels for CMS 9 (Commit 4db7d4d by Georg Ringer)
2017-08-08 [FEATURE] Make it possible to hide filters in backend module (#381) (Commit 9d88629 by Shakeshake)
2017-08-08 [TASK] Move TCA to correct file (Commit b46d7df by Georg Ringer)
2017-08-08 [DOC] Example how to migrate realurl alias (Commit 89e418f by Georg Ringer)
2017-08-08 [DOC] Followup (Commit 60d3449 by Georg Ringer)
2017-08-08 [DOC] Fix Category page (Commit b8a7a77 by Georg Ringer)
2017-08-08 [DOC] Fix wrong syntax (Commit 15deb4d by Georg Ringer)
2017-07-26 [BUGFIX] Fix wrong path for Rss feed configuration (#319) (Commit 6a997bc by Martin Hummer)
2017-07-25 [TASK] Fix small typo in news controller (#366) (Commit c83f7d8 by ayacoo)
2017-07-25 [TASK] Add a title attribute to the label (#359) (Commit a5d4d30 by Daniel)
2017-07-25 [BUGFIX] Re-Enable image cropping tool for fal_media in TYPO3 8.7 (#362) (Commit 3b6f6e5 by Torben Hansen)
2017-07-25 Fix indentation inconsistency (#370) (Commit 3a41f6b by Jan Nils Ferner)
2017-07-25 [DOC] Add missing inject annotation in example (Commit cf70cf9 by Georg Ringer)
2017-07-15 [TASK] Make the ObjectViewHelper work with CMS9 (Commit 4a6aa84 by Georg Ringer)
2017-07-14 [FEATURE] Add page data to Fluid templates (Commit 0e0204c by Georg Ringer)
2017-07-14 [TASK] Fix typo in NewsController (#380) (Commit 8d633c0 by Shakeshake)
2017-07-14 Fix mixed up type numbers (#378) (Commit 3263050 by diego)
2017-07-14 [TASK] Fix emconf issues (#379) (Commit f288f3f by Shakeshake)
2017-07-11 [BUGFIX] Fix wrong Fluid inline syntax in List.xml (#374) (Commit 3767f6e by Armin Vieweg)
2017-07-11 [BUGFIX] Fix typo in List.xml template (#373) (Commit d524a1a by Armin Vieweg)
2017-07-03 Apply fixes from StyleCI (#367) (Commit a1159b9 by Georg Ringer)
2017-06-29 [FEATURE] Make showing thumbnails configurable (Commit 6669043 by Georg Ringer)
2017-06-29 [TASK] Disable xdebug in travis (Commit a708dc5 by Georg Ringer)
2017-06-27 [BUGFIX] Don't show warning in CE preview (Commit 4988121 by Georg Ringer)
2017-06-27 [TASK] Register "insert records" in TCA overrides file (#354) (Commit 84b35fe by Markus Klein)
2017-06-26 [BUGFIX] Exclude html ctype from IRRE preview (Commit b42a0f3 by Georg Ringer)
2017-06-14 Apply fixes from StyleCI (#353) (Commit ea9881b by Georg Ringer)
2017-06-14 [TASK] Change version to 6.1.0-dev (Commit 1cbc9fa by Georg Ringer)
2017-06-13 [BUGFIX] Resolve EXT: in path to error template (Commit 04bf045 by Georg Ringer)
2017-06-13 [DOC] Example of category menu with TS (Commit 81fdce1 by Bernd Wilke)
2017-06-13 [BUGFIX] Fix wrong evaluation in IfIsActiveVh (Commit 2440fbc by Georg Ringer)
2017-06-09 [TASK] Show selected news in page layout view (Commit 587d753 by Georg Ringer)
2017-06-07 [BUGFIX] Fix path to icon label in admin module (Commit 4477011 by Georg Ringer)
2017-05-30 [FIX] Set correct outdated ViewHelpers (#340) (Commit 81db33f by misterboe)
2017-05-29 [BUGFIX] Fix a typo in the 6.0.0 changelog (#339) (Commit faa69cc by Stephan Brun)
2017-05-23 [TASK] Allow PHP 5.6 again (Commit 1bc43d0 by Georg Ringer)
2017-05-22 [FEATURE] Add a new view "selectedList" (Commit 961f5f8 by Georg Ringer)
2017-05-16 [DOC] Add missing namespace (#326) (Commit 25f2c77 by misterboe)
2017-05-16 [TASK] CHeck if tokenizer is available #325 (Commit 9e3f912 by Georg Ringer)
2017-05-08 [TASK] Update tests on GitLab ci (#322) (Commit 2ed604a by Jan Kiesewetter)
2017-05-02 [BUGFIX] Always provide category and tag values for list signal (#318) (Commit 0a218a3 by Benjamin Kott)
2017-05-02 Fix documentation about updateFlexforms hook (#294) (Commit a439613 by Markus Poerschke)
2017-05-02 [BUGFIX] Don't extend pid list for startingpoint=-1 (#272) (Commit 6cd1b79 by Georg Tiefenbrunn)
2017-05-02 [TASK] Mark import command as cli only (Commit 505b42f by Georg Ringer)
2017-05-02 [FEATURE] Filter internal & external news in pagination (Commit d552a61 by Georg Ringer)
2017-05-02 Import service fix (#303) (Commit b9f0e1d by John)
2017-05-02 Added missing namespace in Social VH (#284) (Commit 1aa3bc0 by cvisys)
2017-05-02 Corrections in changelog (#313) (Commit 46ebd1f by Gerhard Rupp)
2017-04-24 [BUGFIX] Fix flexform category restriction FormDataProvider (#312) (Commit c624294 by Josef Glatz)
2017-04-21 [DOC] Update changelog (Commit 4ff1bf8 by Georg Ringer)
2017-04-21 [TASK] Prepare 6.0.0 release (Commit 637ccf6 by Georg Ringer)
2017-04-12 Apply fixes from StyleCI (#300) (Commit aa34868 by Georg Ringer)
2017-04-12 Use nimut/testing-framework (#296) (Commit 1327f25 by Nicole Cordes)
2017-04-12 [BUGFIX] Use correct class in PageLayoutViewTest (Commit ae1c37a by Georg Ringer)
2017-04-10 [BUGFIX] Remove wrong char (Commit f8d05b0 by Georg Ringer)
2017-04-10 [BUGFIX] Add caseinsensitive security check for overwriteDemandObject (Commit ee7b252 by Georg Ringer)
2017-04-06 Apply fixes from StyleCI (#291) (Commit 6ce56b7 by Georg Ringer)
2017-04-06 [BUGFIX] Use correct TCA for fal_media overrideChildTca (Commit 3cebb32 by Georg Ringer)
2017-04-05 Added missing namespace (#286) (Commit ff576cd by cvisys)
2017-04-05 Added missing namepace (#285) (Commit 41351ec by cvisys)
2017-03-25 [DOC] Improve  docs for ical #278 (Commit 3ca73b7 by buxit)
2017-03-25 [BUGFIX] Outcomment _LOCAL_LANG example (Commit e6c4e85 by Georg Ringer)

Copied!

This list has been created by using git log --since="2017/03/21" --abbrev-commit --pretty='%ad %s (Commit %h by %an)' --date=short.

6.0.0 - 2017/21/03

Finally 6.0.0 has been released which supports both current LTS versions, 7.6 LTS and 8 LTS.

Important changes

The following changes might be important for your installation.

Version dependency 7.6.13+ or 8.5+

To improve the performance and code quality, at least TYPO3 7.6.13 or 8.5. are required.

Deprecate ViewHelpers for Facebook, Google+, Twitter

The following ViewHelpers have been deprecated:

  • <n:social.facebook.like />
  • <n:social.facebook.comment />
  • <n:social.googlePlus />
  • <n:social.twitter />

The ViewHelpers will be removed with the version 7.0.0.

Install & configure the extension rx_shariff which takes care of the privacy of your users!

Renaming of partials

The following partials have been renamed

  • Detail/FalMediaContainer to Detail/MediaContainer
  • Detail/FalMediaImage to Detail/MediaImage
  • Detail/FalMediaVideo to Detail/MediaVideo

Error message if news not found

While rendering a detail view and a news record is not found anymore (e.g. because it has been deleted or set to hidden) an error message is now shown instead of an exception. This has been achived by setting the following default TypoScript:

plugin.tx_news.settings.detail {
        errorHandling = showStandaloneTemplate,EXT:news/Resources/Private/Templates/News/DetailNotFound.html,404
}
Copied!

To achieve the previous behaviour, use

plugin.tx_news.settings.detail {
        errorHandling = pageNotFoundHandler
}
Copied!

Check width & height set in Flexform

Width and height of images can be set in the plugin. Previously those values have not been used in the templates but they are used now.

<f:image image="{mediaElement}" title="{mediaElement.originalResource.title}" alt="{mediaElement.originalResource.alternative}" maxWidth="{f:if(condition: settings.media.maxWidth, then: settings.media.maxWidth, else: settings.list.media.image.maxWidth)}" maxHeight="{f:if(condition: settings.media.maxHeight, then: settings.media.maxHeight, else: settings.list.media.image.maxHeight)}"/>
Copied!

Improved Administration module

The administration module recived again some more love!

The link in the administration module to toggle the filter form has been moved to the toolbar.

Furthermore the template has been improved to work on smaller screens.

Disable override demand default on

The checkbox Disable override demand in the plugin is now by default enabled.

Features

List of all features.

Provide filter by type

The NewsDemand class got a new property types which can be used to filter the returned news records by its type.

Ajax Pagination

The templates and documentation has been enhanced to make it easy to use AJAX for the pagination. Thanks to Helmut Hummel who provides the awesome extension typoscript_rendering which is used for it.

Add enclosure tag to deliver images in the stream

The List.xml template which is used for RSS feeds is enhanced with the enclosure tag which provides the url to the first preview image.

Add ViewHelper to display media files inline

Using images in the RTE is often loved by editors and disliked by integrators and developers. With this version, a mixture is available which can satisfy all users.

By using the RenderMediaViewHelper in the templates, an editor can now place the keyword [media] in the RTE which are replaced by media elements saved in the FAL relation.

Benefits:

  • An editor can place images and media elements where he wants
  • The relation is safed in a safe manner
  • The media elements can later be still modified

Improved content element relations

To improve the usability of content elements added to a news item, the preview in the backend is enhanced by rendering the content elements as in the page module.

Support for EXT:guide

The extension guide shows guides to editors and makes it easy to explain features. A guide for the administration module has been added

Improved Import module

The import module has been rewritten:

  • Use requireJS
  • Use jQuery instead of ExtJS
  • Use bootstrap for the forms
  • Use a callout for the backup info

Simplify getters for FAL fields

Add easier names for the getters of fields to FAL. As the non-FAL fields have been removed, the simplified getters have been reactivated to fetch the FAL fields. This makes the templates far easier to read.

  • newsItem.falMedia => newsItem.media
  • newsItem.falMediaPreviews => newsItem.mediaPreviews
  • newsItem.falMediaNonPreviews => newsIten.mediaNonPreviews
  • newsItem.firstFalImagePreview => newsItem.firstPreview
  • newsItem.falRelatedFiles => newsItem.relatedFiles

All Changes

This is a list of all changes in this release:

2017-04-21 [TASK] Prepare 6.0.0 release (Commit 637ccf6 by Georg Ringer)
2017-04-12 Apply fixes from StyleCI (#300) (Commit aa34868 by Georg Ringer)
2017-04-12 Use nimut/testing-framework (#296) (Commit 1327f25 by Nicole Cordes)
2017-04-12 [BUGFIX] Use correct class in PageLayoutViewTest (Commit ae1c37a by Georg Ringer)
2017-04-10 [BUGFIX] Remove wrong char (Commit f8d05b0 by Georg Ringer)
2017-04-10 [BUGFIX] Add caseinsensitive security check for overwriteDemandObject (Commit ee7b252 by Georg Ringer)
2017-04-06 Apply fixes from StyleCI (#291) (Commit 6ce56b7 by Georg Ringer)
2017-04-06 [BUGFIX] Use correct TCA for fal_media overrideChildTca (Commit 3cebb32 by Georg Ringer)
2017-04-05 Added missing namespace (#286) (Commit ff576cd by cvisys)
2017-04-05 Added missing namepace (#285) (Commit 41351ec by cvisys)
2017-03-25 [DOC] Improve  docs for ical #278 (Commit 3ca73b7 by buxit)
2017-03-25 [BUGFIX] Outcomment _LOCAL_LANG example (Commit e6c4e85 by Georg Ringer)
2017-03-13 constant settings are in plugin.tx_news (#279) (Commit 5dff3d1 by buxit)
2017-03-10 [TASK] adapt db field type for inline relation (#275) (Commit 4ff7a23 by jokumer)
2017-03-09 [FEATURE] Provide page id in paginationController (Commit 698de39 by Georg Ringer)
2017-03-08 [TASK] Cleanup controllers (Commit dab8e36 by Georg Ringer)
2017-03-07 [TASK] Check $tags for being a string (Commit 3a48f62 by Georg Ringer)
2017-03-06 [DOC] Fix example for rss.channel.language (#276) (Commit 0aba9e0 by Michael Stucki)
2017-03-01 [DOC] Improve example of ExtendFlexForms (Commit 78dc976 by Georg Ringer)
2017-02-25 [BUGFIX] Remove CompilableInterface (#266) (Commit 886ec1b by Frank Nägler)
2017-02-24 [BUGFIX] Fixed lost categories when enabling/disabling a news from list module using a non-admin BE user (#265) (Commit befa197 by Julien Henchoz)
2017-02-23 Use .svg instead of .gif in iconfile (#264) (Commit 2f36110 by Christian Kuhn)
2017-02-21 [BUGFIX] Show create new tag at first position in results (#263) (Commit e3eb106 by Markus Klein)
2017-02-17 [BUGFIX] Fix tests for 8.6 (#259) (Commit 42b21e6 by Georg Ringer)
2017-02-17 [BUGFIX] Use ContextMenu instead of ClickMenu in admin module (Commit f98593d by Georg Ringer)
2017-02-14 [FEATURE] Support tx_news.tagPid in list wizard (Commit 1c46072 by Georg Ringer)
2017-02-14 [DOC] Remove unused realurl configuration option from docs (#258) (Commit 5dced06 by Markus Klein)
2017-02-13 [BUGFIX] Use proper label for refresh button in Administration module (Commit d0697ad by Georg Ringer)
2017-02-12 [TASK] Remove old table definition in ext_tables.sql (Commit 621a5f7 by Georg Ringer)
2017-02-10 [BUGFIX] Copying news with MySQL strict mode fails (#253) (Commit f82ab6a by Oliver Hader)
2017-02-10 [TASK] Allow risky fixers for php-cs-fixer 2.0.1 (#255) (Commit e5e3d60 by Jan Kiesewetter)
2017-02-09 [TASK] Disable override demand default on (Commit 6cbc667 by Georg Ringer)
2017-02-07 [TASK] Running PHP Coding Standards Fixer checks on Travis (#245) (Commit 7260be2 by Jan Kiesewetter)
2017-02-06 [FEATURE] Add gitlab-ci configuration (#244) (Commit 2660dc8 by Jan Kiesewetter)
2017-01-31 [FEATURE] Make plugin overview nice on small columns (Commit 5f75a6a by Georg Ringer)
2017-01-26 Merge branch 'master' of github.com:georgringer/news (Commit 763f25e by Georg Ringer)
2017-01-26 [BUGFIX] Remove max config from start/endtime fields (Commit 294c825 by Georg Ringer)
2017-01-26 [TASK] Remove symlink to eventnews template (#235) (Commit cdf9b15 by Jan Kiesewetter)
2017-01-26 [TASK] Update php-cs-fixer to version 2.0 (#236) (Commit 877184a by Jan Kiesewetter)
2017-01-25 [BUGIFX] Remove upper limit in admin module (Commit c43e86e by Georg Ringer)
2017-01-24 [TASK] Show template layouts in pagelayout for any action (Commit ffd90f5 by Georg Ringer)
2017-01-24 [TASK] Reapply fixer (Commit 17ea463 by Georg Ringer)
2017-01-24 [FEATURE] Add filter for achive to admin module (Commit dae4b89 by Georg Ringer)
2017-01-24 [FEATURE] Add filter for hidden in admin module (Commit 65dbcfd by Georg Ringer)
2017-01-23 [TASK] Fix typo in docheader of CommentVH (Commit f827019 by Georg Ringer)
2017-01-22 [TASK] Avoid usage of deprecated Core method (Commit 299473e by Georg Ringer)
2017-01-22 Update Index.rst (#217) (Commit 2870aa3 by Tim Maurice Bayer)
2017-01-22 [TASK] Improve user_categoryOverlay (Commit 7dec113 by Georg Ringer)
2017-01-21 [FEATURE] Add description field (Commit 507a159 by Georg Ringer)
2017-01-21 [TASK] Rename FAL partials (Commit 6fbbaf5 by Georg Ringer)
2017-01-21 [DOC] Add release notes for 5.3.2 (Commit 976002e by Georg Ringer)
2017-01-21 Apply fixes from StyleCI (#224) (Commit c600292 by Georg Ringer)
2017-01-21 [BUGFIX] Use proper button group in admin module (Commit ba55574 by Georg Ringer)
2017-01-19 [BUGFIX] add check before category restriction is added to flexforms (#220) (Commit 3cd0144 by Johannes)
2017-01-19 [BUGFIX] Check for non-empty tag or category lists (#221) (Commit 0a033f4 by Markus Klein)
2017-01-19 [TASK] Simplify getters for FAL fields (Commit 623fce9 by Georg Ringer)
2017-01-14 [TASK] Make ViewHelpers compilable, part 2 (#213) (Commit ab41ad2 by Claus Due)
2017-01-12 [TASK] Add clear icon to fields in admin module (Commit c5e3b59 by Georg Ringer)
2017-01-11 [TASK] Replace deprecated method in NewsImportService (Commit 7bb87d6 by Georg Ringer)
2017-01-11 [BUGFIX] Fix PaginateBodytextViewHelper (#212) (Commit aeac0e8 by droomdre)
2017-01-10 [DOC] Add new features to changelog (Commit 0ba1a09 by Georg Ringer)
2017-01-10 [FEATURE] Rewrite import module (Commit 8378944 by Georg Ringer)
2017-01-10 Apply fixes from StyleCI (#210) (Commit 2ce49e2 by Georg Ringer)
2017-01-10 [TASK] Add refresh button to Administration module (Commit e151596 by Georg Ringer)
2017-01-10 [BUGFIX] Show filter button only if in proper action (Commit be546a0 by Georg Ringer)
2017-01-10 Merge branch 'master' of github.com:georgringer/news (Commit 7aa1705 by Georg Ringer)
2017-01-10 [TASK] Use requireJS module for Administration module (Commit 29ecddd by Georg Ringer)
2017-01-08 [TASK] Improve TCA code (Commit a18ecd6 by Georg Ringer)
2017-01-07 [TASK] Increase category tree in flexform (Commit ab45cc6 by Georg Ringer)
2017-01-07 Merge branch 'master' of github.com:georgringer/news (Commit 2958850 by Georg Ringer)
2017-01-07 [!!!][TASK] Restrict version dependencies (Commit fd9ae2d by Georg Ringer)
2017-01-04 [DOCU] Change Vendor in code example (#203) (Commit 2c1c99b by Stefan Frömken)
2017-01-04 [BUGFIX] Exclude gridelements from advanced inline preview (Commit 9ac8056 by Georg Ringer)
2017-01-04 [FEATURE] Provide tour for EXT:guide (Commit 97adb88 by Georg Ringer)
2017-01-03 [DOC] Improve Readme in root dir (Commit 295ee40 by Georg Ringer)
2017-01-03 [TASK] Add StyleCI to Readme.md (Commit 1774b52 by Georg Ringer)
2017-01-03 [TASK] Add style ci configuration (Commit b515bb6 by Georg Ringer)
2017-01-03 Apply fixes from StyleCI (#201) (Commit 726ad6b by Georg Ringer)
2017-01-03 Merge branch 'master' of github.com:georgringer/news (Commit fcfceb5 by Georg Ringer)
2017-01-03 [TASK] Optimize administration module (Commit 69a0d83 by Georg Ringer)
2017-01-02 [TASK] Make ViewHelpers static callable (#119) (Commit 8157447 by Claus Due)
2017-01-02 [TASK] Improve category tree in administration module (Commit e43bf42 by Georg Ringer)
2017-01-02 [TASK] Use a datepicker in the administration module (Commit f7a72f1 by Georg Ringer)
2017-01-02 [DOC] Mention OpenHub in manual (Commit b9c4772 by Georg Ringer)
2017-01-02 [!!!][TASK] Raise version constraints for the Core (Commit bc6aa06 by Georg Ringer)
2017-01-02 [DOC] Update documentation (Commit 870d075 by Georg Ringer)
2017-01-02 [TASK] Deprecate ViewHelpers for Facebook, Google+, Twitter (Commit c986b92 by Georg Ringer)
2017-01-02 [TASK] Use mediaTag VH also in TWB templates (Commit 89a880c by Georg Ringer)
2016-12-31 [DOC] Add documentation for upcoming release (Commit b569351 by Georg Ringer)
2016-12-30 [TASK] Move toggle link in admin module to toolbar (Commit d7ace3f by Georg Ringer)
2016-12-30 [FEATURE] Provide filter by type (Commit bed8a25 by Georg Ringer)
2016-12-29 [FEATURE] Document the AJAX pagination (Commit 572fee8 by Georg Ringer)
2016-12-29 [FEATURE] First steps for an ajax based pagination (Commit 87a63c1 by Georg Ringer)
2016-12-29 [BUGFIX] Support for compatibility6 usage (Commit 4a1defb by Georg Ringer)
2016-12-29 [TASK] Adopt license (Commit 2a012d8 by Georg Ringer)
2016-12-29 [TASK] Code cleanup (Commit 5a2590d by Georg Ringer)
2016-12-29 [FEATURE] Improved content element relations (Commit 8b09b73 by Georg Ringer)
2016-12-29 [TASK][FOLLOWUP] Return null for handleNoNewsFoundError (Commit 18fee2d by Georg Ringer)
2016-12-28 [!!!][TASK] Check width & height set in Flexform (Commit 1493d0b by Georg Ringer)
2016-12-22 [FEATURE] Error msg if news not found (Commit 80d678d by Georg Ringer)
2016-12-22 [DOC] Add sponsors to release (Commit b262ffb by Georg Ringer)
2016-12-21 [DOC] Add lightbox config of fcs as well (Commit 970ebb3 by Georg Ringer)
2016-12-21 [TASK] Remove undefined from tag search (Commit fe5f4aa by Georg Ringer)
2016-12-21 [FEATURE] add ViewHelper to display media files inline (#167) (Commit fa8340c by Johannes)
2016-12-21 [BUGFIX] Render dummy image if no FAL preview media and feature is enabled (#173) (Commit 0b297a3 by Jan Kiesewetter)
2016-12-21 [DOC] Document showContentElementsInNewsSysFolder (Commit fb3ac3d by Georg Ringer)
2016-12-21 Update .travis.yml (#191) (Commit 58a1963 by Georg Ringer)
2016-12-15 Merge branch 'master' of github.com:georgringer/news (Commit 6eb3220 by Georg Ringer)
2016-12-15 [BUGFIX] Use correct label in PageLayoutView (Commit 144fc46 by Georg Ringer)
2016-12-15 removes odd brace (#188) (Commit a0fde56 by Sascha Marcel Schmidt)
2016-12-14 [BUGFIX] Remove max config from date fields (Commit d1f893a by Georg Ringer)
2016-12-14 [FEATURE] Add enclosure tag to deliver images in the stream (#185) (Commit c631ffb by Kay Strobach)
2016-12-06 [TASK] Move call to registerPageTSConfigFile to TCA/Overrides (Commit a431f39 by Georg Ringer)

Copied!

This list has been created by using git log --since="2016/11/27" --abbrev-commit --pretty='%ad %s (Commit %h by %an)' --date=short.

5.3.1 - 2017/01/21

Bugfix Release

This is an important bugfix release to make the extension working with latest 8.x version.

All Changes

This is a list of all changes in this release:

2017-01-21 [TASK] Prepare release of 5.3.2 (Commit 71c04b7 by Georg Ringer)
2016-12-14 [BUGFIX] Remove max config from date fields (Commit f5a4cc8 by Georg Ringer)
2017-01-19 [BUGFIX] add check before category restriction is added to flexforms (#220) (Commit 9b3d9f2 by Johannes)
2017-01-19 [BUGFIX] Check for non-empty tag or category lists (#221) (Commit f0f91da by Markus Klein)

Copied!

This list has been created by using git log --since="2017/01/01" --abbrev-commit --pretty='%ad %s (Commit %h by %an)' --date=short.

5.3.1 - 2016/11/24

Bugfix Release

Just a bugfix release because of an error in the date menu.

All Changes

This is a list of all changes in this release:

2016-11-24 [TASK] Add test for the datemenu (#171) (Commit c33d801 by Georg Ringer)
2016-11-24 [BUGFIX] make datemenu work again on 7.6 (#170) (Commit cefde85 by Martin Hummer)

Copied!

This list has been created by using git log --since="2016/09/23" --abbrev-commit --pretty='%ad %s (Commit %h by %an)' --date=short.

5.3.0 - 2016/11/24

Thanks to

Open-Source is all about community and support! I want to thank everyone who contributed reports on forge, feedback on any channel and code!

Sponsors

Features

Improved administration module

The usability of the administration module has been improved. Examples using TsConfig

// Change the used columns
tx_news.module.columns = datetime,archive,author
// Keep the filter always open
tx_news.module.alwaysShowFilter = 1
Copied!

Furthermore, a new checkbox to include subcategories in the search has been added.

CLI import

The import module can now be started using the commandline using ./typo3/cli_dispatch.phpsh extbase newsimport:run.

All Changes

This is a list of all changes in this release:

2016-11-23 [DOC] Finish documentation about using the demand object (Commit 3522e3b by Georg Ringer)
2016-11-22 [DOC] Start documentation about using the demand object (Commit 6d2ea50 by Georg Ringer)
2016-11-22 [FEATURE] Add setting to keep filter in Administration module open (Commit 868a2ed by Georg Ringer)
2016-11-14 [BUGFIX] Fix wrong arguments in PaginateBodyTextVH (Commit 6a886b3 by Georg Ringer)
2016-11-14 [TASK] Updated Preview views to list view + Updated documentation (#158) (Commit 5ab2688 by Tomas Norre Mikkelsen)
2016-11-14 [TASK] Changes how showinpreview is added to palette, it eases the possibility to extend the newsPalette (#163) (Commit da1e1ae by Tomas Norre Mikkelsen)
2016-11-14 [BUGFIX] Escape argument in f:alias VH (Commit 7c19002 by Georg Ringer)
2016-11-12 Update configuration of archiveRestriction (#150) (Commit ee346b2 by cjanody)
2016-11-12 [TASK] Use better default for news sorting in BE module (#159) (Commit 2f3156f by Markus Klein)
2016-11-12 [BUGFIX] Cast array in CategoryRepository (Commit e48a654 by Georg Ringer)
2016-11-12 [TASK] add example to link ViewHelper (#162) (Commit 32d6b17 by Martin Hummer)
2016-11-08 [TASK] Adapt to breaking Core hook getFlexFormDSClass (#155) (Commit 968ebca by Christian Kuhn)
2016-11-08 Update hook reference (#157) (Commit 49cced4 by Tomas Norre Mikkelsen)
2016-11-08 [BUGFIX] Use correct example in documenation (Commit 08d2436 by Georg Ringer)
2016-11-07 Merge branch 'master' of github.com:georgringer/news (Commit 509da8f by Georg Ringer)
2016-11-07 [TASK] Allow failure for 8 (Commit 20e36bc by Georg Ringer)
2016-11-05 [BUGFIX] quote non-numeric values in raw sql (#154) (Commit f2e24b5 by Martin Hummer)
2016-11-04 Merge branch 'master' of github.com:georgringer/news (Commit 0ce224e by Georg Ringer)
2016-11-04 [FEATURE] Add checkbox include subcategories in administration module (Commit 2c6779a by Georg Ringer)
2016-11-02 Docs content type (#147) (Commit 0d34b0e by Markus Klein)
2016-11-02 Update Settings.yml to newest version/release (#149) (Commit 3a3f979 by Marcus)
2016-10-28 [BUGFIX] Use correct check for prefilling author/email (Commit c2f0be9 by Georg Ringer)
2016-10-28 [TASK] Check if news is null in LinkViewHelper (Commit cffcf68 by Georg Ringer)
2016-10-28 [BUGFIX] Fix raw SQL handling for 8.4 (Commit 93aa783 by Martin Hummer)
2016-10-28 [DOC] Add custom type (#142) (Commit bc3bec8 by Martin Hummer)
2016-10-13 [TASK] Remove setting dividers2tabs (Commit a093010 by Georg Ringer)
2016-10-13 [BUGFIX] Allow link table on regular pages (Commit 7573f6b by Georg Ringer)
2016-10-10 [TASK] Add example for preselecting a select-field (#124) (Commit b5a0ae5 by Martin Hummer)
2016-10-04 [BUGFIX] remove one row class from list container (#121) (Commit dfafac0 by Johannes)
2016-10-04 [TASK] Remove scrutinizer (Commit de822ec by Georg Ringer)
2016-10-03 [TASK] Improve test suite (#118) (Commit e3426e2 by Georg Ringer)
2016-10-03 [FEATURE] Improve adminstration module (Commit a717bba by Georg Ringer)
2016-09-29 [TASK] Add check icon for settings.disableOverrideDemand (Commit dc954e5 by Georg Ringer)
2016-09-28 [BUGFIX] Fix wrong insertion of fe_group on repeated import (Commit 07344f9 by Georg Ringer)
2016-09-27 [TASK] Use correct version (Commit cee53fa by Georg Ringer)
2016-09-27 [DOC] Add chapter about import service (Commit 29735e1 by Georg Ringer)
2016-09-27 [TASK] Improve PageLayoutView and categories (Commit 32e91ce by Georg Ringer)
2016-09-27 [BUGFIX] Change error message in PageLayoutView (Commit 336002a by Georg Ringer)
2016-09-26 [BUGFIX] Remove escaping the return url (Commit 12971ed by Georg Ringer)
2016-09-25 [FEATURE] Provide import CLI call (Commit 2c5c682 by Georg Ringer)
2016-09-25 [BUGFIX] Ensure import dir exists (Commit b60a9a6 by Georg Ringer)
2016-09-24 [TASK] Add .gitattributes (Commit 13e1202 by Georg Ringer)

Copied!

This list has been created by using git log --since="2016/09/23" --abbrev-commit --pretty='%ad %s (Commit %h by %an)' --date=short.

5.2.0 - 2016/09/23

Thanks to

Open-Source is all about community and support! I want to thank everyone who contributed reports on forge, feedback on any channel and code!

Especially I want to thank my employer Sup7even Digital. Check out our website http://www.sup7even.digital/!

Switch to GitHub

GitHub is now used as platform for this extension. The repository has moved to https://github.com/georgringer/news. The following things are changing:

Clone

Please use now git@github.com:georgringer/news.git or https://github.com/georgringer/news.git to clone the repository.

The repository github.com/TYPO3-extensions/news has been removed!

Issues

Please create issues at https://github.com/georgringer/news/issues, as the forge project will not be used anymore in the future.

Features

PreHydrate signal for the import

A new signal slot has been added which can be used to manipulate the import data before it is actually used.

Hide the page tree for the admin module

A new option in the Extension Manager can be used to hide the page tree for the administration module. In combination with the TsConfig setting tx_news.redirectToPageOnStart = 123 this can be used to build a very simple editor interface.

All Changes

This is a list of all changes in this release:

2016-09-23 [DOC] Fix more nitpicks (Commit 01f6183 by Georg Ringer)
2016-09-23 [DOC] Fix warnings in documentation (Commit 8d374de by Georg Ringer)
2016-09-22 [FEATURE] Make it possible to hide the page tree for the admin module (Commit 402b727 by Georg Ringer)
2016-09-22 [DOC] Improve documentation (Commit e045e9f by Georg Ringer)
2016-09-22 [DOC] Add example for signal slot (Commit 84d8cab by Georg Ringer)
2016-09-22 [TASK] Update php-cs-fixer (Commit a4ab31f by Georg Ringer)
2016-09-22 [TASK] Update readme.md (Commit 93a8d4d by Georg Ringer)
2016-09-22 [DOC] Improve CONTRIBUTING.md (Commit 03be588 by Georg Ringer)
2016-09-22 [DOC] Update documentation (Commit 965e050 by Georg Ringer)
2016-09-21 [FEATURE] Provide a preHydrate signal for the import (Commit 1205d21 by Georg Ringer)
2016-09-21 Merge branch 'master' of github.com:georgringer/news (Commit b7d70f2 by Georg Ringer)
2016-09-21 [BUGFIX] Fix duplicate hook key (Commit 915f63f by Georg Ringer)
2016-09-21 [BUGFIX] Allow page translations on news storages (#103) (Commit 5efe08b by Markus Klein)
2016-09-18 [TASK] Hide current news from search for related news (Commit ee64a60 by Georg Ringer)
2016-09-16 [TASK] Hide the online part from related files (Commit 26c9c68 by Georg Ringer)
2016-09-15 [BUGFIX] Importer broken (Commit d125f62 by Gerald Aistleitner)
2016-09-15 [TASK] Improve rendering of tx_news_domain_model_news (Commit 5650585 by Georg Ringer)
2016-09-14 [TASK] Cleanup TCA (Commit a11d91f by Georg Ringer)
2016-09-13 [BUGFIX] Add missing quotes (Commit 6b460e4 by Georg Ringer)
2016-09-13 [TASK] Add missing css in admin module (Commit dc690be by Georg Ringer)
Copied!

This list has been created by using git log --since="2016/09/03" --abbrev-commit --pretty='%ad %s (Commit %h by %an)' --date=short.

5.1.0 - 2016/09/12

Thanks to

Open-Source is all about community and support! I want to thank everyone who contributed reports on forge, feedback on any channel and code!

Especially I want to thank my employer Sup7even Digital. Check out our new website http://www.sup7even.digital/!

Features

Category Constraints for FlexForms

The listing of categories inside a news record can be restricted by settings in the Extension Manager. The restriction can now be used in the FlexForm configuration as well by enabling it with TsConfig tx_news.categoryRestrictionForFlexForms = 1.

All Changes

This is a list of all changes in this release:

2016-09-09 [FEATURE] check category constraint in flexforms as well (Commit 4b9ac8f by Georg Ringer)
2016-09-09 [BUGFIX] Change rte transformation (Commit 52d21b7 by Georg Ringer)
2016-09-09 [TASK] Fix a typo (Commit 6ac3d28 by Georg Ringer)
2016-09-09 [BUGFIX] Use different namespace for BackendUtility in PageLayoutView (Commit 4566dfc by Georg Ringer)
2016-09-05 [BUGFIX] Provide requestUri (Commit 2d0c309 by Georg Ringer)
Copied!

This list has been created by using git log --since="2016/09/03" --abbrev-commit --pretty='%ad %s (Commit %h by %an)' --date=short.

5.0.0 - 2016/09/03

Thanks to

Open-Source is all about community and support! I want to thank everyone who contributed reports on forge, feedback on any channel and code!

Especially I want to thank my employer Sup7even Digital. Check out our new website http://www.sup7even.digital/!

Features

Improved plugin rendering in page module

To improve the usability of the page module regarding the news plugin, the used settings are rendered with a complete new design.

Reworked administration module

The record listing in the administration module is now based on the record listing of the list module. There are several advantages

  • See translations & workspace overlays
  • Exact same behaviour as in the list module
  • Less custom code

Full support of FAL

The full range of FAL assets can now be used, e.g. videos from youtube and vimeo and every file type which is supported by the various file renderers of the Core and 3rd party extensions.

Twitter card support

Twitter supports some additional meta tags if an URL is shared. The following meta tags have been added to the the default templates:

  • <meta name="twitter:card" content="..." />
  • <meta name="twitter:site" content="..." />
  • <meta name="twitter:creator" content="..." />

All 3 can be filled by using constants.

As twitter recognizes and uses the og:image meta tags as well, those are not duplicated for twitter. If you need a fine tuning, please take a look at https://dev.twitter.com/cards/getting-started.

Support of shariff

If the extension rx_shariff (https://typo3.org/extensions/repository/view/rx_shariff) is installed, it will be used for the social sharing links instead of the custom ViewHelpers. Shariff enables website users to share their favorite content without compromising their privacy.

Thanks to Markus Klein and https://reelworx.at/ for providing this extension!

Important changes

Support for 8.3

This version fully supports TYPO3 8.3. However, if you are using the master version of TYPO3, please always use the master of news itself as well.

New icons

New svg icons are used at the following places:

  • Records (News, Tag, Link)
  • Plugin wizard

Repositioning of import module

The import module is independ from the page tree and for sure nothing what an editor should be use. Therefore it is moved into the module section "System".

Removal of old code

Pre-FAL relations

Before FAL, EXT:news used to have custom relations to own media files and related files. Those 2 relations and all related code has been removed. This includes

  • TCA
  • Model
  • Every migration and wizard
  • Any media renderer which have been based the old relations

If you are using the FAL relations and the old ones togehter in one project, you need to migrate those records! There is no migration available or planned. Either write it on your own or get in contact with me (I can not do it for free!)

Wizards & Migrations

Every previous available wizard and migration code has been removed. This includes:

  • Migration from custom category records to sys_category
  • Migration of the tt_content relation

ViewHelpers

The following ViewHelpers have been removed:

  • <n:categoryChildren />
  • <n:falMediaFactory />
  • <n:mediaFactory />
  • <n:be.buttons.iconForRecord />
  • <n:be.buttons.icon />
  • <n:be.clickmenu />
  • <n:be.editRecord />
  • <n:be.multiEditLink />

The following deprecated ViewHelpers have been removed:

  • <n:format.date />
  • <n:format.hsc />: Use <f:format.htmlspecialchars />
  • <n:format.htmlentitiesDecode />: Use <f:format.htmlentitiesDecode />
  • <n:format.striptags />: Use <f:format.striptags />
  • <n:format.fileDownload />: Use the native implementation of FAL
  • <n:format.fileSize />: Use the native implementation of FAL

Any usage will throw an exception.

Record rendering in the page module

The rendering of news records and category records in the page module has been removed.

ClassAliasMapping

The mapping from non-namespace classes to the namespace classes has been removed.

Repositioning of the tt_content relation

The relation to content elements has been moved to a separate tab.

All Changes

This is a list of all changes in this release:

2016-09-03 [TASK] Cleanup PageLayoutView (Commit 1f7546b by Georg Ringer)
2016-09-03 [TASK] Move administration.css (Commit 9fb7da9 by Georg Ringer)
2016-09-03 [FEATURE] Improve page module (Commit 38c5be8 by Georg Ringer)
2016-09-02 [BUGFIX] Fix ajax tag creation (Commit 26eb9d0 by Georg Ringer)
2016-09-02 [TASK] Add tooltips (Commit 80e52d6 by Georg Ringer)
2016-09-02 [TASK] Move category conjunction in flexform (Commit d4cb8ec by Georg Ringer)
2016-09-02 [BUGFIX] Fix tag icon (Commit 31df957 by Georg Ringer)
2016-09-02 [DOC] Add documentation for 5.0.0 (Commit a8e770a by Georg Ringer)
2016-09-02 [TASK] Fix dev branch in composer.json (Commit 0b0a811 by Georg Ringer)
2016-09-02 [BUGFIX] Remove '.html' from layout calls (Commit 6b12b3a by Georg Ringer)
2016-09-01 [TASK] Use new icons of the Core (Commit 1c89306 by Georg Ringer)
2016-08-31 [TASK] Followup for icons (Commit c4e098b by Georg Ringer)
2016-08-31 [TASK] Change travis notifications (Commit dc79319 by Georg Ringer)
2016-08-31 [TASK] Make it possible to preset search form (Commit 81542b1 by Georg Ringer)
2016-08-30 [!!!][TASK] Add new icons (Commit 81a7376 by Georg Ringer)
2016-08-29 [TASK] Add overlay icon in admin module (Commit 94341c1 by Georg Ringer)
2016-08-29 [TASK] Remove not needed icon (Commit e3b49ce by Georg Ringer)
2016-08-29 [!!!][TASK] Remove ViewHelper CategoryChildrenViewHelper (Commit 03c30e6 by Georg Ringer)
2016-08-29 [TASK] Move ViewHelper arguments to registerArgument (Commit b990351 by Georg Ringer)
2016-08-29 [TASK] Use fluent setters for NewsDemand (Commit bc6ade9 by Georg Ringer)
2016-08-29 [BUGFIX] Use propper case (Commit 10c4ffe by Georg Ringer)
2016-08-29 [TASK] Remove unused partial (Commit af5c1dc by Georg Ringer)
2016-08-29 [BUGFIX] Fix error in single view lightbox (Commit c6fd191 by Georg Ringer)
2016-08-29 [BUGFIX] Fix regression in ext_tables.php (Commit 051475f by Georg Ringer)
2016-08-29 [TASK] Fix deprecations in flexform (Commit 3e64b0b by Georg Ringer)
2016-08-29 [TASK] Fix deprecations (Commit 07ffeff by Georg Ringer)
2016-08-28 [TASK] Remove dead code in ext_tables (Commit 29de1d7 by Georg Ringer)
2016-08-28 [!!!][TASK] Move import module into 'System' (Commit d9dad89 by Georg Ringer)
2016-08-28 [BUGFIX] Use correct pid for new plugins (Commit 3c1b316 by Georg Ringer)
2016-08-28 [FEATURE] Add suggest wizard to tag setting in flexforms (Commit 34b1a34 by Georg Ringer)
2016-08-28 [TASK] Add eval 'num' to settings.cropMaxCharacters (Commit c4132f1 by Georg Ringer)
2016-08-28 [BUGFIX] Fix styling of newspidlisting (Commit 55df5f9 by Georg Ringer)
2016-08-28 [TASK] Move page icon to Configuration/TCA/Overrides/pages (Commit bff6da3 by Georg Ringer)
2016-08-26 [TASK] Enforce correct value for datefield (Commit 68cb1d6 by Georg Ringer)
2016-08-26 [TASK] Change rte configuation (Commit 0e498c5 by Georg Ringer)
2016-08-26 [TASK] Remove options autoSizeMax and allowRecursiveMode (Commit 765d12e by Georg Ringer)
2016-08-25 [TASK] Use proper ajax routing for tag generation (Commit 97a8372 by Georg Ringer)
2016-08-25 [TASK] Use new icons (Commit a2f888c by Georg Ringer)
2016-08-25 [TASK] Use font icon for the showinpreview in sys_file_reference (Commit e0e0e48 by Georg Ringer)
2016-08-25 [TASK] Improve header in PageLayoutView (Commit 424897d by Georg Ringer)
2016-08-24 [FEATURE] Improve PageLayoutView (Commit 629aa56 by Georg Ringer)
2016-08-24 [TASK] Improve rendering of starting point in page module (Commit f84b231 by Georg Ringer)
2016-08-24 [!!!][TASK] Remove unused code (Commit eb67b2c by Georg Ringer)
2016-08-24 [TASK] Adopt requirements (Commit 2260302 by Georg Ringer)
2016-08-23 [TASK] Fix breaking change of Core (Commit f9fdf5a by Georg Ringer)
2016-08-18 [FOLLOWUP][BUGFIX] Use correct syntax (Commit 715c368 by Georg Ringer)
2016-08-18 [FEATURE] Render og:image:width & og:image:height (Commit 11047ab by Georg Ringer)
2016-08-16 [TASK] Prepare for Extbase changes (Commit b25023a by Georg Ringer)
2016-08-14 [TASK] Remove outdated code from partial (Commit a84aaa4 by Georg Ringer)
2016-08-11 [BUGFIX] Support hrDate in google sitemap (Commit 9d249e7 by Georg Ringer)
2016-08-10 [BUGFIX] Support Fluid_styled_content for insert record (Commit 1954f62 by Georg Ringer)
2016-08-10 [FEATURE] Support twitter card meta tags (Commit 78db35e by Georg Ringer)
2016-08-08 [BUGFIX] Cast type and fe_group to string for imports (Commit e82e524 by Georg Ringer)
2016-08-08 [BUGFIX] Fix error in Newsrepository (Commit 933b5e4 by Georg Ringer)
2016-08-08 [!!!][TASK] Remove be ViewHelpers (Commit 2934ef5 by Georg Ringer)
2016-08-08 [TASK] Remove not required type hints (Commit 11ef0f4 by Georg Ringer)
2016-08-02 [FEATURE] Show prev next feature flag (Commit 0780fc3 by Georg Ringer)
2016-08-02 [BUGFIX] Fix unit test (Commit fe5210e by Georg Ringer)
2016-08-01 [TASK] Rewrite SimplePrevNext (Commit e6ff250 by Georg Ringer)
2016-08-01 [!!!][TASK] Remove the FileService (Commit 3e41caa by Georg Ringer)
2016-08-01 [BUGFIX] Check if idlist is empty (Commit a0fd840 by Georg Ringer)
2016-08-01 [BUGFIX] Use l10nmode 'copy' for archive date (Commit 8e6307a by Georg Ringer)
2016-08-01 [DOC] Update readme.md (Commit d87fda6 by Georg Ringer)
2016-03-05 [FEATURE] Replace administration module news rendering (Commit 622610e by Georg Ringer)
2016-07-28 [TASK] Remove deprecated GeneralUtitlity::requireOnce()  call (Commit 9431a88 by Georg Ringer)
2016-07-28 [TASK] Cleanup TS (Commit 44ddfbf by Georg Ringer)
2016-07-28 [!!!][TASK] Remove FileDownload & FileSizeViehelpers (Commit f6299d9 by Georg Ringer)
2016-07-28 [BUGFIX] Fix ce hiding in 8 (Commit f0024c0 by Georg Ringer)
2016-07-28 [TASK] Run php-cs (Commit a8a4ded by Georg Ringer)
2016-07-28 [TASK] Replace ->getMock() in unit tests (Commit 5efb015 by Georg Ringer)
2016-07-28 [TASK] Use mockBuilder instead of mock() (Commit 425543e by Georg Ringer)
2016-07-27 [FEATURE] Suggest wizard for singleNews in flexforms (Commit bdaaa11 by Georg Ringer)
2016-07-26 [TASK] Cleanup template (Commit a6f7973 by Georg Ringer)
2016-07-26 [FEATURE] Native support for EXT:rx_shariff (Commit 8d19a01 by Georg Ringer)
2016-07-26 [BUGFIX] Use new ViewHelpers (Commit 2bd27f1 by Georg Ringer)
2016-07-26 [BUGFIX] Fix import module (Commit ed7efca by Georg Ringer)
2016-07-26 [TASK] Removal of removeListActionFromFlexforms (Commit 7f36663 by Georg Ringer)
2016-07-26 [TASK] Remove news listing in page module (Commit 6dccedc by Georg Ringer)
2016-07-26 [TASK] Remove category record rendering in page module (Commit 9a52c53 by Georg Ringer)
2016-07-26 [TASK] Migrate Fluid templates to use xml namespace declarations (Commit 2a7e63e by Markus Klein)
2016-07-26 [DOC] Add the CONTRIBUTING.md file (Commit 2ef532e by Georg Ringer)
2016-07-26 [TASK] Remove usage of FlashMessage::render (Commit d269e16 by Georg Ringer)
2016-07-25 [!!!][TASK] Remove deprecated ViewHelpers (Commit b2a823c by Georg Ringer)
2016-07-25 [!!!][TASK] Use native FAL rendering for FE (Commit 2fca6de by Georg Ringer)
2016-07-25 [!!!][TASK] Remove ClassALiasMap (Commit cf04d85 by Georg Ringer)
2016-07-25 [BUGFIX] Use correct TCA (Commit 3f90194 by Georg Ringer)
2016-07-25 [TASK] Use 7.6.9 for tests (Commit 8f1c420 by Georg Ringer)
2016-07-25 [!!!][TASK] Remove pre FAL implementations (Commit 60890ba by Georg Ringer)
2016-07-25 [!!!][TASK] Remove update wizards (Commit 4c5f3cd by Georg Ringer)
2016-07-24 [!!!] Move content element relation to separate tab (Commit 13598f0 by Georg Ringer)
2016-07-24 [TASK] Remove unused property (Commit c00ed22 by Georg Ringer)
2016-07-24 [TASK] Add excludeDisplayedNews VH to Detail.html (Commit 02e506d by Georg Ringer)
2016-07-24 [BUGFIX] Fix typo in TCA (Commit e69137b by Georg Ringer)
2016-07-21 [TASK] Readd feature after changes in 8 (Commit 1e5a45f by Georg Ringer)
2016-07-19 [FOLLOWUP][FEATURE] Fix test (Commit 5776ea2 by Georg Ringer)
2016-07-19 [FEATURE] Respect targets in LinkViewHelper (Commit 3065bc6 by Georg Ringer)
2016-07-19 [FEATURE] Add categories to RSS feed (Commit f572d4f by Georg Ringer)
2016-07-19 [BUGFIX] Return only unique related news (Commit 6b63e99 by Georg Ringer)
2016-07-13 [TASK] Remove test (Commit fc1043b by Georg Ringer)
2016-07-13 [BUGFIX] Followup fix test (Commit bd0d7da by Georg Ringer)
2016-04-19 [FEATURE] SEO data for tags and categories (Commit 7d51182 by Frank Naegler)
2016-07-13 [TASK] Add shariff comment to TWB template (Commit 73f1026 by Georg Ringer)
Copied!

This list has been created by using git log --since="2016/07/13" --abbrev-commit --pretty='%ad %s (Commit %h by %an)' --date=short.

4.3.0 - 2016/07/13

Important changes

This release is the first one which supports also version 8.

Changed sitemap generation behaviour

For multilanguage sitemaps you need to generate a sitemap for every language by providing the parameter "L".

All Changes

This is a list of all changes in this release:

2016-07-04 [!!!][TASK] Change language behaviour for sitemap generation (Commit b733b24 by Georg Ringer)
2016-07-04 [BUGFIX] Use correct query in SiteMapGenerator (Commit 49db71d by Georg Ringer)
2016-07-04 [TASK] Add documentation about showing hidden records (Commit 863c757 by Georg Ringer)
2016-07-04 [BUGFIX] Check date for null in LinkViewHelper (Commit f08ed97 by Georg Ringer)
2016-07-04 [TASK] Register attribute shareurl in ShareViewHelper (Commit a307a0f by Georg Ringer)
2016-07-04 [BUGFIX] Use a different name for DataHandlerCore (Commit c6325b9 by Georg Ringer)
2016-06-17 [BUGFIX] fix typoscript to reference instead of copying plugins.tx_news.settings (Commit c6b0237 by Esteban Marín)
2016-05-24 [BUGFIX] Make VHs CMS 8 compatible (Commit 44b9552 by Markus Klein)
2016-05-11 [FEATURE] Add index to tt_content (Commit 3747a1a by Georg Ringer)
2016-05-11 [BUGFIX] Fix wrong TS condition (Commit 9d9324d by Georg Ringer)
2016-04-27 [FEATURE] Hide content elements in page/list module if news sys folder (Commit 4f66675 by Georg Ringer)
2016-04-27 [BUGFIX] twitter not listed twice in rx_shariff example (Commit b80beda by Markus Klein)
2016-04-19 [TASK] Add  addQueryStringMethod="GET" to paginator (Commit 5d0309a by Frank Naegler)
2016-04-15 Revert "[BUGFIX] Set l10nmode for categories & tags to exclude" (Commit 858c6f2 by Georg Ringer)
2016-04-15 [TASK] Make it compatible with Core < 8.3 (Commit ea2159e by Georg Ringer)
2016-04-13 [BUGFIX][FOLLOWUP] Fix mysql strict (Commit 38842fc by Georg Ringer)
2016-04-12 [BUGFIX] Fix strict mysql checks (Commit fee4449 by Georg Ringer)
2016-03-17 [TASK] Remove unsupported categoryRestriction (Commit 780c111 by Nicole Cordes)
Copied!

This list has been created by using git log --since="2016/03/11" --abbrev-commit --pretty='%ad %s (Commit %h by %an)' --date=short

4.2.1 - 2016/03/11

Regression release

This release contains a bugfix for the administration module

All Changes

This is a list of all changes in this release:

2016-03-09 [TASK] Remove usage of n:format.hsc (Commit b326cb5 by Georg Ringer)
2016-03-04 [BUGFIX] Fix property mapping error in admin module (Commit 6c1de6d by Georg Ringer)
Copied!

4.2.0 - 2016/03/02

Sponsors

Thanks a lot to the sponsors of this release!

New features

This release contains mostly bugfixes but also some mentionable changes:

Support for dd_googlesitemap

The extension dd_googlesitemap can be used to generate sitemaps. An additional renderer can now generate sitemaps out of news records.

Predefine author

By using the PageTsConfig tx_news.predefine.author = 1 the author and the email address are prefilled in the news record by the data of the current backend user.

Important changes

The ViewHelper n:format.fileDownload has been marked as deprecated and will be removed with the next version. Instead of using this ViewHelper, just use the native implementation of FAL.

<f:for each="{newsItem.falRelatedFiles}" as="relatedFile">
        <li>
            <span class="news-related-files-link">
                <a href="{relatedFile.originalResource.publicUrl -> f:format.htmlspecialchars()}" target="_blank">
                    {f:if(condition:relatedFile.originalResource.title, then:relatedFile.originalResource.title, else:relatedFile.originalResource.name)}
                </a>
            </span>
            <span class="news-related-files-size">
                {relatedFile.originalResource.size -> f:format.bytes()}
            </span>
        </li>
</f:for>
Copied!

All Changes

This is a list of all changes in this release:

2016-03-02 [TASk] Link title in admin module (Commit 3602282 by Georg Ringer)
2016-03-02 [BUGFIX] Improve admin module search form (Commit abe0784 by Georg Ringer)
2016-03-01 [BUGFIX] Set l10nmode for categories & tags to exclude (Commit d67020a by Georg Ringer)
2016-02-29 [FEATURE] Hook in NewsController::injectConfigurationManager (Commit 7ed1118 by Georg Ringer)
2016-02-26 [BUGFIX] Set checkbox to hidden in admin module (Commit 2ad8fb5 by Georg Ringer)
2016-02-26 [BUGFIX] Fix unit test for 8 (Commit 5ee1afb by Georg Ringer)
2016-02-25 [FOLLOWUP][TASK] Shariff comment in cdata (Commit 25e1ed9 by Georg Ringer)
2016-02-25 [BUGFIX] Add DatabaseTreeDataProvider provider to flexform (Commit 7a21825 by Georg Ringer)
2016-02-24 [BUGFIX] Make categories shown in strict language mode (Commit 10f9644 by Georg Ringer)
2016-02-24 [TASK] Add suggestions for other extensions to EMCONF and composer (Commit d07fd63 by Markus Klein)
2016-02-24 [TASK] Add hint for social privacy sharing option (Commit a5823d3 by Markus Klein)
2016-02-22 [BUGFIX] Check for root page in admin module > pidlist (Commit 0f52e84 by Georg Ringer)
2016-02-22 [BUGFIX] Fix overrideFlexformSettingsIfEmpty with 0 values (Commit df29968 by Georg Ringer)
2016-02-22 [FEATURE] New setting "hideIdList" (Commit 1657609 by Georg Ringer)
2016-02-22 [BUGFIX] Use Fluid_styled_content constants for lightbox (Commit 691670c by Georg Ringer)
2016-02-22 [BUGFIX] Add overlay in SimplePrevNextVh (Commit 5b58cfb by Georg Ringer)
2016-02-22 [TASK] Update google+ VH to latest code (Commit ee57a20 by Georg Ringer)
2016-02-22 [!!!][TASK] Deprecate VH n:format.fileDownload (Commit d97a7aa by Georg Ringer)
2016-02-21 [TASk] Remove custom softref parser (Commit b6c3305 by Georg Ringer)
2016-02-19 [FOLLOWUP][TASK] Type cast to array (Commit f0cd847 by Georg Ringer)
2016-02-19 [BUGFIX] Preview of hidden news not working for translated news (Commit 33f00fd by Georg Ringer)
2016-02-19 [TASK] Merge $tsSettings with $settings in LinkViewHelper (Commit aa29c27 by Georg Ringer)
2016-02-19 [BUGFIX] Use standard checkbox to avoid too long url (Commit a380448 by Georg Ringer)
2016-02-19 [BUGFIX] Fix redirect in administration module (Commit 86912b4 by Georg Ringer)
2016-02-19 [FEATURE] Make date field not required (Commit 8035d42 by Georg Ringer)
2016-02-19 [BUGFIX] Use English as default translation in locallang_be.xlf (Commit 5f1accb by Georg Ringer)
2016-02-18 [BUGFIX] Add headline to twb template detail (Commit 4dc3a88 by Georg Ringer)
2016-02-14 [FEATURE] Improve backend module (Commit e26c710 by Georg Ringer)
2016-02-18 [FEATURE] Respect category restrictions in administration module (Commit c2a58b4 by Georg Ringer)
2016-02-11 [TASK] Show separator only if author is set (Commit 9d2e231 by Boris Schauer)
2016-02-16 [FEATURE] Predefine author & author_email fields (Commit 556f93a by Georg Ringer)
2016-02-15 [BUGFIX] Fix double slash in meta tag VH (Commit 7eead3b by Georg Ringer)
2016-02-14 [TASK][FOLLOWUP] Fix travis (Commit 0cf75b2 by Georg Ringer)
2016-02-14 [BUGFIX] Wrap n:be.clickmenu in f:format.raw (Commit 7bb9616 by Georg Ringer)
2016-02-14 [BUGFIX] Fix travis.yml (Commit 237e6cd by Georg Ringer)
2016-02-14 [TASK] Extend size of of date fields (Commit ba6f11b by Georg Ringer)
2016-02-14 [BUGFIX] Reference locallang_tcc.xlf file correctly (Commit ef376d5 by Georg Ringer)
2016-01-30 [FEATURE] Add news sitemap generator using dd_googlesitemap (Commit 690f200 by Georg Ringer)
2016-02-03 followup (Commit b563c87 by Georg Ringer)
2016-02-03 [BUGFIX] Fix IfIsActiveVh (Commit ba6b4d2 by Georg Ringer)
2016-01-27 [TASK] Exclude news lists from indexing (Commit 77674b5 by Jan Kiesewetter)

Copied!

This list has been created by using git log --since="2016/01/27" --abbrev-commit --pretty='%ad %s (Commit %h by %an)' --date=short.

4.1.0 - 2016/01/27

Outlook

In the next versions, the support for non FAL fields will be removed from the extension. This includes:

  • The relation "tx_news_domain_model_media"
  • The media renderers for Youtube, Quicktime, Videosites, Vimeo, Mp3.

All features which are still state of the art will be covered by using FAL and its features.

Important changes

This release contains mostly bugfixes but also some mentionable changes:

Support of Twitter Bootstrap

Additional templates have been added which are based on the popular framework Twitter Bootstrap. Those can be used by selecting the additional entry "News Styles Twitter Bootstrap" in the section "Include Static (from extensions)" in the template record.

By changing the following constants you can use those templates as base and add your templates on top:

plugin.tx_news {
    view.twb {
        templateRootPath = EXT:news/Resources/Private/Templates/Styles/Twb/Templates
        partialRootPath = EXT:news/Resources/Private/Templates/Styles/Twb/Partials/
        layoutRootPath = EXT:news/Resources/Private/Templates/Styles/Twb/Layouts/
    }
}
Copied!

Starting Point for Categories List

The category listing action Category->list checks now the setting of the starting point.

Improved RSS feed

The RSS feed contains now the tag <enclosure> which includes the url to the preview image:

<f:if condition="{newsItem.firstFalImagePreview}">
        <enclosure url="{f:uri.image(image:'{newsItem.firstFalImagePreview}',absolute:1) -> f:format.htmlentities()}"
                length="{newsItem.firstFalImagePreview.originalResource.size}"
                type="{newsItem.firstFalImagePreview.originalResource.mimeType}"
        />
</f:if>
Copied!

All Changes

This is a list of all changes in this release:

2016-01-26 [BUGFIX] PHP Warning: invalid method signature inheritance (PHP 7) (Commit 8608510 by Xavier Perseguers)
2016-01-26 [BUGFIX] LinkViewHelper is not compatible with PHP7 (Commit fd70c21 by Xavier Perseguers)
2016-01-12 [BUGFIX] Generalize class name (Commit 04c2c86 by Charles Coleman)
2016-01-19 [BUGFIX] Use correct class name (Commit 4dc5927 by Charles Coleman)
2016-01-14 [BUGFIX] Remove orphaned <span> tags (Commit 7a08668 by Charles Coleman)
2016-01-20 [TASK] Allow detailPid for datemenu action (Commit b0ade26 by Georg Ringer)
2016-01-18 [BUGFIX] Check pageInfo if valid (Commit 0828fa4 by Georg Ringer)
2016-01-17 [TASK] Add allowfullscreen to YoutubeRenderer (Commit f362479 by Georg Ringer)
2016-01-15 [BUGFIX] Replace wrapClickMenuOnIcon (Commit a04508c by Georg Ringer)
2016-01-12 [BUGFIX] Add HTML to make Disqus work for Twb style (Commit d656468 by Charles Coleman)
2016-01-12 [BUGFIX] Add HTML to make Disqus work (Commit 343a6fe by Charles Coleman)
2016-01-11 [BUGFIX] Enforce new row for each list item in case image taller than news text (Commit 063d7b6 by Charles Coleman)
2016-01-12 [BUGFIX] Follow standard capitalization practice for headers (Commit ef7429f by Charles Coleman)
2016-01-11 [BUGFIX] Balance TS braces (Commit 6519801 by Charles Coleman)
2016-01-07 [FEATURE] Starting Point for Categories List (Commit dc40a1a by Juan Manuel Verges Solanas)
2016-01-01 [BUGFIX] Use IconRegistry for ce wizard (Commit b158790 by Georg Ringer)
2015-12-20 [FEATURE] Support of Twitter Bootstrap (Commit bada000 by Georg Ringer)
2016-01-01 [BUGFIX] Replace call to deprecated ContentObjectRenderer->LOAD_REGISTER (Commit 5651978 by Georg Ringer)
2016-01-01 [BUGFIX] Fix test for simpleprevnext (Commit 13a5fd2 by Georg Ringer)
2016-01-01 [TASK] Adopt travis (Commit 0236bff by Georg Ringer)
2015-12-29 [BUGFIX] Use flushCachesInGroupByTag to flush page cache (Commit 49187b3 by Benjamin Franzke)
2015-12-08 [BUGFIX] Fix category removal (Commit 215b4aa by Georg Ringer)
2015-12-17 [BUGFIX] Remove unused legacy class from class alias map (Commit 0c93314 by Thomas Schlumberger)
2015-12-09 [BUGFIX] Respect more tags in newsrepository search (Commit c16829a by Georg Ringer)
2015-11-29 [FEATURE] Add tag enclosure to RSS feed item (Commit a9843b3 by Georg Ringer)
2015-11-28 [BUGFIX] Remove double encoding in headerbar (Commit fee4843 by Georg Ringer)
2015-11-28 [TASK] Use proper label in sys_category (Commit 5958cfb by Georg Ringer)
2015-11-27 [!!!][TASK] OverwriteDemand does not care about empty values anymore (Commit 3b7fe3f by Georg Ringer)
2015-11-21 [TASK] Fix CGL (Commit 4c320f7 by Georg Ringer)
2015-11-20 [BUGFIX] Move iconregistry to ext_localconf (Commit 618bb47 by Georg Ringer)
2015-11-19 [TASK] Travis notifications (Commit 4fdf212 by Georg Ringer)
2015-11-19 [!!!][TASK] Remove custom preview handling of records (Commit ac1478f by Georg Ringer)
2015-11-19 Revert "[TASK] Add PHP 7 for travis" (Commit 96af09f by Georg Ringer)
2015-11-19 [TASK] Add PHP 7 for travis (Commit 8d2ca36 by Georg Ringer)
2015-11-19 [BUGFIX] Fix travis matrix (Commit bf2e133 by Georg Ringer)
2015-11-19 [BUGFIX] Fix tag generation (Commit cf0cc46 by Georg Ringer)
2015-11-17 [TASK] Make use of the correct f:image properties (Commit 9f7a21d by Frans Saris)
2015-11-19 [TASK] Adopt showinpreview icon to CMS7 (Commit 2a34d4e by Georg Ringer)
2015-11-16 [BUGFIX] missing Tab label in sys_category (Commit b9afeb4 by Andreas Allacher)
2015-11-13 [BUGFIX] Class Cache Manager must work with CRLF (Commit 3bbf6f1 by Sascha Egerer)
2015-11-12 [BUGFIX] TCA correct wizard link definition (Commit b6f729c by Andreas Allacher)
2015-11-10 [TASK] Remove usage of rte_disabled (Commit bff8a30 by Georg Ringer)
2015-11-10 [TASK] Fix deprecation issues in TCA (Commit 29636d6 by Georg Ringer)
2015-11-10 [TASK] Update TCA for showIconTable (Commit 84552a6 by Georg Ringer)
2015-11-10 [TASK] Release of 4.0.0 (Commit 294df6d by Georg Ringer)
2015-11-10 [DOC] 4.0.0 Release (Commit ce12f57 by Georg Ringer)

Copied!

This list has been created by using git log --since="2015/11/10" --abbrev-commit --pretty='%ad %s (Commit %h by %an)' --date=short.

4.0.0 - 2015/11/10

Important changes

This release targets TYPO3 CMS 7 LTS only and follows the PSR-2 standard.

The UI has been adopted to fit the new designs of the Core using svg icons.

All Changes

This is a list of all changes in this release:

2015-11-06 [CLEANUP] Remove unused use statements (Commit 783f097 by Georg Ringer)
2015-11-06 [CLEANUP] Use shorthand array syntax (Commit 5eacf26 by Georg Ringer)
2015-11-04 [CLEANUP] Clean ext_localconf/ext_tables (Commit b585659 by Georg Ringer)
2015-11-03 [TASK] Change folder icon (Commit c82e14a by Georg Ringer)
2015-11-03 [BUGFIX] Remove non existing type settings (Commit 403c9dc by Georg Ringer)
2015-10-30 [TASK] Improve TCA field sys_language_uid (Commit 7bdaa9b by Gernot Schulmeister)
2015-10-27 [TASK] Remove invalid UnitTest (Commit 0e21f2d by Georg Ringer)
2015-10-20 [BUGFIX] Unexpected count of 0 exception (Commit c8527f2 by Frank Nägler)
2015-10-14 [TASK] Use stripTags for og:description (Commit 63d7dd8 by Georg Ringer)
2015-10-14 [FEATURE] Support attribute section in LinkViewHelper (Commit f6fcfc7 by Georg Ringer)
2015-10-14 [BUGFIX] Fix fatal in PageLayout (Commit cd0eaf5 by Georg Ringer)
2015-10-14 [BUGFIX] Make extending classes work with PSR-2 (Commit 0599ca5 by Georg Ringer)
2015-10-14 [!!!][TASK] Remove CacheService (Commit 521074e by Georg Ringer)
2015-10-14 [TASK] More ::class usage (Commit 749e125 by Georg Ringer)
2015-10-14 [TASK] Remove unused code (Commit 4fa4c6e by Georg Ringer)
2015-10-14 [TASK] Move to PSR-2 (Commit e2a8b62 by Georg Ringer)
2015-10-14 [BUGFIX] Fix Category title translation in BE (Commit 031c88b by Georg Ringer)
2015-10-14 [TASK] Switch module icons to SVGs (Commit 7732446 by Georg Ringer)
2015-10-14 [TASK] Use IconRegistry for icons (Commit 3662db6 by Georg Ringer)
2015-10-14 [!!!][TASK] Improve TCA for CMS7 (Commit 7aeb07c by Georg Ringer)
2015-10-13 [TASK] Followup (Commit f296d49 by Georg Ringer)
2015-10-13 [TASK] Fix wizards in TCA (Commit 5053a77 by Georg Ringer)
2015-10-13 [TASK] Set renderType in TCA (Commit b9a0fb4 by Georg Ringer)
2015-10-13 [TASK] Fix iconFile usage (Commit 776ba7f by Georg Ringer)
2015-10-13 [TASK] Use new xlf in flexforms (Commit c4e13ad by Georg Ringer)
2015-10-13 [TASK] Use new xlf file to avoid deprecations (Commit 550c6ea by Georg Ringer)
2015-10-13 [BUGFIX] Fix clickmenu in administration module (Commit 13de967 by Georg Ringer)
2015-10-13 [BUGFIX] Fix edit links in administration module (Commit 2c78182 by Georg Ringer)
2015-10-06 [FEATURE] Use new template API (Commit 3bf96c0 by Georg Ringer)
2015-10-02 [BUGFIX] Fix namespace collision! (Commit 0765930 by Georg Ringer)
2015-10-02 [BUGFIX] Remove usage of tslib_fe name (Commit 1892021 by Georg Ringer)
2015-10-02 [BUGFIX] Fluid VH tests (Commit 4d6d156 by Georg Ringer)
2015-10-02 [TASK] Raise phpunit version (Commit 8b1ea2b by Georg Ringer)
2015-10-02 [BUGFIX] Fix functional test for sys_category (Commit 2e23dc1 by Georg Ringer)
2015-10-02 [TASK] Improve composer + travis (Commit d7a03bb by Georg Ringer)
2015-10-02 [BUGFIX] Fix test (Commit c137c6f by Georg Ringer)
2015-10-02 [BUGFIX] Fix ItemsProcFuncHook for 7.5 (Commit b656e55 by Georg Ringer)
2015-10-01 [TASK] Drop langDisable from flexform (Commit 0cdc5d1 by Georg Ringer)
2015-09-30 [BUGFIX] Prefill news records (Commit e5223c6 by Georg Ringer)
2015-09-30 [BUGFIX] Fix creation of records via admin module (Commit 1d83683 by Georg Ringer)
2015-09-30 [TASK] Use ::class (Commit aa0d41e by Georg Ringer)
2015-09-30 [TASK] Remove version checks (Commit 8d15830 by Georg Ringer)
2015-09-23 [TASK] Remove deprecated IconUtility and replace with IconFactory (Commit 19dcb37 by Frank Nägler)
2015-09-30 [TASK] Set minimum required version to 7.5 (Commit 8131b97 by Georg Ringer)

Copied!

This list has been created by using git log --since="2015/09/25" --abbrev-commit --pretty='%ad %s (Commit %h by %an)' --date=short.

3.2.6 - 2016/07/13

Bugfix release

This release is a bugfix release only.

All Changes

This is a list of all changes in this release:

2016-06-15 [BUGFIX] Use standard checkbox to avoid too long url
Copied!

3.2.5 - 2016/03/01

All Changes

This is a list of all changes in this release:

2016-03-01 [TASK] Release 3.2.5 (Commit c1450d1 by Georg Ringer)
2016-02-22 [BUGFIX] Unexpected count of 0 exception (Commit b15b67a by Georg Ringer)
2015-12-21 [BUGFIX] Preview of hidden news not working for translated news (Commit d424699 by Lorenz Ulrich)
2016-02-16 [BUGFIX] Readd icon for import (Commit f6ee325 by Georg Ringer)
2016-02-15 [BUGFIX] Fix double slash in meta tag VH (Commit 5214eac by Georg Ringer)
2016-01-30 [FEATURE] Add news sitemap generator using dd_googlesitemap (Commit cc5b0cb by Georg Ringer)
2016-01-27 [TASK] Exclude news lists from indexing (Commit 5e05f9d by Jan Kiesewetter)
2016-01-01 [BUGFIX] Fix category removal (Commit b699f86 by Georg Ringer)
2015-12-09 [BUGFIX] Respect more tags in newsrepository search (Commit 542d92a by Georg Ringer)
2015-11-27 [!!!][TASK] OverwriteDemand does not care about empty values anymore (Commit 1eca2e9 by Georg Ringer)

Copied!

This list has been created by using git log --since="2015/09/25" --abbrev-commit --pretty='%ad %s (Commit %h by %an)' --date=short.

3.2.4 - 2015/09/26

This release adds the version to the composer.json file which is required for 6.x.

3.2.3 - 2015/09/25

Important changes

This release targets 6.2 LTS only! To avoid entries in the deprecation log and code duplications, EXT:news for 6.2 LTS will be developed in a separated branch called 6x.

A separate release for 7.x will follow, in the meantime, just use the master branch!

Deprecation of n:format.striptags

The ViewHelper <n:format.striptags> is deprecated. Please use the one of the Core <f:format.stripTags>.

All Changes

This is a list of all changes in this release:

2015-09-25 [BUGFIX] Fix tests (Commit 67d573d by Georg Ringer)
2015-09-23 [TASK] Improve TCA for l10n_diff fields (Commit 8321a7f by Georg Ringer)
2015-09-23 [TASK] Remove icons for l10n_parent (Commit dffdfd6 by Georg Ringer)
2015-09-23 [BUGFIX] Fix broken PageLayout hook (Commit 8206721 by Georg Ringer)
2015-09-15 [BUGFIX] Exclude undelete from DataHandler hook (Commit 3c4d687 by Georg Ringer)
2015-09-11 [BUGFIX] Allow target in FalMediaImage (Commit f2d4509 by Georg Ringer)
2015-09-10 [BUGFIX] User correct default for useFal setting (Commit a405472 by Markus Klein)
2015-09-10 [BUGFIX] Revert reverted title change again (Commit 6b3b63b by Markus Klein)
2015-09-09 Revert "[BUGFIX] Revert title tag change" (Commit 9a1a28a by Georg Ringer)
2015-09-09 [TASK] Remove usage of deprecated function getPageRenderer() (Commit 08b06d5 by Frank Nägler)
2015-09-07 [FEATURE] Action and class are now available in the demand object (Commit 5d6a906 by Georg Ringer)
2015-07-17 [FEATURE] Allow overwrite the variables of the controller signals (Commit 805c0ab by Tim Lochmüller)
2015-03-20 [FEATURE] Provide a sitemap for news (Commit 179a2a5 by Jan Kiesewetter)
2015-09-07 [BUGFIX] Remove placeholder to support IE11 (Commit f9def37 by Georg Ringer)
2015-09-07 [BUGFIX] Revert title tag change (Commit 92960b7 by Georg Ringer)
2015-09-07 [BUGFIX] Fix js in suggest (Commit c457291 by Georg Ringer)
2015-09-07 [BUGFIX] Let disqus work with https (Commit 59a918c by Georg Ringer)
2015-09-07 [FEATURE] Include TsConfig for only news records (Commit ea8e4d7 by Georg Ringer)
2015-09-03 [BUGFIX] Replace old class names with new ones (Commit 7e39efe by Daniel Goerz)
2015-08-20 [BUGFIX] FileDownloadViewHelper typolink configuration error (Commit 75eaf01 by Lukas Vorlicek)
2015-08-20 [TASK] Use tag constraint in tag repository (Commit e682d25 by Georg Ringer)
2015-08-12 [TASK] Remove version from composer.json (Commit e5d027b by Marc Bastian Heinrichs)
2015-08-12 [BUGFIX] Use different namespace for BackendUtility in PageLayoutView (Commit 8b300c7 by Marc Bastian Heinrichs)
2015-07-19 [TASK] Cleanup use namespaces (Commit e4e15e3 by Georg Ringer)
2015-07-19 [BUGFIX] Fix page icon in PageLayoutView (Commit df70c42 by Georg Ringer)
2015-07-19 [!!!][TASK] Deprecate striptags ViewHelper (Commit e2e0c93 by Georg Ringer)
2015-07-17 [FEATURE] Set suggest config searchWholePhrase = TRUE (Commit e7e981e by Frans Saris)
2015-07-16 [BUGFIX] Fix ClassAliasMap for the PageLayoutView (Commit f4f602c by Georg Ringer)
2015-07-15 [TASK] Skip scrutinizer (Commit 89e3a59 by Georg Ringer)
2015-07-15 [CLEANUP] @author tag (Commit 81310f4 by Markus Klein)
2015-07-15 [BUGFIX] Fix template usage in BE for 7.x (Commit f72f513 by Georg Ringer)
Copied!

This list has been created by using git log --since="2015/07/15" --abbrev-commit --pretty='%ad %s (Commit %h by %an)' --date=short.

3.2.1 - 2015/07/13

This release is followup release of 3.2.1.

Important changes

The following changes might change the expected behaviour in your installation.

Change template configuration

The TypoScript to define the templates, partials and layouts changed a bit. With 0 now the default fallback is defined and the constants can be used to change the template to a desired value.

plugin.tx_news {
   mvc.callDefaultActionIfActionCantBeResolved = 1

   view {
      templateRootPaths {
         0 = EXT:news/Resources/Private/Templates/
         1 = {$plugin.tx_news.view.templateRootPath}
      }
      partialRootPaths {
         0 = EXT:news/Resources/Private/Partials/
         1 = {$plugin.tx_news.view.partialRootPath}
      }
      layoutRootPaths {
         0 = EXT:news/Resources/Private/Layouts/
         1 = {$plugin.tx_news.view.layoutRootPath}
      }
      widget.GeorgRinger\News\ViewHelpers\Widget\PaginateViewHelper.templateRootPath = EXT:news/Resources/Private/Templates/
   }
}
Copied!

All Changes

This is a list of all changes in this release:

2015-07-13 [BUGFIX] Fix widget templates (Commit 3a2724f by Georg Ringer)
2015-07-13 [TASK] Adopt constants! (Commit 1a2233d by Georg Ringer)
Copied!

This list has been created by using git log --since="2015/07/11" --abbrev-commit --pretty='%ad %s (Commit %h by %an)' --date=short.

3.2.1 - 2015/07/11

This release is a bugfix release to support TYPO3 CMS 7.3.

Please read this document carefully before upgrading.

Important changes

The following changes might change the expected behaviour in your installation.

Drop fe_group field in sys_category

Previously EXT:news added a field in the table of sys_category to add constraints to Frontenduser groups. However, this constraint was never evaluated in the frontend. Furthermore other extension authors might not respect this additional global constraint.

Therefore this field is removed.

Drop support of rte_enabled checkbox

If you are using TYPO3 CMS 7.3+, the checkbox "Disable RTE" is removed because the Core in general doesn't support this concept anymore.

All Changes

This is a list of all changes in this release:

2015-07-11 [TASK] Raise limits for categories & tags (Commit 500068d by Georg Ringer)
2015-07-08 [TASK] Add sorting to import service (Commit b2575ac by Georg Ringer)
2015-07-06 [BUGFIX] Load ExtJS in Backend importer module (Commit e58841e by Ingo Pfennigstorf)
2015-07-06 [TASK] Add warning if category not found during import (Commit f29a086 by Georg Ringer)
2015-07-03 [TASK] Add more schema.org annotations (Commit a9ae199 by Markus Klein)
2015-07-03 [TASK] Improve PageLayoutView (Commit 241d18d by Georg Ringer)
2015-07-03 [BUGFIX] Use xhtml compatible itemscope (Commit 4763845 by Georg Ringer)
2015-07-03 [TASK] Support description column (Commit 3279d8a by Georg Ringer)
2015-07-03 [BUGFIX] Use correct call of modules (Commit 677bbc1 by Georg Ringer)
2015-07-03 [!!!][TASK] Drop support of rte_enabled checkbox (Commit 5c84227 by Georg Ringer)
2015-07-03 [!!!][TASK] Drop fe_group field in sys_category (Commit 819b3bf by Georg Ringer)
2015-07-03 [BUGFIX] Compatibility of SuggestReciever for 7.3 (Commit 7f9e446 by Georg Ringer)
2015-07-03 [BUGFIX] Make Hooks/FormEngine compatible with 7.3 (Commit 056ddbc by Georg Ringer)
2015-07-02 [BUGFIX] use correct class name for legacy class mapping (Commit 7d89fd7 by Daniel Goerz)
2015-07-01 [BUGFIX] Fix typo in locallang_db.xlf (Commit e334d8f by Georg Ringer)
2015-07-01 [TASK] Remove typo in partial (Commit d0b63f2 by Georg Ringer)
2015-06-15 [BUGFIX] Fix updateCategoryPermissionFields update (Commit 19bb46c by Frans Saris)
2015-06-11 [BUGFIX] Reset runcounter when starting import (Commit 5830b85 by Frans Saris)
2015-06-05 [BUGFIX] Use different namespace for BackendUtility (Commit 432a7b1 by Georg Ringer)
2015-06-05 [BUGFIX] migrate also sys_categories with language -1 (Commit 697ca6c by Georg Ringer)
2015-06-03 [BUGFIX] Add fieldname to access check where clause (Commit a27d0f3 by Georg Ringer)

Copied!

This list has been created by using git log --since="2015/05/19" --abbrev-commit --pretty='%ad %s (Commit %h by %an)' --date=short.

3.2.0 - 2015/05/19

This release is dedicated to my wedding in June! I am so excited and want to share my happiness with the TYPO3 community!

If you are using this extension, take some minutes and write me a postcard. You can find the contact data here.

Upgrade procedure

The following changes might break your installation but all are easy to solve.

Change of proxy-class generation

If you use the feature of EXT:news to extend any class by providing a file called Resources/Private/extend-news.txt, be aware that the implementation and registration changed! Basically all you need is to add the following code to your ext_localconf.php file:

<?php
defined('TYPO3_MODE') or die();

$GLOBALS['TYPO3_CONF_VARS']['EXT']['news']['classes']['Domain/Model/News'][] = 'eventnews';
Copied!

Please take a look at the documentation where it is explained in detail.

Usage of namespaces

The extension uses now fully namespaces which meant touching every PHP class at least once! The used vendor name is GeorgRinger!

Rename some hooks

The following files and classes have been renamed:

  • Hooks/T3libBefunc into Hooks/BackendUtility
  • Hooks/Tcemain into Hooks/DataHandler
  • Hooks/CmsLayout into Hooks/PageLayoutView
  • Hooks/Tceforms into Hooks/FormEngine

The registration of the hook $GLOBALS['TYPO3_CONF_VARS']['EXT']['news']['Hooks/T3libBefunc.php']['updateFlexforms'] changed into $GLOBALS['TYPO3_CONF_VARS']['EXT']['news']['Hooks/BackendUtility.php']['updateFlexforms'] .

If you use one of these files, change the name to the new version.

Dropping the mm table for tt_content relations

Previously, tt_content elements have been added by using the mm relation table tx_news_domain_model_news_ttcontent_mm which had some drawbacks. The usage of this table is now dropped which means that after updating, you need to run the Update Wizard in the Install Tool to migrate the relations.

The Upgrade Wizard is called EXT:news Migrate from tt_content mm relation.

Dropping t3blog importer

The code to import records and categories of the extension t3blog has been moved to a separate extension. You can find that here: https://github.com/georgringer/t3ext-news_import_t3blog

Important changes

A lot of code changed in this version. The most important changes are:

  • A new index has been added to the database table tx_news_domain_model_news to improve the performance of translated records.
  • The documentation uses now a separate git repositories which is located on GitHub. This makes it easier for everyone to contribute a better documentation. The repository is located here: https://github.com/georgringer/news-documentation

All Changes

This is a list of all changes in this release:

2015-05-17 [FOLLOWUP][TASK] Use altPageTitle instead of title in TitletagViewHelper (Commit 8345aaa by Markus Klein)
2015-05-18 [TASK] Remove t3blog classes in aliasmap (Commit 64856d2 by Georg Ringer)
2015-05-18 [TASK] Remove old classcachebuilder (Commit fe375c9 by Georg Ringer)
2015-05-18 [!!!] Rename hook name from T3libBefunc to BackendUtility (Commit 1fca178 by Georg Ringer)
2015-05-12 [TASK] Use altPageTitle instead of title in TitletagViewHelper (Commit b548fa7 by Georg Ringer)
2015-05-12 [TASK] Followup for renaming (Commit 388af4a by Georg Ringer)
2015-05-11 [BUGFIX] Fix failing YoutubeTest (Commit 9915d69 by Georg Ringer)
2015-05-11 [TASK] Rename hooks to new format (Commit 3899b46 by Georg Ringer)
2015-05-11 [FEATURE] Support links in FAL elements (Commit b856739 by Georg Ringer)
2015-05-11 [!!!] Remove t3blog importer (Commit ffb9db1 by Georg Ringer)
2015-05-10 [FEATURE] Additional params for youtube media renderer (Commit a381f62 by Georg Ringer)
2015-05-10 [BUGFIX] Use ObjectManager in the MediaFactories (Commit 62cfccd by Georg Ringer)
2015-05-09 [BUGFIX] Use correct ID for links in workspace preview (Commit f5bb425 by Georg Ringer)
2015-05-09 [FEATURE] Support FAL type 5 for images (Commit a1c3ba7 by Georg Ringer)
2015-05-09 [TASK] Add hint for multiple storages during update (Commit a8b3be4 by Georg Ringer)
2015-03-25 [BUGFIX] Hand over the raw file title or name to the cObject (Commit a1cd38b by Jan Kiesewetter)
2015-05-07 [TASK] Replace packageKey by 'news' (Commit c09ba16 by Georg Ringer)
2015-05-07 [TASK] Switch ContentElementWizard to TS (Commit d4ad814 by Georg Ringer)
2015-05-07 [TASK] Simplify TCA (Commit dfd0e31 by Georg Ringer)
2015-05-07 [BUGFIX] Prefill archive date only for new records (Commit 05e8160 by Georg Ringer)
2015-05-07 [TASK] Add Archive to page module if using datemenu (Commit 0d4c232 by Georg Ringer)
2015-05-04 [BUGFIX] Fix author email in atom feed (Commit 57df1df by Josef Florian Glatz)
2015-05-05 [BUGFIX] Fix typo in doc header (Commit 2bcc52b by Georg Ringer)
2015-04-16 [TASK] Add PaginateViewHelper templateRootPath to typoscript setup (Commit fbe41e1 by Josef Florian Glatz)
2015-03-09 [!!!] Change class magic (Commit 25b0dee by Georg Ringer)
2015-04-24 [BUGFIX] Add vendor name to plugin configuration, TS and doc (Commit 38a0029 by Jan Kiesewetter)
2015-04-28 [BUGFIX] Remove deprecated pallettes code (Commit 9bc5aa4 by Georg Ringer)
2015-04-27 [BUGFIX] Prevent loosing saved categories if some are restricted (Commit 5c14bfc by Georg Ringer)
2015-04-27 [BUGFIX] Include subcategories while checking for denied categories (Commit 5dbc3a1 by Georg Ringer)
2015-04-27 [BUGFIX] Use proper code for message queue (Commit 51f79a1 by Georg Ringer)
2015-04-17 [TASK] Remove unused flash message view helper (Commit 9c6b9e6 by Jan Kiesewetter)
2015-04-16 [TASK] Remove superfluous comment (Commit 3056002 by Josef Florian Glatz)
2015-04-10 [DB] Index for translated records (Commit da0a254 by Georg Ringer)
2015-04-02 [BUGIX] Quicktime renderer must use FalCheck (Commit e8e7a9e by Georg Ringer)
2015-03-25 [FEATURE] Basic search in AdministrationModule (Commit fa2ddc5 by Georg Ringer)
2015-03-24 [FEATURE] Support optgroups for template layouts (Commit a51e06b by Georg Ringer)
2015-03-20 [BUGFIX] Change PHPDoc for \DateTime object (Commit 4ec8535 by Jan Kiesewetter)
2015-03-16 [BUGFIX] Use different approach to compare media files (Commit 6aa2b28 by Georg Ringer)
2015-03-16 [TASK] Use string compare for l10n_parent (Commit d866737 by Georg Ringer)
2015-03-16 [BUGFIX] Fix PHP error in import with links (Commit 2a14568 by Georg Ringer)
2015-03-09 [BUGFIX] Followup to TtcontentUpdate (Commit d3aaf74 by Georg Ringer)
2015-03-09 [BUGFIX] Avoid double slashes in MetaTagVH (Commit 9909907 by Georg Ringer)
2015-03-03 [!!!][DB][TASK] Change tt_content relation (Commit 22e5eb9 by Georg Ringer)
2015-03-08 [!!!] Deprecate ViewHelper n:format.date (Commit f0f7584 by Georg Ringer)
2015-03-04 [DOC][BUGFIX] Correct RSS language definition (Commit f4ddca9 by Markus Klein)
2015-03-03 [BUGFIX] fix failing functional tests (Commit 73f7299 by Andreas Allacher)
2015-03-03 [BUGFIX] fix wrong Exceptions due to namespaces (Commit cf0db92 by Andreas Allacher)
2015-02-12 [!!!][FEATURE] Make lightbox configurable with TypoScript (Commit ef54707 by Jan Kiesewetter)
2015-03-02 [TASK] Add missing commas/spaces between properties of inline VH (Commit eeb782a by Josef Florian Glatz)
2015-03-02 [DOC] ClassAliasLoader of helhum (Commit bd702cc by Georg Ringer)
2015-03-02 [BUGFIX] fix failing unit tests with namespaces (Commit a375d64 by Andreas Allacher)
2015-03-02 [DOC] Add username to the contribute code (Commit b6bf75d by Georg Ringer)
2015-03-02 [TASK] Followup, fix composer.json (Commit ff2f9da by Georg Ringer)
2015-01-30 [!!!][FEATURE] Move extension to namespaces (Commit aa5777a by Georg Ringer)
2015-02-26 [BUGFIX] Fix failing test (Commit 7c75566 by Georg Ringer)
2015-02-19 [BUGFIX] Remove calls to undefined methods (Commit a03ef59 by Georg Ringer)
2015-02-19 [TASK] Nicer category tree in Administration 7 (Commit e44546a by Georg Ringer)
2015-02-19 [FEATURE] Support audio.js (Commit d0fc4aa by Georg Ringer)
2015-02-14 [DOC] Add missing info about gravatar VH's "default" attribute (Commit 6ac1979 by Josef Florian Glatz)
2015-02-15 [BUGFIX][DOC] Fix codeblock in clearCacheCmd documentation (Commit f7fa34e by Josef Florian Glatz)
2015-02-14 [DOC] Category Menu: Add category title to title tag (Commit e06b02e by Georg Ringer)
2015-02-13 [FEATURE] Add title tags to n:link (Commit 124b7c2 by Georg Ringer)
2015-02-13 [TASK] Add title to Category link in Category/List (Commit e1fd5e4 by Georg Ringer)
Copied!

This list has been created by using git log --since="2015/02/12" --abbrev-commit --pretty='%ad %s (Commit %h by %an)' --date=short.

3.1.0 - 2015/02/12

This is a major release supporting now also TYPO3 CMS 7, next to 6.2 LTS.

Read and follow the section Upgrade procedure carefully!

Upgrade procedure

The following changes might break your installation but all are easy to solve.

itemsPerPage configuration (Commit a0baa1a)

The itemsPerPage can now be set in the FlexForms. Therefore it is needed to add "list.paginate.itemsPerPage" to the configuration settings.overrideFlexformSettingsIfEmpty.

Tx_News_Domain_Model_News::getNonFalMediaPreviews() (Commit ae22148)

If you are using e.g. {newsItem.nonFalMediaPreviews}, you need to rename that to {newsItem.falMediaNonPreviews}.

Changed import_id identifier (Commit e71834b)

The identifier for import_id changed for multilanguage records. The suffix "|L<sys_language_uid>" has been removed.

Important changes

A lot of code changed in this version. The most important changes are:

  • Improved FAL migration
  • Improved import service
  • SignalSlots in ImportService and the actions
  • Added a composer.json

All Changes

2015-02-11 [TASK] Add autoload definition in composer.json (Commit 991de43 by Helmut Hummel)
2015-02-10 [TASK] Changelog for 3.1.0 (Commit b88d81a by Georg Ringer)
2015-02-10 [FEATURE] Add composer.json (Commit 33241ca by Georg Ringer)
2015-02-10 [TASK] Add simple ext:linkhandler sample configuration (Commit fc553ad by Josef Florian Glatz)
2015-02-10 [TASK] Change allowed TYPO3 version (Commit 58bb06e by Georg Ringer)
2015-02-10 [BUGFIX] Improve escaping in VH (Commit e4ce1cb by Georg Ringer)
2015-02-10 [FEATURE] Add composer.json (Commit 33241ca by Georg Ringer)
2015-02-10 [TASK] Add simple ext:linkhandler sample configuration (Commit fc553ad by Josef Florian Glatz)
2015-02-10 [TASK] Change allowed TYPO3 version (Commit 58bb06e by Georg Ringer)
2015-02-10 [BUGFIX] Ignore unwanted settings of flexforms (Commit 63fcf77 by Georg Ringer)
2015-02-10 [BUGFIX] Followup for getDemandClass (Commit 413a44b by Georg Ringer)
2015-02-10 [BUGFIX] Prevent spreading columns in page module (Commit 6f68088 by Josef Florian Glatz)
2015-02-09 [DOC] Add known "fact" about redirectToPage (Commit c1eb2e0 by Josef Florian Glatz)
2015-02-09 [TASK] Remove not neded call (Commit 70351dc by Georg Ringer)
2015-01-15 [BUGFIX] Change VH Paginate for correct rel="prev" link on second page (Commit c699c84 by Josef Florian Glatz)
2015-02-09 [FEATURE] Hook for CmsLayout (Commit 7bec586 by Georg Ringer)
2015-02-09 [TASK] Follwoup (Commit 8bf4139 by Georg Ringer)
2015-02-09 [FEATURE] Extend demand class (Commit 29fa1cd by Georg Ringer)
2015-02-08 [TASK] Add keys to constraint array (Commit 9b2e715 by Georg Ringer)
2015-02-06 [DOC] Hint for &nbsp; in RSS feed (Commit 578a0f8 by Georg Ringer)
2015-02-06 [BUGFIX] Set no chash if using versioning preview (Commit e238f18 by Georg Ringer)
2015-02-06 [DOC] Add known problem DBAL (Commit db6d95a by Georg Ringer)
2015-02-06 [TASK] Use f:format.bytes instead of n:format.fileSize (Commit 6efb522 by Georg Ringer)
2015-02-06 [TASK] Improve image selection in category (Commit 3ceb56f by Georg Ringer)
2015-01-15 [FEATURE] Add default image argument to Gravatar ViewHelper (Commit a2cc813 by Josef Florian Glatz)
2015-02-06 [!!!][TASK] Change getNonFalMediaPreviews() to getFalMediaNonPreviews() (Commit ae22148 by Georg Ringer)
2015-02-05 [TASK] Improve createDemandObjectFromSettings (Commit c81373a by Georg Ringer)
2015-01-16 [TASK] Fix typo in update script (Commit feeb2fb by Josef Florian Glatz)
2015-02-04 [TASK] Add 'Translate to' msg to title (Commit f277eeb by Georg Ringer)
2015-02-04 [BUGFIX] Fix memory_leak in admin module (Commit 807c715 by Georg Ringer)
2015-02-03 [BUGFIX] Check type if importing multimedia (Commit 0f5ec29 by Georg Ringer)
2015-01-28 [!!!] Fix import for records without parent (Commit e71834b by Georg Ringer)
2015-01-26 [BUGFIX] clear template path before fallback is set (Commit 02a77fe by bschauer)
2015-01-23 [BUGFIX] Fix typo in readme (Commit 8c81988 by Georg Ringer)
2015-01-15 [DOC] Use correct bootstrap class (Commit e15f567 by Georg Ringer)
2015-01-13 [TASK] Skip test (Commit 05481ea by Georg Ringer)
2015-01-13 [TASK] Remove superflous test (Commit fd54cbd by Georg Ringer)
2015-01-13 [TASK] Remove superflous test (Commit c1bb850 by Georg Ringer)
2015-01-12 [TASK] Remove skipped tests (Commit 8e68009 by Georg Ringer)
2015-01-09 [BUGFIX] Fix error in getDetailPidFromCategories() (Commit 3847582 by Georg Ringer)
2014-12-30 [TASK] Use l10nmode copy for datetime (Commit dbe7d32 by Georg Ringer)
2014-12-30 [BUGFIX] Fix wrong doc example (Commit ffc59b4 by Georg Ringer)
2014-12-21 [BUGFIX] Check if category images exist before import (Commit e8ce78a by Georg Ringer)
2014-12-17 [BUGFIX] Check for sys_category in BE module (Commit 781e34f by Georg Ringer)
2014-12-15 [TASK] Improve module description (Commit 01fae08 by Georg Ringer)
2014-12-12 [BUGFIX] Replace tslib_cObj with namespaced version (Commit e668ead by Georg Ringer)
2014-12-12 [BUGFIX] Consider demands in AdministrationController's pagination (Commit fb476eb by Georg Ringer)
2014-12-12 [BUGFIX] Add paginate templatePath to overrideFlexformSettingsIfEmpty (Commit 9a62084 by Georg Ringer)
2014-12-11 [BUGFIX] Check hidden state in migration (Commit 01527cf by Georg Ringer)
2014-12-10 [BUGFIX] Missing initialization of images in category class (Commit ac5d5d7 by Lars Malach)
2014-12-07 [TASK] Improve NewsPidListing for CMS7 (Commit cba5110 by Georg Ringer)
2014-12-07 [BUGFIX] Fix BE tree (Commit 077d5bd by Georg Ringer)
2014-12-07 [TAKS] Adopt BE template for CMS 7 (Commit 48aed5a by Georg Ringer)
2014-12-01 [TASK] Version 7 compatible templates (Commit 00559ee by Georg Ringer)
2014-12-01 [TASK] Module Icon for CMS 7 (Commit 008cf9d by Georg Ringer)
2014-11-28 [BUGFIX] Bring back tt_content layout field (Commit 3e2efc4 by Georg Ringer)
2014-11-27 [BUGFIX] Exception when trying to display a deleted news (Commit 6b37ea8 by pbergsmann)
2014-11-28 [BUGFIX] Use namespaced class for ContentObjectRenderer (Commit bc61e93 by Georg Ringer)
2014-11-28 [BUGFIX] Fix wrong parameters in CmsLayout (Commit 5c85fce by Georg Ringer)
2014-11-22 [CLEANUP] Removes unused TypoScriptFrontendController (Commit accea28 by Josef Florian Glatz)
2014-11-22 [DOC] Improve TCEMAIN.clearCacheCmd example (Commit 3d5e2aa by Josef Florian Glatz)
2014-11-26 [TASK] Make checkPidOfNewsRecord configurable (Commit 336fef4 by Georg Ringer)
2014-11-04 [TASK] Add translation synchronization links for FAL relations (Commit 2e2cb38 by Lorenz Ulrich)
2014-11-06 [BUGFIX] Skip empty files in migration (Commit 617a27e by Georg Ringer)
2014-10-26 [DOC] Improve realUrl configuration example (Commit 5ff727c by Markus Klein)
2014-10-25 [BUGFIX] Use correct Class for DocumentTemplate (Commit e492465 by Georg Ringer)
2014-10-17 [BUGFIX] Category Update-Wizard fails if description is null (Commit 341dae3 by pbergsmann)
2014-10-15 [BUGFIX] Add missing getter and setter for sys_language_uid and l10n_parent for model link (Commit 47c2352 by Ralf Merz)
2014-10-16 [BUGFIX] Add db field t3ver_move_id (Commit 47a165b by Georg Ringer)
2014-10-12 [BUGFIX] Use correct TCA for l10n_parent of tx_news_domain_model_file (Commit a81bc69 by Georg Ringer)
2014-10-12 [BUGFIX] Improve FalUpdateWizard (Commit 819f0d6 by Georg Ringer)
2014-10-12 [TASK] Copy datetime if translating a news record (Commit 6426933 by Georg Ringer)
2014-10-08 [BUGFIX] Remove hardcoded http:// from Youtube MediaRenderer (Commit 63e4ee0 by Frans Saris)
2014-10-12 [TASK] Add default arguments to getChildrenCategoriesRecursive() (Commit 00ffa3f by Georg Ringer)
2014-06-25 [BUGFIX] Support lang -1 in news importer (Commit d1d1090 by Frans Saris)
2014-09-16 [BUGFIX] Detail.html misses file attribute for f:fileSize (Commit 6f863cc by Markus Klein)
2014-09-22 [FEATURE] Add SignalSlot for ImportService (Commit fc90edd by Georg Ringer)
2014-09-08 [BUGFIX] Wrong use of FAL mediaElement properties (Commit 8aa50ae by Frans Saris)
2014-09-08 [BUGFIX] Wrong viewHelper is used for rendering videos (Commit 2f32326 by Frans Saris)
2014-09-08 [TASK] Cleanup ll file (Commit 91a0569 by Georg Ringer)
2014-08-19 [BUGFIX] Add switch for category restriction check (Commit 5b9a0e9 by Frans Saris)
2014-08-19 [BUGFIX] No category mounts set means access to all (Commit 0dc0c92 by Frans Saris)
2014-07-31 [BUGFIX] Add opposite fields (Commit cb8bd0d by Georg Ringer)
2014-07-30 [BUGFIX] Fix some typos (Commit e05342d by Georg Ringer)
2014-07-30 [BUGFIX] Improve FAL Migration (Commit 624be39 by Georg Ringer)
2014-07-29 [BUGFIX] Rephrase offset label (Commit d9c21d2 by Georg Ringer)
2014-07-29 [TASK] Improve category listing in admin module (Commit 2308d88 by Georg Ringer)
2014-06-25 [TASK] Improve caching + clearing (Commit 64b4668 by Georg Ringer)
2014-06-25 [FEATURE] Deny editing if user doesn't have permission for all categories (Commit 702438e by Lorenz Ulrich)
2014-07-29 [BUGFIX] Fix possible sql injections in category migration (Commit 0ea362b by Georg Ringer)
2014-07-25 [TASK] Check for configuration errors in Import (Commit 8cd7099 by Georg Ringer)
2014-07-22 [BUGFIX] Correct typo (Commit add0dec by Georg Ringer)
2014-07-17 [FEATURE] Migrationwizard for files to FAL (Commit 44c087b by Georg Ringer)
2014-07-22 [TASK] Bring back clickmenu in Administration module (Commit ef059b0 by Georg Ringer)
2014-07-22 [FEATURE] Additional parameter content for LinkVH (Commit 378846c by Georg Ringer)
2014-07-17 [TASK] Remove unused file (Commit 078eaec by Georg Ringer)
2014-07-08 [BUGFIX] Fix failing cache test (Commit f1e20c6 by Georg Ringer)
2014-07-08 [TASK] Fix travis runs (Commit 96a20bf by Georg Ringer)
2014-06-23 [TASK] Add Disqus to Detail Template (Commit 0144922 by Jan Kiesewetter)
2014-07-03 [TASK] Adopt the doc headers (Commit d62e793 by Georg Ringer)
2014-07-03 [DOC] Known issue about images on root (Commit 814ae4d by Georg Ringer)
2014-07-03 [FEATURE] Use rich snippet for author (Commit 8c287c5 by Georg Ringer)
2014-07-03 [FEATURE] Use time element in templates (Commit 7230d8a by Georg Ringer)
2014-06-25 [TASK] Followup (Commit 42c261d by Georg Ringer)
2014-06-25 [TASK] Remove duplicated test (Commit 11132f7 by Georg Ringer)
2014-06-24 [TASK] Add functional tests to travis (Commit 4189b9d by Georg Ringer)
2014-06-24 [BUGFIX] Use correct type in DemandObject (Commit eef7672 by Georg Ringer)
2014-06-20 Revert "[TASK] Make field bodytext an exclude field" (Commit 9dc4176 by Georg Ringer)
2014-06-20 [TASK] Update travis (Commit dcff065 by Georg Ringer)
2014-06-20 [TASK] Fix unit tests (Commit 63730eb by Georg Ringer)
2014-06-20 [BUGFIX] Fix failing tests (Commit c2e7d23 by Georg Ringer)
2014-06-20 [BUGFIX] Fix call in filesize VH (Commit 28772bd by Georg Ringer)
2014-06-18 [TASK] Use inline notation for f:format.html and f:format.crop (Commit 9f37741 by Jan Kiesewetter)
2014-06-19 [TASK] Add typolink forceAbsoluteUrl to DisqusViewHelper example (Commit 6433912 by Jan Kiesewetter)
2014-06-18 [TASK] Logger for imports of news/category (Commit 62d780f by Georg Ringer)
2014-06-17 [BUGFIX] Localized categories must point to parents after import (Commit 85e2d7f by Lorenz Ulrich)
2014-06-17 [TASK] Make field bodytext an exclude field (Commit 574b535 by Lorenz Ulrich)
2014-06-17 [TASK] Add logger (Commit fda1753 by Georg Ringer)
2014-06-17 [BUGFIX] Avoid division through 0 in importer (Commit 5d67409 by Georg Ringer)
2014-06-16 [BUGFIX] Date Menu doesn't respect enableFields (Commit a819229 by Lorenz Ulrich)
2014-06-17 [TASK] Translate import module (Commit c9b9488 by Georg Ringer)
2014-06-17 [TASK] Improve wording of 'internal page' (Commit 3f84265 by Georg Ringer)
2014-06-16 [BUGFIX] Check earlier for existing while importing (Commit 8827ff8 by Frans Saris)
2014-06-16 [BUGFIX] Add missing where clause in simplePrevNextVH (Commit 5abfc91 by Georg Ringer)
2014-06-11 [TASK] Unify padding for page-navigation-links (Commit b3238ed by Stefan Neufeind)
2014-06-12 [BUGFIX] List-view should offer "manual sorting" if activated (Commit 6b91042 by Stefan Neufeind)
2014-06-11 [TASK] Allow link parameter from outside (Commit 16b2ab6 by Georg Ringer)
2014-06-10 [TASK] Update version to 3.1.0-dev for master (Commit cf8c458 by Frans Saris)
2014-06-05 [TASK] Correct property type in newsdemand (Commit 8b7a265 by Georg Ringer)
2014-06-05 [BUGFIX] Rename signals (Commit 4480477 by Georg Ringer)
2014-06-05 [DOC] Add Changelog section for 3.0.1 (Commit 17c8be3 by Georg Ringer)
2014-06-04 [TASK] Simplify domain model tests (Commit 596e1a0 by Georg Ringer)
2014-06-04 [FEATURE] Add signals to the actions (Commit ee0bb26 by Georg Ringer)
2014-06-03 [BUGFIX] Update 3rd party libs (Commit 37d0267 by Georg Ringer)
2014-06-02 [TASK] Move from xml to xlf (Commit aace626 by Georg Ringer)
2014-06-02 [TASK] Add tooltip in Admin module (Commit dc62cb9 by Georg Ringer)
2014-05-30 [DOC] Add example how to extend news (Commit 4df8d51 by Georg Ringer)
2014-05-26 [BUFIX] Check if image is found in CatgeogryImportService (Commit 7a878ec by Frans Saris)
2014-05-26 [BUGFIX] fixes little typo in TypoScript example (Commit 91ed6fd by Peter Kraume)
2014-05-26 [BUGFIX] fixes wrong git repository url in documentation (Commit 543f9fa by Peter Kraume)
2014-05-23 [FEATURE] Allow type internalUrl link to FAL records (Commit 2750295 by Georg Ringer)
2014-03-28 [!!!][FEATURE] Add itemsPerPage configuration to FlexForm (Commit a0baa1a by Tom Ruether)
2014-05-22 [BUGFIX] Check category images in ImportService (Commit 8a097b7 by Georg Ringer)
2014-05-22 [TASK] Raise requirement to a secure TYPO3 version (Commit 80d8db5 by Georg Ringer)
2014-05-21 [!!!][TASK] Change FB Share VH to HTML5 (Commit 27e75b3 by Georg Ringer)
2014-05-20 [TASK] Enable functional tests in travis (Commit 909c421 by Georg Ringer)
2014-05-20 [TASK] Functional test for the SimplePrevNextViewHelper (Commit bb843ca by Georg Ringer)
2014-05-20 [TASK] Move mapping to ext_typoscript_setup.txt (Commit c5f6b21 by Georg Ringer)
2014-05-20 [BUGFIX] Fix functional tests (Commit db4e6a7 by Georg Ringer)
2014-05-20 [TASK] Updated script for related files (Commit cf6ec34 by Georg Ringer)
2014-05-19 [TASK] Use low numeric key for *RootPaths (Commit 4000656 by Jan Kiesewetter)
2014-05-19 [TASK] Set Limit if only offset is used (Commit 30d47bf by Georg Ringer)
2014-05-19 [FEATURE] Implement simple prev/next ViewHelper (Commit 9c055b3 by Georg Ringer)
2014-05-19 [TASK][DOC] Some cleanup (Commit 567adbd by Xavier Perseguers)
2014-05-19 [FEATURE] Option to restrict backend module to a given page id (Commit 01a6366 by Georg Ringer)
2014-05-19 [BUGFIX] Improve rss of feed (Commit c6ac314 by Georg Ringer)
2014-05-19 [TASK] Improve atom feed (Commit 92b9fc2 by Georg Ringer)
2014-05-16 [BUGFIX] Set datetime to current time for new records (Commit 0f27cd8 by Georg Ringer)
Copied!

This list has been created by using:

git log --since="2014/05/16" --abbrev-commit --pretty='%ad %s (Commit %h by %an)' --date=short
Copied!

3.0.1 - 2014/06/03

This is a security release, containing only the bugfix for the issues mentioned at http://typo3.org/teams/security/security-bulletins/typo3-extensions/typo3-ext-sa-2014-009/

Upgrade procedure

If you copied all templates to e.g. fileadmin/templates/fo/, you need to adopt the file Templates/ViewHelpers/Flv.html and change the used flowplayer version to flowplayer-3.2.16.swf.

All Changes

2014-06-03 [BUGFIX] Update 3rd party libs (Commit cde104f)
Copied!

3.0.0 - 2014/05/16

This is a major release supporting TYPO3 CMS 6.2 LTS. This is also the required version!

Read and follow the section Upgrade procedure carefully!

Upgrade procedure

As a lot of code changed, please backup your site before starting!

Support of FAL

The images are not migrated and can be still used. To do so, set the configuration "Use FAL relations instead of news media elements" in the Extension Manager > news to "Both" or "No" instead of "Yes".

The old way is however deprecated and will be removed in one of the next major versions.

Support of sys categories

The categories can be migrated by using the update wizard in the extension manager.

Templates & TypoScript

  • Templates, Partials & Layouts are now assigned by using templateRootPaths, partialRootPaths and layoutRootPaths which is a new feature of 6.2. Read more about it in the section "Templating".
  • If you enable FAL, you need to adopt your old templates as well!
  • If you experience any problems with your templates, please check out the default templates first to get an idea how it should look now.
  • Remove all DAM related stuff (e.g. calls to ViewHelpers) from the template.

Important changes

A lot of code changed in this version. Therefore it is very likely that the update is not done in 1 minute. The most important changes are:

Support of FAL

FAL is used for the following fields:

  • Media
  • Related files
  • Category images

Support of sys categories

The categories of the Core (sys_category) are now used instead of custom ones. The records are extended with those fields which are needed by "news".

Misc

Changes which should be mentioned are:

  • Default TypoScript uses syntax templateRootPaths, partialRootPaths, layoutRootPaths to allow chaining of the templates
  • Support of 'Insert Record' element
  • Add more snippets to the documentation
  • Improve Administration module
  • Use Scrutinizer to document the code quality, see http://scrutinizer-ci.com/g/TYPO3-extensions/news/
  • If you want to migrate from EXT:tt_news, install EXT:news_ttnewsimport
  • Search in administration module & frontend makes use of the time restriction
  • The importer for tt_news has been removed to a separate extension with the key "news_ttnewsimport" which can be found in the TER or on github (https://github.com/fsaris/news_ttnewsimport).
  • DAM support has been completely removed

All Changes

2014-05-16 [TASK] Make it again dependend on 6.2.2 (Commit e0c5cf1)
2014-05-16 [DOC] Add snippet how to skip controller & action (Commit 836b4e1)
2014-05-16 [TASK] Followup unit test (Commit 99ab45d)
2014-05-16 [TASK] UnitTest for LinkViewHelper (Commit a7df6a0)
2014-05-16 [TASK] Correct overloading of settings in link generation (Commit f4f272c)
2014-05-15 [BUGFIX] update categories in flexforms (Commit 344337f)
2014-05-15 [BUGFIX] Fixed broken tests (Commit 46a896b)
2014-05-14 [BUGFIX] TemplateLayout not shown in content element preview (Commit 6a2c448)
2014-05-15 [TASK] Make fields alternativTitle & pathSegment exluded=1 (Commit 1842967)
2014-05-07 [FEATURE] Add Vimeo support (Commit 1b5cbac)
2014-05-14 [BUGFIX] Sprite icon not shown (Commit b42df44)
2014-05-14 [TASK] Set clearCacheOnLoad = 1 to ext_emconf.php (Commit ca4b76a)
2014-05-13 [TASK] Depend on TYPO3 CMS 6.2.3 to avoid security issues (Commit bd9f702)
2014-05-12 [BUFGIX] Support FAL images in category importer (Commit 25ec7ae)
2014-05-08 [CLEANUP] Make proper use of TCA for FAL persistence (Commit e60eaf1)
2014-05-09 [BUGFIX] Wrong default pageModuleFieldsNews value for categories (Commit 4628fa2)
2014-05-08 [BUGFIX] Fixed wrong use of global vars in ext_tables.php (Commit 336502a)
2014-05-07 [BUGFIX] Remove itemsProcFunc user_MediaType reference (Commit 3a08c97)
2014-05-08 [BUGFIX] Settingsservice must not be a singleton (Commit 6e3f008)
2014-05-08 [FEATURE] Timerestriction high for administration module (Commit bb986c9)
2014-05-08 [BUGFIX] Generate moduleToken for administration module (Commit f141f33)
2014-05-02 [TASK] Clear CF by tx_news tag as well (Commit b874a6a)
2014-05-02 [BUGFIX] Improve SocialDisqusVH Test (Commit 9060a16)
2014-05-02 [BUGFIX] Adopt TS for Insert Record (Commit 05af827)
2014-04-30 [FEATURE] Add tstamp/crdate to importer (Commit 5a85c18)
2014-04-24 [TASK] Cleanup unneeded database columns (Commit 259ea08)
2014-04-23 [CLEANUP] Tags are not translatable so remove l10n_mode (Commit f572353)
2014-04-18 [BUGFIX] Properly name hook class (Commit 1cff762)
2014-04-17 [CLEANUP] Cleanup caching configuration and usage (Commit 22d519a)
2014-04-17 [CLEANUP] Remove Database table definitions for cache (Commit 6f51eab)
2014-04-17 [TASK] Optimize TCA additions and ext_tables.php (Commit 4c90de4)
2014-04-17 [FEATURE] Make timerestriction field configurable (Commit 841f2bb)
2014-04-17 [BUGFIX] Add ws fields to tag table (Commit 6151939)
2014-04-16 [BUGFIX] Get rid of deprecation messages for wizards (Commit 6eb1ba1)
2014-04-16 [BUGFIX] Remove deprecation messages regarding cache manager (Commit 550f082)
2014-04-16 [BUGFIX] Invalid RSS language definition (Commit 57284b2)
2014-04-11 [BUGFIX] Change l10n_mode for type,external/internal url (Commit ce5756a)
2014-04-11 [DOC] Document drawbacks of Extbase & languages (Commit 856f5d0)
2014-04-11 [BUGFIX] Check existance of media elemens in importer (Commit ce6c539)
2014-04-10 [TASK] Use templateRootPaths, partialRootPaths and layoutRootPaths (Commit f1aa87b)
2014-04-08 [BUGFIX] TreeDataProvider::isCategoryAllowed() wrong check (Commit 3a93fe7)
2014-04-05 [BUGFIX] Missing property mapping for CType (Commit cbc47a3)
2014-04-05 [BUGFIX] Unknown function: Tx_News_Utility_Page line 51, getTreeList (Commit dcbd2c0)
2014-04-02 [TASK] Test for TagController (Commit dcc65f1)
2014-04-01 [TASK] More tests (Commit 31f5847)
2014-04-01 [TASK] Improve page module layout (Commit 0aabf11)
2014-04-01 [TASK] Do funcational tests in a correct way (Commit cc7710b)
2014-04-01 [BUGFIX] First category image (Commit 9e2fc70)
2014-04-01 [TASK] More unit tests (Commit f52cd2b)
2014-04-01 [TASK] UnitTest (Commit 1095df3)
2014-04-01 [TASK] Followup (Commit 5279070)
2014-04-01 [FEATURE] Add min/max date for search (Commit 315519a)
2014-03-11 [FEATURE] Add check in detail action if news belongs to right page (Commit 8064c98)
2014-04-01 [TASK] Documentation improvements (Commit ab6ed85)
2014-03-31 [TASK] Improve code quality (Commit a766b8a)
2014-03-31 [TASK] Followup (Commit 877d132)
2014-03-31 [TASK] Improve code quality (Commit 7764714)
2014-03-31 [TASK] Followup (Commit 95ccea5)
2014-03-31 [TASK] Improve code (Commit ec301b9)
2014-03-31 [TASK] Use namespaced classes (Commit 0e25835)
2014-03-31 [TASK] Remove tt_news importer, handled in news_ttnewsimport (Commit ce24c66)
2014-03-31 [TASK] Remove DAM relations (Commit 6e8e5da)
2014-03-31 [TASK] Improve code quality (Commit 2367c0b)
2014-03-31 [TASK] Improve code quality (Commit 2120c6d)
2014-03-31 [DOC] Improve Documentation for 3.0 release (Commit 359072a)
2014-03-30 [TASK] Followup cleanup for sys_category usage (Commit efb6169)
2014-03-30 [TASK] Use travis only for master branch (Commit 3448383)
2014-03-07 [!!!][TASK] Use sys_category (Commit 7059c16)
2014-03-27 [TASK] Use namespaces classes (Commit be65a69)
2014-03-27 [TASK] Followup (Commit d02a11c)
2014-03-26 [TASK] Check empty limit in admin module (Commit c25164d)
2014-03-26 [DOC] Documentation about EM configs (Commit afcfb62)
2014-03-26 [TASK] Cleanup (Commit db48893)
2014-03-26 [TASK] Remove Tx_News_Utility_Compatibility (Commit 8cb73ba)
2014-03-07 [TASK] Move TCA to new format (Commit df04ae1)
2014-03-25 [BUGFIX] Typecast returnStatus to integer (Commit 0493340)
2014-03-24 [BUGFIX] Fix sql query creation for 6.2 (Commit 5689b68)
2014-03-24 [BUGFIX] Apply class attribute of ViewHelper correctly (Commit 5e22ec5)
2014-03-24 [BUGFIX] Use correct date in rss (Commit 0056768)
2014-03-21 [BUGFIX] Wrong fieldname in sys_file_reference (Commit 2250687)
2014-03-20 [TASK] Add fe group to importService (Commit bb4bd66)
2014-03-19 [Test] Followup (Commit 6395c98)
2014-03-19 [BUGFIX] Make excludeALreadyDisplayedNews work in multilanguage sites (Commit d1282c5)
2014-03-17 [TASK] Fix test base class v2 (Commit debd3be)
2014-01-29 [BUGFIX] Add initialOffset to calculation (Commit 0b5a6c1)
2014-03-17 [TASK] Fix test base class (Commit 3fcf88f)
2014-03-17 [FEATURE] Pagination for BE module (Commit c80aa21)
2014-03-11 [BUGFIX] Add cache tags only for news record in detail action (Commit 8d73bf7)
2014-03-11 [BUGFIX] Broken Import module because of CSRF protection (Commit 6e73f7c)
2014-03-11 [TASK] Adopt CF classes to namespaces (Commit 7ab1432)
2014-03-11 [TASK] Use namespaced classes in ext_local/tables.php (Commit c2aa6e8)
2014-03-07 [DOC] Remove old sxw doc (Commit 3332709)
2014-03-07 [FEATURE] Create tags in admin module (Commit 91b5a13)
2014-03-07 [TASK] Improve styling of BE module (Commit 4118e10)
2014-03-07 [BUGFIX] Change order of TS configuration (Commit 05ce750)
2014-03-07 [FEATURE] Add nonFalMediaPreviews (Commit 74dc090)
2014-03-07 [BUGFIX] Change tca for media table (Commit 88f5ffe)
2014-03-07 [TASK] Improve CmsLayout (Commit 41b758a)
2014-03-07 [FEATURE] Add tag filter option in flexforms (Commit 0ac59c8)
2014-03-07 [BUGFIX] Remove JS table_sort in BE (Commit be78d32)
2014-03-07 [DOC] Category rootline in FE (Commit d37ae27)
2014-03-04 [FEATURE] Add author to demand object (Commit 9082ef0)
2014-03-05 [BUGFIX] Fix wrong date in RSS feed (Commit 9a9267f)
2014-03-05 [TASK] Improve CGL nitpicks (Commit df16071)
2014-03-04 [TASK] Improve CGL (Commit cd71942)
2014-03-04 [TASK] Change scrutinizer img src (Commit 122c5b8)
2014-03-04 [TASK] Add scrutinizer config (Commit b29efa0)
2014-02-28 [TASK] Replace orderByRespectTopNews with topNewsFirst in TypoScript setup (Commit 3247eed)
2014-03-04 [TASK] Improve code quality (Commit 16d62e6)
2014-03-04 [TESTS] Add more tests (Commit a1b60dd)
2014-03-04 [TASK] Improve code quality (Commit d2d9944)
2014-02-28 [DOC] Update documentation because cObject RECORDS don't provides "if" directly (Commit 5c460b2)
2014-02-28 [DOC] Add additional configuration to RealURL advanced example to avoid action and controller in URL of detail view (Commit 01bfb39)
2014-02-28 [BUGFIX] Move persistence configuration form tx_news to tx_extbase (Commit 3406ea0)
2014-02-18 [TASK] Add scrutinizer image (Commit afa3900)
2014-02-12 [BUGFIX] Datemenu should use getDateField() (Commit f74f142)
2014-02-11 [TASK] CHange field for fal (Commit dbf88d2)
2014-02-11 [BUGFIX] Check for result in date menu to avoid PHP errors (Commit 9a5a37a)
2014-02-07 Revert "[TASK] Translation Hebrew" (Commit ca9900f)
2014-02-07 [TASK] Translation Hebrew (Commit f80b6ca)
2014-02-05 [TASK] Increase size of title + teaser field (Commit f36428d)
2014-02-03 [!!!][TASK] Improve metatag VH (Commit 1d14c5d)
2014-02-03 [BUGFIX] Catch Exception with files and umlauts in file (Commit 2bf1415)
2014-02-03 [TASK] Change CSS class typo3-dblist to t3-table (Commit 4e33cbf)
2014-02-03 [TASK] Raise requirement to 6.2 (Commit b399c8b)
2014-01-30 [TASK] Adopt og:description tag (Commit 8bfebcc)
2014-01-29 [TASK] Allow fullscreen in renderer videoSites (Commit 7bdf187)
2014-01-29 [FEATURE] Display order in Tag->list in Page module (Commit df0ce38)
2014-01-29 [BUGFIX] Fix wrong order field for Tag->list (Commit 0f0d9e2)
2014-01-29 [BUGFIX] Fix not found classes in 6.x during install (Commit ca6f681)
2014-01-28 [TASK] Change repo urls (Commit c4b3bf4)
2014-01-24 [TASK] Raise limit for relatedFiles, relatedLinks (Commit 376c691)
2014-01-24 [TASK] Add some basic tests for the FAL stuff (Commit bfc3486)
2014-01-20 [TASK] Adopt Administration template for 6.x (Commit 47f8b02)
2014-01-17 [BUGFIX] Change code to fix failing test (Commit b60b1ca)
2013-11-20 [FEATURE] Add FAL support (Commit a82f5ca)
2014-01-13 [FEATURE] VH to check if current item is active (Commit 32ba01e)
2014-01-13 [DOC] Document modulo feature (Commit e319e70)
2014-01-13 [FEATURE] Support of 'Insert Record' element (Commit 67443e7)
2014-01-10 [BUGFIX] PHP Warning: Invalid argument supplied for foreach() (Commit c71369d)
2014-01-10 [BUGFIX] Importer creates new translated records on every run (Commit f259a71)
2014-01-09 [TASK] Add iterator by default in List.html (Commit b023e31)
2014-01-07 [DOC] Improve width/height section (Commit ae96fb9)
2013-12-28 [DOC] Improved back link snippet (Commit d6f7a15)
2013-12-25 [TASK] Use correct property disqusLocale (Commit 81153b7)
2013-12-25 [TASK] Remove frameborder attribute if HTML5 (Commit 97ff647)
2013-12-25 [TASK] Improve CVL (Commit 84f3170)
2013-12-13 [TASK] Raise requirements (Commit 1ac0088)
2013-12-13 [BUGFIX] Workaround for travis git troubles (Commit bb9745e)

Copied!

This list has been created by using:

git log --since="2013/12/12" --abbrev-commit --pretty='%ad %s (Commit %h)' --date=short
Copied!

2.3.0 - 2013/12/12

This is the last release which will support TYPO3 branches 4.x.

Important bugfixes / tasks

* The pagination has been reworked and synced with the one of the Core. If you changed the templates, please adopt your template.

Copied!

All Changes

* 2013-12-12 [TASK] Change start/endtime to datetime (Commit a6ddca9)
* 2013-12-03 [TASK] Use https for social API calls (Commit 1ac5ecd)
* 2013-12-03 [TASK] Add notification email to travis (Commit 02b4949)
* 2013-12-02 [BUGFIX] v3 (Commit 3eff0be)
* 2013-12-02 [BUGFIX] Final fix (Commit b74d2bc)
* 2013-11-30 [FEATURE] Improved recursive setting inheritance (Commit 1e71da1)
* 2013-12-02 [BUGFIX] Fix failing unittest (Commit 9f1d93b)
* 2013-12-02 [BUGFIX] Use t3lib_div to be compatible (Commit ebbd76a)
* 2013-12-01 [TASK] Improve handleNoNewsFoundError (Commit 309e81f)
* 2013-11-30 [TASK] Improve Unittests (Commit eea69b6)
* 2013-11-30 [TASK] UnitTest for NewsBaseController (Commit 3ab4366)
* 2013-11-29 [DOC] Change Tracis url (Commit 674aeed)
* 2013-11-28 [BUGFIX] Fix tests for 6.2 (Commit 10edf80)
* 2013-11-27 [!!!][BUGFIX] Improve pagination (Commit b8405b3)
* 2013-11-21 [DOC] Add example for groupedfor VH (Commit 3a88cf5)
* 2013-11-14 [FEATURE] Optional RTE for teaser field (Commit 4a7c1cf)
* 2013-11-14 [FEATURE] Add field description (Commit d8001fe)
* 2013-11-03 [FEATURE] Implement some basic cache tagging (Commit e6bac94)
* 2013-11-01 [BUGFIX] Fix styling issues (Commit 0ecbc41)
* 2013-11-01 [TASK][CGL] Remove all closing tags (Commit 588ca47)
* 2013-10-20 [TASK] Cleanup Administration module (Commit deb0d5b)
* 2013-10-21 [TASK] Change labelfunc for media for 6.2 (Commit 32f0bc1)
* 2013-10-28 [TASK] Improve ClassCacheBuilder! (Commit 4e141a9)
* 2013-10-28 [TASK] Increase treelevel in flexforms (Commit a984a8d)
* 2013-10-23 [FEATURE] Get the emconfiguration to the FE (Commit 9fc11aa)
* 2013-10-21 [TASK] Avoid empty tags with <f:format.html> (Commit fa10918)
* 2013-10-20 [BUGFIX] Fix some warnings (Commit 7c6fdee)
* 2013-10-20 [FEATURE] Redirect user in Administrationmodule if no page is set (Commit ebaa2e1)
* 2013-10-01 [FEATURE] Add realurl auto config (Commit 9c39b64)
* 2013-10-09 [TASK] Cleanup TCA (Commit 3a79c1b)
* 2013-10-02 [BUGFIX] Remove exclude from flexforms (Commit 1da7712)
* 2013-10-01 [BUGFIX] Fix error in flexform hook (Commit ddbcfc4)
* 2013-09-30 [FEATURE] Add getters for different media elements (Commit a09f647)
* 2013-09-25 [TASK] Add 'sorting' to allowed order fields (Commit 1513881)
* 2013-09-25 [TASK] Make og:site_name configurable via TS (Commit 7fe2c9e)
Copied!

This list has been created by using:

git log --since="2013/09/23" --abbrev-commit --pretty='%ad %s (Commit %h)' --date=short
Copied!

2.2.1 - 2013/09/23

This is the first stable release!

Features

* SearchFormAction can handle $overwriteDemand which enables you to have improved search capabilities
* Support for linkvalidator
* iCalendar as view

Copied!

Important bugfixes / tasks

* Fix useStdwrap in 4.5
* Fix for loading a class under 4.5
Copied!

2.2.0 - 2013/07/06

This version has been released during the TYPO3 Developer Days 2013 in Hamburg.

Breaking/Important changes

* Even though 4.5 is still supported, PHP 5.3 is now required to be able to cover the full version range from 4.5 to 6,2
* Changes in database structure, an update in Extension Manager / Compare in Install Tool is needed
   - Default value '0' for type field of news record
   - Add fields for enabling basic workspace support
* EXT:news is using travis to check all UnitTests in all major TYPO3 releases. You can get the status at https://travis-ci.org/TYPO3-extensions/news
Copied!

Features

* Path to dummy images is configurable
* ViewHelper for Gravatar, thx Philipp Bergsmann
* Description field for media elements
* Description & keywords meta tag
* Support maxHeight for media elements in default templates
* Error handling in detail view if no news found. The setting settings.detail.errorHandling can either be
   - pageNotFoundHandler: use pageNotFoundHandler of the Core
   - redirectToListView: redirect to list view
   - redirectToPage: redirect to any page, including a custom header
* Atom feed support
* Full text RSS feed
* ViewHelper to set target of links: Tx_News_ViewHelpers_TargetLinkViewHelper
* More options    for FileDownloadViewHelper: class, target, alt, title
* Import from t3blog, thx Ingo Renner
* Dateformat is now translateable by using <f:translate key="dateFormat" />



Copied!

Important bugfixes / tasks

* Default more link in List.html
* Support of new property mapper
* Category tree in FE supports translations
* Move the domain model of tt_content to Tx_News_Domain_Model_TtContent
* Configuration in Extension Manager uses tabs to group the settings

Copied!

Miscellaneous

* Improved documentation, especially examples for ViewHelpers
* More UnitTests
* Improved translations
Copied!

2.1.0 - 2013/03/28

* 2013-03-25 [DOC] Improve old manual (Commit: 88b4d7a)
* 2013-03-22 [TASK] Improve compatibility check (Commit: fa65af6)
* 2013-03-22 [TASK] Cleanup of docs (Commit: 6a69084)
* 2013-03-22 [TASK] Remove not needed todo (Commit: 0a20647)
* 2013-03-22 [FEATURE] Add hook to remove fields in new actions (Commit: 0c83946)
* 2013-03-20 [TASK] Add ordering to tags (Commit: 161f8c7)
* 2013-03-20 [DOC] Mention tag list (Commit: 16f2eed)
* 2013-03-20 [DOC] Update realurl doc (Commit: 5fec71b)
* 2013-03-20 [FEATURE] Render listPid in page module (Commit: 26793a1)
* 2013-03-20 [FEATURE] Simple Tag view (Commit: f2270ec)
* 2013-03-18 [BUGFIX] Allow EXT: path in paginate templatePath (Commit: bf10daf)
* 2013-03-18 [DOC] Add templatePath of paginate widget to docs (Commit: bd76c14)
* 2013-03-12 [TASK] Some CGL (Commit: b9b6871)
* 2013-03-11 [TASK] Add cache tags to the TYPO3 page cache (Commit: db50e87)
* 2013-03-11 [TASK] Reenable listpid field in list views (Commit: 7f45a98)
* 2013-03-08 [BUGFIX] Subcategories query (Commit: ff819f5)
* 2013-03-08 [TASK] Make sorting direction in datemenu possible (Commit: 9ef205a)
* 2013-03-05 [BUGFIX] Import related links (Commit: 48b9750)
* 2013-02-28 [TASK] Removing unnecessary userfunction for label (Commit: 1b3bfd7)
* 2013-02-27 [BUGFIX] Avoid PHP warning in Datemenu (Commit: 04a2dfb)
* 2013-02-27 [TASK] Avoid empty tags with <f:format.html> (Commit: 389efe9)
* 2013-02-27 [BUGFIX] Fix useStdWrap setting (Commit: fb742d7)
* 2013-02-25 [BUGFIX] Importer should also set pid (Commit: 3e665cb)
* 2013-02-25 [TASK] Fix wrong label in DE (Commit: 4ba16e6)
* 2013-02-25 [TASK] PL translations (Commit: 8bfd98c)
* 2013-02-21 [TASK] Change TS TRUE to 1 (Commit: 558014b)
* 2013-02-21 [TASK] Improve ClassCacheBuilder + Tests (Commit: 8cfa22d)
* 2013-02-21 [TASK] Make related_from a readonly (Commit: 1961c37)
* 2013-02-21 [BUGFIX] Add author & authorEmail to importer (Commit: 805e556)
* 2013-02-20 [TASK] Add description how to manipulate Pagination (Commit: 2354a55)
* 2013-02-20 [TASK] Improve Pagination + Unittests (Commit: 91a9785)
* 2013-02-20 [BUGFIX] Added missed table for related_from in TCA (Commit: 6f28abb)
* 2013-02-20 [TASK] Change fields from mergeIfNotBlank to noCopy (Commit: d912707)
* 2013-02-20 [TASK] Use allRelatedSorted in template (Commit: e4ed8e7)
* 2013-02-19 [!!!][FEATURE] Make related news from opposite way (Commit: 9e37da2)
* 2013-02-19 [BUGFIX] Improve handling of DAM and translations (Commit: 94d19e1)
* 2013-02-19 [BUGFIX] Make related_files sortable (Commit: f704971)
* 2013-02-19 [TASK] Add more unit tests (Commit: e73e244)
* 2013-02-19 [BUGFIX] Fix disqus ViewHelper Unit Test (Commit: 6df503a)
* 2013-02-19 [BUGFIX] Remove hsc() from tag suggest (Commit: 4cd789a)
* 2013-02-19 [DOC] move realurl snippet (Commit: 0405227)
* 2013-02-19 [DOC] list+detail on same page (Commit: e194ed9)
* 2013-02-19 [DOC] fix rst bug (Commit: c14fcae)
* 2013-02-19 [DOC] add pagination template (Commit: 31280c0)
* 2013-02-19 [DOC] Extend sorting (Commit: 71df14b)
* 2013-02-19 [DOC] move donation part (Commit: 9298164)
* 2013-02-19 [DOC] Add extending news (Commit: 5fbbcbc)
* 2013-02-18 [TASK] Rename interfaces to mediarenderer (Commit: 237a4be)
* 2013-02-17 [DOC] Improve templating information (Commit: c48edf2)
* 2013-02-17 [DOC] Improve templating information (Commit: 2800379)
* 2013-02-17 [DOC] Improve templating information (Commit: 8d38c61)
* 2013-02-17 [DOC] Improve templating information (Commit: 491928e)
* 2013-02-17 [DOC] Improve templating information (Commit: cd24d42)
* 2013-02-17 [DOC] Improve templating information (Commit: d83f9ac)
* 2013-02-17 [DOC] News by TS (Commit: 9b66980)
* 2013-02-17 [TASK] Fix Tests (Commit: 29037ad)
* 2013-02-17 [TASK] Adopt classes of tests (Commit: 118ec79)
* 2013-02-17 [FEATURE] Support for youtube videos (Commit: 0440881)
* 2013-02-17 [TASK] Improve handling of subcategories (Commit: 91102ca)
* 2013-02-15 [TASK] Fix CGL issues (Commit: 2d5f95e)
* 2013-02-15 [TASK] Cleanup html (Commit: b5d886d)
* 2013-02-15 [TASK] Fix CGL issues (Commit: 022783e)
* 2013-02-13 [BUGFIX] Regenerate proxy classes after cache-clearing (Commit: e9ddf4d)
* 2013-02-13 [BUGFIX] Fix of proxy-class generation (Commit: ae77c96)
* 2013-02-11 [BUGFIX] logicalOr param must not be an empty array (Commit: 8e1c700)
* 2013-02-11 [BUGFIX] Better check if current tag has been found (Commit: 75d527f)
* 2013-02-08 [TASK] Remove uml (Commit: d202c87)
* 2013-02-08 [TASK] Make image/multimedia field required (Commit: f7411ce)
* 2013-02-05 [TASK] Unittest for ExcludeDisplayedNewsVH (Commit: 1d7f42e)
* 2013-02-04 [TASK] UnitTest for Labels Hook (Commit: be8cbaa)
* 2013-02-04 [FEATURE] Checkbox to disable RTE (Commit: 8563590)
* 2013-02-04 [BUGFIX] Require Media model for static calls (Commit: d7e1859)
* 2013-02-04 [TASK] Add a NewsDefaultRepository (Commit: 3610676)
* 2013-02-03 [FEATURE] Display thumbnail in relation (Commit: 74c57e8)
* 2013-01-30 [DOC] Add some more text to ViewHelpers (Commit: c57e948)
* 2013-01-30 [TASK] Crop teaser text too (Commit: ddfce78)
* 2013-01-30 [TASK] Update dependency (Commit: fc24a6f)
* 2013-01-29 [DOC] Table for properties (Commit: e21527a)
* 2013-01-29 [TASK] Make external/internal urls required (Commit: 9090f1c)
* 2013-01-29 [TASK] Output tags in views (Commit: c74d899)
* 2013-01-29 [BUGFIX] Wrong VH reference in deprecation log (Commit: 3532654)
* 2013-01-28 [DOC] add VH props (Commit: 82ea560)
* 2013-01-28 [DOC] 1st start of automated VH documentation (Commit: a461c2c)
* 2013-01-28 [BUGFIX] Check if getRelated return an object (Commit: 67f3c78)
* 2013-01-25 [DOC] ViewHelper doc start (Commit: e63b72a)
* 2013-01-25 [DOC] Fix some typos (Commit: 60b9542)
* 2013-01-25 [DOC] Rename main directory in docs (Commit: 41a8a8d)
Copied!

Known problems

The following issues are known problems. However those are either not fixable inside EXT:news or not too easy to solve!

Category images on root page

Due to restrictions of the File Abstraction Layer (FAL), it is not possible to add images to categories which are saved on the root page (uid 0). Documented at http://forge.typo3.org/issues/57515

Multilanguage

The strategy of Extbase is currently quite simple. First records are fetched and afterwards an overlay is added to get the correct translated data. Problems can be:

DBAL

Extbase does not fully support DBAL, therefore it might be that things fail!

Versioning & Workspaces

It is not possible to create a version in the frontend by Extbase. As long as the versioning happens in the backend, everything should be fine.

EXT:numbered_pagination

This extension includes a pagination API which ships features needed by most of the sites.

Example: Imagine 1000 records and 20 items per page which would lead to 50 links. Using the this extension, you will get something like < 1 2 ... 21 22 23 24 ... 100 >.

Usage

  • Use composer req georgringer/numbered-pagination
  • download it within the Extension Manager
  • or download it from https://extensions.typo3.org/extension/numbered_pagination

EXT:news_administration

A separate backend module to maintain articles within the backend. Prior to EXT:news v10, this feature was part of EXT:news itself.

Pricing

  • € 150.00 (ex. VAT) for 1 site
  • € 450.00 (ex. VAT) for unlimited sites related to the agency itself or its customers

Included: Bugfix & feature releases

Contact: Please write an email to extension@ringer.it with the version you need and your invoice address + VAT ID. Additionally please add your GitHub username to get access to the repository to be able to download latest updates.

Features

Record rendering

The rendering of the articles can be configured with various options

  • Disable the page tree for the whole module and define a default page. This is the fasted way for editors to work with news records.
  • Define the fields which are shown

Display those pages which contain news records, tags and categories.

Powerful filters

Working with lots of records is getting easy when using filter to find the records fast.

  • Full textsearch
  • Filter by time range of, categories and all other most used attributes

Various filters makes it easy to find a certain article very fast

Page listing

Sometimes got a hard time to find the page on which news, categories or tags are saved? This module will help you find those fast and easy.

Display of records

EXT:news_seo

This extension improves the SEO features of EXT:news by providing the following fields:

  • Index this article: index vs. noindex
  • Follow this article: follow vs. nofollow
  • Image Preview Size: Options standard, large, none

Even if no individual robot instructions are necessary, this extension solves the problem to set the detail page to noindex to avoid being listed in the sitemap but now having a index instruction when rendering an article record.

Details can be found at https://github.com/georgringer/news_seo

Demo of backend

Usage

  • Use composer req georgringer/news-seo
  • download it within the Extension Manager
  • or download it from https://extensions.typo3.org/extension/news_seo

EXT:news_tagsuggest

This extension enriches the selection of tags in a news record. Non existing tags can be created on the fly within the news record.

This feature has been part of EXT:news prior to version 10 and has been extracted into a separate extension.

Details can be found at https://github.com/georgringer/news_tagsuggest

Demo of backend

Usage

  • Use composer req georgringer/news-tagsuggest
  • download it within the Extension Manager
  • or download it from https://extensions.typo3.org/extension/news_tagsuggest

EXT:news_content_elements

Extending a news record by additional content elements makes it possible to enrich an article by any content elements. The only drawback is that the management of those is kind of limited because of using the so called IRRE - inline record rendering type.

This extension gives editors the possibility to use the power of page module for editing the content elements of a specific record.

News record with 3 content elements and a new button below to load the page module with just those elements.

Reduced page module with the elements of the news record

Requirements:

  • EXT:news 9/10/11
  • TYPO3 11.5, 12.4

Pricing

  • € 100.00 (ex. VAT) for 1 site
  • € 300.00 (ex. VAT) for unlimited sites related to the agency itself or its customers

Included: Bugfix & feature releases

Contact: Please write an email to extension@ringer.it with the version you need and your invoice address + VAT ID. Additionally please add your GitHub username to get access to the repository to be able to download latest updates.

Usage

Install the extension and you are done!

EXT:news_importicsxml

This extensions provides an import interface for xml and ics files which can either be located on the same server or reached via URL. The import is done by the scheduler.

Events of EXT:news can be used to enrich the imported articles of an RSS feed by e.g. handling additional data which is not available in the feed but not part of the official RSS specification.

Details can be found at https://github.com/georgringer/news_importicsxml

Usage

  • Use composer req georgringer/news-importicsxml
  • download it within the Extension Manager
  • or download it from https://extensions.typo3.org/extension/news_importicsxml

EXT:news_category_pid_constraint

This extension avoids duplicate content usage if the setting Single-view page for news from this category of a news category is used.

Furthermore this extension can be used as example to implement an event listener (TYPO3 11) or Signal Slots (TYPO3 10).

Details can be found at https://github.com/georgringer/news_category_pid_constraint

Usage

  • Use composer req georgringer/news-category-pid-constraint

EXT:news_redirect_slug_change

The system extension redirects creates redirects automatically if the slug of a page is changed. This feature is now available for EXT:news records as well by using the extension news_redirect_slug_change.

Get all available information at https://github.com/georgringer/news_redirect_slug_change!

Pricing

This extension is free for use!

Usage

Configuration

By using the site configuration (and optionally the page TsConfig) the auto creation of redirects can be configured

settings:
   redirectsNews:
     # Detail page id which can be overruled py pageTsConfig tx_news.redirect.pageId = 456
     pageId: 123
     # Automatically create redirects for news with a new slug (works only in LIVE workspace)
     # (default: true)
     autoCreateRedirects: true
     # Time To Live in days for redirect records to be created - `0` disables TTL, no expiration
     # (default: 0)
     redirectTTL: 30
     # HTTP status code for the redirect, see
     # https://developer.mozilla.org/en-US/docs/Web/HTTP/Redirections#Temporary_redirections
     # (default: 307)
     httpStatusCode: 307
Copied!

EXT:news_fegroup_preview

This extensions makes it possible to render news records with a fe_group restriction even though no user is logged in.

By using a custom ViewHelper it is possible to check in the view if the news record should be shown fully or e.g. just a teaser and a link to the login form.

Pricing

  • € 100.00 (ex. VAT) for 1 site

Included: Bugfix & feature releases, composer support

Contact: Please write an email to extension@ringer.it with the version you need and your invoice address + VAT ID. Additionally please add your GitHub username to get access to the repository to be able to download latest updates.

Usage

Configuration

Open a news list plugin in the backend and select those frontend groups which should be ignored in the rendering. This means that news records with those groups assigned will be still rendered!

Configuration

Templating

<preview:security.defaultVisible groups="{newsItem.feGroup}">
    <f:then>
        <n:link newsItem="{newsItem}" settings="{settings}" title="{newsItem.title}">
            {newsItem.title}
        </n:link>
    </f:then>
    <f:else>
        <!--
            This news record is only available because of defined preview,
            show a preview or similar -->
        {newsItem.title}
        <f:link.page pageUid="123" additionalParams="{redirect_url:'{n:link(newsItem:newsItem,settings:settings,uriOnly:1)}'}">
            Login to read all
        </f:link.page>
    </f:else>
</preview:security.defaultVisible>
Copied!

EXT:news_filter

This extensions enriches the list view by additional filter for categories.

Details can be found at https://github.com/georgringer/news_filter

Sitemap

Index