georgringer / news-filter
Filter news by date, categories and tags
Fund package maintenance!
georgringer
paypal.me/GeorgRinger/10
www.amazon.de/hz/wishlist/ls/8F573K08TSDG
Patreon
Installs: 2 221
Dependents: 0
Suggesters: 0
Security: 0
Stars: 1
Watchers: 1
Forks: 8
Open Issues: 9
Type:typo3-cms-extension
Requires
- georgringer/news: ^6.3|| ^7
- typo3/cms-core: ^8.7 || ^9.5
Replaces
- news_filter: 1.0.0
- typo3-ter/news-filter: 1.0.0
This package is auto-updated.
Last update: 2023-05-23 20:31:57 UTC
README
This extension makes it possible to filter news in the frontend by the following properties:
- date from & to
- categories
- tags
This extension has been sponsored by University Basel
Requirements
- TYPO3 10.4
- news 9.x
Usage
- Install the extension just as any other extension. Either use the Extension Manager or composer and
composer require georgringer/news-filter
. - Select the action "list" in the news plugin and activate the additional checkbox "Enable filter"
- Select page of categories & tags.
TypoScript
The following TypoScript is required
plugin.tx_news.settings.demandClass = GeorgRinger\NewsFilter\Domain\Model\Dto\Demand
Templating
Add the following part to your List.html
:
<f:form action="list" object="{extendedVariables.searchDemand}" name="search" class="form-horizontal">
<fieldset>
<div class="form-group">
<label for="news-subject"><f:translate key="search-subject" /></label>
<f:form.textfield id="news-subject" property="subject" class="form-control"/>
</div>
<div class="form-group">
<f:for each="{extendedVariables.categories}" as="category">
<div class="checkbox">
<label>
<f:form.checkbox property="filteredCategories" value="{category.uid}"/>
{category.title}
</label>
</div>
</f:for>
</div>
<div class="form-group">
<f:for each="{extendedVariables.tags}" as="tag">
<div class="tag">
<label>
<f:form.checkbox property="filteredTags" value="{tag.uid}"/>
{tag.title}
</label>
</div>
</f:for>
</div>
<div class="form-group">
<label for="fromDate" class="col-sm-2 control-label">Date from</label>
<div class="col-sm-10">
<f:form.textfield type="date" class="form-control" id="fromDate" property="fromDate"/>
</div>
</div>
<div class="form-group">
<label for="toDate" class="col-sm-2 control-label">Date to</label>
<div class="col-sm-10">
<f:form.textfield type="date" class="form-control" id="toDate" property="toDate"/>
</div>
</div>
<f:form.submit value="submit" class="btn btn-primary"/>
</fieldset>
</f:form>