This extension is based on extbase & fluid and provides the famous extension ext:news
of Georg Ringer (thanks a lot!) with one or more authors. You can centrally manage authors and attach them to news records. The extensions comes with a plugin, which lists all authors and provides a detail page of one author which also shows the news records of the selected author.
- TYPO3 > 7.6
- ext:news > 4.0
- Install the extension by using the extension manager
- Include the static TypoScript of the extension
- Configure the extension by setting your own constants
- Create some author records on a sysfolder (use list modul, push plus-icon [Create new record] and select News Author)
- Create a news record on a sysfolder and find the new tab Author
- Select one or more authors for the news record
- Save and close
Insert paginated list of all authors.
- Create a plugin News Author on a page
- Choose the value List authors in Plugin settings
- Choose for Page with single author view the page with single author view
- Select the sysfolder where the author records are stored
- Additional settings can be found in the tab List view settings
- If needed, show authors of certain categoreies only (tab Categories)
- Save and close
Insert a author detail view. This page includes also all news which are associated with the choosen author.
- Create a plugin News Author on a page
- Choose the value Author details in Plugin settings
- Optionally choose for Page with author list the page with the list of all authors
- Select the sysfolder where the author records are stored
- Additional settings can be found in the tab List view settings
- Save and close
- Access the author properties in a news record with {newsItem.newsAuthor}. Since there could be more than one author attached to a news record, you have to iterate:
<f:for each="{newsItem.newsAuthor}" as="author">
{md:ShowAuthorName(author:'{author}')}
{author.phone}
{author. ...}
</f:for>
- Add a link to the profile page
Don't forget to load the viewhelper {namespace md=Mediadreams\MdNewsAuthor\ViewHelpers}:
<f:for each="{newsItem.newsAuthor}" as="author">
<f:link.action action="show" controller="NewsAuthor" extensionName="mdnewsauthor" pluginName="newsauthor" arguments="{newsAuthor: author}" pageUid="{settings.newsAuthor.authorDetailPid}" title="More about {md:ShowAuthorName(author:'{author}')}">
<md:ShowAuthorName author="{author}" />
</f:link.action>
</f:for>
In order to show only authors of a single page in the "Authors"-tab of a news record, you can use the following TSconfig:
TCEFORM.tx_news_domain_model_news.news_author.PAGE_TSCONFIG_STR = AND tx_mdnewsauthor_domain_model_newsauthor.pid = 1
This will show only the author records, which are stored on page ID = 1
Thanks for this great extension, Dmitry Dulepov!
'postVarSets' => array(
'_DEFAULT' => array(
// EXT:md_news_author
'author' => array(
'0' => array(
'GETvar' => 'tx_mdnewsauthor_newsauthor[action]',
'noMatch' => 'bypass',
),
'1' => array(
'GETvar' => 'tx_mdnewsauthor_newsauthor[controller]',
'noMatch' => 'bypass',
),
'2' => array(
'GETvar' => 'tx_mdnewsauthor_newsauthor[newsAuthor]',
'lookUpTable' => array(
'table' => 'tx_mdnewsauthor_domain_model_newsauthor',
'id_field' => 'uid',
'alias_field' => 'concat(firstname, " ",lastname)',
'addWhereClause' => ' AND NOT deleted',
'useUniqueCache' => 1,
'useUniqueCache_conf' => array(
'strtolower' => 1,
'spaceCharacter' => '-',
),
'languageGetVar' => 'L',
'languageExceptionUids' => '',
'languageField' => 'sys_language_uid',
'transOrigPointerField' => 'l10n_parent',
'autoUpdate' => 1,
'expireDays' => 180,
),
),
),
'authorList' => array(
'0' => array(
'GETvar' => 'tx_mdnewsauthor_newsauthor[action]',
'noMatch' => 'bypass',
),
'1' => array(
'GETvar' => 'tx_mdnewsauthor_newsauthor[controller]',
'noMatch' => 'bypass',
),
),
// sorting
'a-z' => array(
array(
'GETvar' => 'tx_mdnewsauthor_newsauthor[selectedLetter]',
),
),
// EXT:md_news_author end
),
),
If you find a bug, it would be nice if you add an issue on Github.
Thanks a lot to all who make this outstanding TYPO3 project possible!