page { cssInline { 10 = TEXT 10 { value = {$vendee_base.quiz.image} wrap = .tx-fp-masterquiz form {background-image: url('|');} } } includeCSS { montserrat = EXT:vendee_base/Resources/Public/Scss/montserrat.scss owlCarousel = EXT:vendee_base/Resources/Public/Libs/owl.carousel.min.css owlCarouselTheme = EXT:vendee_base/Resources/Public/Libs/owl.theme.default.min.css main = EXT:vendee_base/Resources/Public/Scss/main.scss accessibility = EXT:vendee_base/Resources/Public/Css/accessibility.css theme = EXT:vendee_base/Resources/Public/Scss/bootstrap5/theme.scss } includeJSFooter { owlCarousel = EXT:vendee_base/Resources/Public/Libs/owl.carousel.min.js readingTime = EXT:vendee_base/Resources/Public/Libs/readingtime.js main = EXT:vendee_base/Resources/Public/Js/main.js accessibilty = EXT:vendee_base/Resources/Public/Js/accessibility.js jszip = EXT:vendee_base/Resources/Public/Libs/jszip.min.js filesaver = EXT:vendee_base/Resources/Public/Libs/FileSaver.min.js } includeJSFooterlibs { bootstrap_smoothscroll > solr-jquery > photoswipe_core = EXT:vendee_base/Resources/Public/Contrib/photoswipe/photoswipe.min.js photoswipe_ui = EXT:vendee_base/Resources/Public/Contrib/photoswipe/photoswipe-ui-default.min.js bootstrap_lightbox = EXT:vendee_base/Resources/Public/Contrib/bootstrap.lightbox.min.js } includeJS { readspeaker = https://cdn-eu.readspeaker.com/script/5966/webReader/webReader.js?pids=wr readspeaker { excludeFromConcatenation = 1 disableCompression = 1 } } 10.variables { placeholderSearch = TEXT placeholderSearch { value = {$vendee_base.placeholderSearch} } menuTitle = TEXT menuTitle { value = {$vendee_base.menuTitle} } fieldsofaction = TEXT fieldsofaction { value = {$vendee_base.level1.fieldsofaction} } usefullInfo = TEXT usefullInfo { value = {$vendee_base.level1.usefullInfo} } newsHeader = TEXT newsHeader { value = {$vendee_base.news.header} } newsList = TEXT newsList { value = {$vendee_base.news.listPid} } newsDetail = TEXT newsDetail { value = {$vendee_base.news.detail} } newsCat = TEXT newsCat { value = {$vendee_base.news.catThem} } searchPage = TEXT searchPage { value = {$vendee_base.searchResultID} } disableNewsletter = TEXT disableNewsletter { value = {$vendee_base.disableNewsletter} } isConnected = TEXT isConnected { data = TSFE:fe_user|user|uid } } } page.headerData.24 = TEXT page.headerData.24.insertData = 1 page.headerData.24.value = {$vendee_base.matomo.tag} lib.searchbox < plugin.tx_solr_PiSearch_Search lib.searchbox { search.targetPage = {$vendee_base.searchResultID} view.templateFiles.form = HeaderForm settings.placeholderSearch = {$vendee_base.placeholderSearch} settings.suggest = 1 settings.suggest { numberOfSuggestions = 10 suggestField = spell } } //Config news par défaut plugin.tx_news.settings { detailPid = {$vendee_base.news.detail} startingpoint = {$vendee_base.news.folder} orderBy = crdate orderDirection = asc listPid = {$vendee_base.news.listPid} list.paginate.insertAbove = 0 detail.media.image.maxWidth = 900 } //Config Solr plugin.tx_solr.search.initializeWithEmptyQuery = 1 plugin.tx_solr.search.showResultsOfInitialEmptyQuery = 1 plugin.tx_solr.search.query.allowEmptyQuery = 1 plugin.tx_solr.index.queue { news = 1 news { table = tx_news_domain_model_news //additionalWhereClause = pid <> {$vendee_base.espacePresse.dossiersPid} And pid <> {$vendee_base.espacePresse.documentsPid} //additionalWhereClause = pid = {$vendee_base.news.folder} // Bug https://github.com/TYPO3-Solr/ext-solr/issues/4022 les constantes ne sont pas correctement résolues additionalWhereClause = pid IN (73,79) fields { struct_stringS = TEXT struct_stringS.value = news news_stringS = TEXT news_stringS.value = Actualité title = title description = TEXT description { field = description // teaser } sorting_intS = TEXT sorting_intS { field = sorting } promo_stringS = TEXT promo_stringS { field = promo } content { cObject { 20 = SOLR_RELATION 20 { localField = content_elements foreignLabelField = bodytext singleValueGlue = | | } } } newsdate_stringS = TEXT newsdate_stringS { field = datetime } typeActus_stringS = TEXT typeActus_stringS { field = type } thematic_stringM = SOLR_RELATION thematic_stringM { localField = categories foreignLabelField = title enableRecursiveValueResolution = 1 multiValue = 0 } municipality_stringS = SOLR_RELATION municipality_stringS { localField = municipality foreignLabelField = title enableRecursiveValueResolution = 1 multiValue = 0 } # Récupère le sys_file_reference de la 1ère image qui n'est pas configurée "uniquement en vue détaillée" imageRef_stringS = TEXT imageRef_stringS.preUserFunc = Wseils\Vendeebase\UserFuncs\SolrRelations->getNewsImage imageRef_stringS.field = uid image_stringS = TEXT image_stringS { value = ./fileadmin/templates/site/png/no-image.png override.cObject = FILES override.cObject { references < plugin.tx_solr.index.queue.news.fields.imageRef_stringS begin = 0 maxItems = 1 renderObj = IMG_RESOURCE renderObj { file { import.dataWrap = {file:current:storage}:{file:current:identifier} width = 400 } stdWrap.split { token = ##!!## cObjNum { # render first entry 1 = TEXT 1.current = 1 # ignore all further entries } returnKey = 0 } } } } url < plugin.tx_solr.index.queue.news.fields.url url { default.typolink { parameter = {$vendee_base.news.detail} } } } } dossiers = 1 dossiers { table = tx_news_domain_model_news //additionalWhereClause = pid = {$vendee_base.espacePresse.dossiersPid} // Bug https://github.com/TYPO3-Solr/ext-solr/issues/4022 les constantes ne sont pas correctement résolues additionalWhereClause = pid = 952 fields { struct_stringS = TEXT struct_stringS.value = dossiers title = title description = TEXT description { field = bodytext } sorting_intS = TEXT sorting_intS { field = sorting } promo_stringS = TEXT promo_stringS { field = promo } thematicEspacePresse_stringM = SOLR_RELATION thematicEspacePresse_stringM { localField = categories foreignLabelField = title enableRecursiveValueResolution = 1 multiValue = 1 additionalWhereClause = parent = {$vendee_base.espacePresse.thematic} } typeEspacePresse_stringM = SOLR_RELATION typeEspacePresse_stringM { localField = categories foreignLabelField = title enableRecursiveValueResolution = 1 multiValue = 1 additionalWhereClause = parent = {$vendee_base.espacePresse.publicationType} } # Récupère le sys_file_reference de la 1ère image qui n'est pas configurée "uniquement en vue détaillée" imageRef_stringS = TEXT imageRef_stringS.preUserFunc = Wseils\Vendeebase\UserFuncs\SolrRelations->getNewsImage imageRef_stringS.field = uid image_stringS = TEXT image_stringS { value = ./fileadmin/templates/site/png/no-image.png override.cObject = FILES override.cObject { references < plugin.tx_solr.index.queue.dossiers.fields.imageRef_stringS begin = 0 maxItems = 1 renderObj = IMG_RESOURCE renderObj { file { import.dataWrap = {file:current:storage}:{file:current:identifier} width = 400 } stdWrap.split { token = ##!!## cObjNum { # render first entry 1 = TEXT 1.current = 1 # ignore all further entries } returnKey = 0 } } } } url < plugin.tx_solr.index.queue.news.fields.url url { default.typolink { parameter = {$vendee_base.espacePresse.dossierDetailId} } } } } documents = 1 documents { table = tx_news_domain_model_news //additionalWhereClause = pid = {$vendee_base.espacePresse.documentsPid} // Bug https://github.com/TYPO3-Solr/ext-solr/issues/4022 les constantes ne sont pas correctement résolues additionalWhereClause = pid = 955 //additionalWhereClause = pid = 343 fields { struct_stringS = TEXT struct_stringS.value = documents title = title description = TEXT description { field = bodytext } sorting_intS = TEXT sorting_intS { field = sorting } datetime_dateS = TEXT datetime_dateS { field = datetime date = Y-m-d\TH:i:s\Z } thematicEspacePresse_stringM = SOLR_RELATION thematicEspacePresse_stringM { localField = categories foreignLabelField = title enableRecursiveValueResolution = 1 multiValue = 1 additionalWhereClause = parent = {$vendee_base.espacePresse.thematic} } typeEspacePresse_stringM = SOLR_RELATION typeEspacePresse_stringM { localField = categories foreignLabelField = title enableRecursiveValueResolution = 1 multiValue = 1 additionalWhereClause = parent = {$vendee_base.espacePresse.publicationType} } # Récupère le sys_file_reference de la 1ère image qui n'est pas configurée "uniquement en vue détaillée" imageRef_stringS = TEXT imageRef_stringS.preUserFunc = Wseils\Vendeebase\UserFuncs\SolrRelations->getNewsImage imageRef_stringS.field = uid image_stringS = TEXT image_stringS { value = ./fileadmin/templates/site/png/no-image.png override.cObject = FILES override.cObject { references < plugin.tx_solr.index.queue.documents.fields.imageRef_stringS begin = 0 maxItems = 1 renderObj = IMG_RESOURCE renderObj { file { import.dataWrap = {file:current:storage}:{file:current:identifier} width = 400 } stdWrap.split { token = ##!!## cObjNum { # render first entry 1 = TEXT 1.current = 1 # ignore all further entries } returnKey = 0 } } } } keywords = TEXT keywords { field = keywords } # Récupère le sys_file_reference du fichier en relation extensionFile_stringS = TEXT extensionFile_stringS.preUserFunc = Wseils\Vendeebase\UserFuncs\SolrRelations->getNewsFileExtension extensionFile_stringS.field = uid url < plugin.tx_solr.index.queue.news.fields.url url { default.typolink { parameter = {$vendee_base.espacePresse.documentDetailId} } } } } } [applicationContext == "Development/Remote"] plugin.tx_solr.index.queue.news.additionalWhereClause = pid IN (73,79) plugin.tx_solr.index.queue.dossiers.additionalWhereClause = pid = 345 plugin.tx_solr.index.queue.documents.additionalWhereClause = pid = 343 [global] [applicationContext == "Production/Recette"] plugin.tx_solr.index.queue.news.additionalWhereClause = pid IN (73,79) plugin.tx_solr.index.queue.dossiers.additionalWhereClause = pid = 611 plugin.tx_solr.index.queue.documents.additionalWhereClause = pid = 608 [global] plugin.tx_solr.view.templateFiles.results.availableTemplates { default { label = Default Searchresults Template file = Results } news { label = News Template file = News } formSimple { label = Formulaire Template file = FormSimple } espacePresseDossiers { label = [Espace Presse] Dossiers thématiques file = EspacePresseDossiers } espacePresseDocuments { label = [Espace Presse] Documents de l'Espace presse file = EspacePresseDocuments } } plugin.tx_solr { search { faceting.facets > results.resultsHighlighting = 1 results.resultsHighlighting { highlightFields = abstract,description,teaser,title,title_stringS } } settings { agendaDetailPageUid = {$plugin.tx_smileagenda.settings.agendaDetailPageUid} } suggest.showTopResults = 0 } [traverse(page, "uid") in [{$vendee_base.searchResultID}]] plugin.tx_solr.search { query { allowedSites = * } faceting = 1 faceting { facetLinkATagParams = rel="nofollow" keepAllFacetsOnSelection = 1 facets > facets { type { label = Afficher les résultats triés par: field = type partialName = listType } } } } [global] [traverse(page, "uid") in [{$vendee_base.news.listPid},{$vendee_base.news.detail}]] plugin.tx_solr.search { suggest = 0 initializeWithEmptyQuery = 1 showResultsOfInitialEmptyQuery = 1 initializeWithQuery = 0 showResultsOfInitialQuery = 0 keepExistingParametersForNewSearches = 0 ignoreGlobalQParameter = 0 query { pagesOnly = type:tx_news_domain_model_news allowEmptyQuery = 1 queryFields = title^40.0, content^40.0, keywords^2.0, tagsH1^5.0, tagsH2H3^3.0, tagsH4H5H6^2.0, tagsInline^1.0, abstract^1.0, subtitle^1.0, navtitle^1.0, author^1.0 } results { siteHighlighting = 1 showDocumentScoreAnalysis = 0 } faceting = 1 faceting { facetLinkATagParams = rel="nofollow" keepAllFacetsOnSelection = 1 facets > facets { category_stringM { operator = OR label = Par thématique field = category_stringM } municipality_stringS { operator = OR label = Par commune field = municipality_stringS selectingSelectedFacetOptionRemovesFilter = 1 keepAllFacetsOnSelection = 1 countAllFacetsForSelection = 1 minimumCount = 0 keepExistingParametersForNewSearches = 1 sortBy = municipality_stringS } } } } [global] //Pour afficher la page dans la balise title [request.getPageArguments() && request.getPageArguments().get('tx_solr') && request.getPageArguments().get('tx_solr')['page'] > 1] config.noPageTitle = 1 page.headerData.5 = COA page.headerData.5 { 20 = TEXT 20.data = GP:tx_solr|page 30 = TEXT 30.data = page : title 30.noTrimWrap = | - || stdWrap.noTrimWrap = | Page | | } page.meta { title > title.cObject = COA title.cObject { 20 = TEXT 20.data = GP:tx_solr|page 30 = TEXT 30.data = page : title 30.noTrimWrap = | - || stdWrap.noTrimWrap = | Page | | } og:title > og:title < .title } [global] //Redirection pour la page atouts [request.getNormalizedParams().getRequestUrl() == "{$vendee_base.pageAtouts}" && device("Mobile")] page.367812 = TEXT page.367812.value ( ) [global] [request.getNormalizedParams().getRequestUrl() == "{$vendee_base.pageAtoutsMobile}" && device("Desktop")] page.367812 = TEXT page.367812.value ( ) [global] [traverse(page, "uid") in [{$vendee_base.espacePresse.dossierListUid}, {$vendee_base.espacePresse.documentListUid}]] plugin.tx_solr.search { faceting = 1 faceting { keepAllFacetsOnSelection = 1 facets > facets { creationDateRange { label = Période field = changed type = dateRange } typeEspacePresse_stringM { operator = OR label = Type de publication field = typeEspacePresse_stringM partialName = Type minimumCount = 0 } thematicEspacePresse_stringM { operator = OR label = Thématique field = thematicEspacePresse_stringM partialName = Thematic minimumCount = 0 } } } } [global]