Configuration
Table of Contents
TypoScript constants
All settings are configured under plugin.tx_dveducationcourses. The following
constants are available:
|
Constant |
Type |
Default |
Description |
|---|---|---|---|
|
|
int |
(empty) |
UID of the SysFolder containing course records. |
|
|
int |
(empty) |
UID of the page containing the Course Detail plugin. |
|
|
int |
(empty) |
UID of the page containing the Course List plugin. |
|
|
int |
(empty) |
UID of the page containing the Event Detail plugin. |
|
|
int |
(empty) |
UID of the page containing the Course Detail plugin (used in event views to link back to the parent course). |
|
|
int |
|
Number of items shown per page in list views. |
Example configuration:
plugin.tx_dveducationcourses {
persistence.storagePid = 42
settings {
detailPid = 10
listPid = 9
eventDetailPid = 12
courseDetailPid = 10
itemsPerPage = 15
}
}
FlexForm settings
The Course List plugin provides a FlexForm with plugin-level overrides for the following settings. These values take precedence over the TypoScript constants when set:
|
Setting |
Description |
Default |
|---|---|---|
|
|
Course detail page -- overrides the TypoScript constant for this specific plugin instance. Page picker (group type). |
(from TypoScript) |
|
|
Course list page -- overrides the TypoScript constant for this specific plugin instance. Page picker (group type). |
(from TypoScript) |
|
|
Number of items per page for pagination in this plugin instance. |
|
To access the FlexForm, edit the Course List content element and switch to the Plugin tab.
Plugins (CType)
The extension registers four content element plugins (CType). All plugins use the
Extbase PLUGIN_TYPE_CONTENT_ELEMENT registration.
|
CType |
Plugin key |
Controller / Action |
Cacheable |
|---|---|---|---|
|
|
CourseList |
|
No (non-cacheable for POST search) |
|
|
CourseDetail |
|
Yes |
|
|
EventList |
|
No (non-cacheable for filtering) |
|
|
EventDetail |
|
Yes |
Caching behaviour
The extension configures cHash exclusions in ext_localconf.php for all plugin
parameters. This ensures that search terms, filter values, and detail record UIDs
do not generate unnecessary cHash values that would pollute the page cache.
The excluded parameters cover all four plugins:
tx_dveducationcourses_courselist[searchTerm]tx_dveducationcourses_courselist[type]tx_dveducationcourses_coursedetail[course]tx_dveducationcourses_eventdetail[event]- All associated
__referrerand__trustedPropertiesparameters
The CourseList and EventList plugins are registered as non-cacheable because they handle POST-based search and filter requests. The CourseDetail and EventDetail plugins are fully cacheable.
Template overrides
The extension uses standard Extbase/Fluid template paths. To override templates in your site package, add higher-priority template paths via TypoScript:
plugin.tx_dveducationcourses {
view {
templateRootPaths.10 = EXT:your_site_package/Resources/Private/Extensions/DvEducationCourses/Templates/
partialRootPaths.10 = EXT:your_site_package/Resources/Private/Extensions/DvEducationCourses/Partials/
layoutRootPaths.10 = EXT:your_site_package/Resources/Private/Extensions/DvEducationCourses/Layouts/
}
}
The default template paths (priority 0) are:
EXT:dv_education_courses/Resources/Private/Templates/EXT:dv_education_courses/Resources/Private/Partials/EXT:dv_education_courses/Resources/Private/Layouts/
Important
When overriding templates, maintain the same directory structure and file names as the original templates. Only copy the files you want to modify.