tpwd / ke_search

Search Extension for TYPO3 Content Management System, including faceting search functions.
https://extensions.typo3.org/extension/ke_search/
GNU General Public License v3.0
7 stars 31 forks source link

File links in results are TYPO3-like #226

Closed kurtzaugg closed 2 months ago

kurtzaugg commented 3 months ago

A TypoLink field from Mask is shown in results though it is not listed in the tt_contents fields in the page indexer. Even worse is that the link is shown like "t3://file?uid=331 _blank". Is there a problem with the page indexer that it indexes the page but doesn't respect the missing field in the tt_content fields list?

Details: ke_search 5.4.1 with TYPO3 12.4.14

Mask field:

image

Frontend:

image
christianbltr commented 3 months ago

Thanks for reporting.

Could you give some more information about your ke_search indexer configuration? It would be helpful to see what you have configured in the "Advanced" tab of your indexer configuration, mainly

And some information how the Mask content element which has been indexed is configured? How is it named? Which tt_content fields does it use? Does it store its data in a separate table or is everything stored in tt_content? Maybe you can just post the relevant part of your mask.json?

kurtzaugg commented 3 months ago

Thanks for your answer.

Source code: PDF

Configuration: Content element types which should be indexed mask_text,mask_accordion,mask_all_projects,mask_contactperson, ... (that's not the complete list)

Additional tables for content elements

[custom_facts]
table = tx_mask_custom_facts
referenceFieldName = parentid
fields[] = tx_mask_fact_label
fields[] = tx_mask_value

... (and some more)

tt_content fields which should be indexed (complete list) bodytext,subheader,tx_mask_header_title,tx_mask_footer_left,tx_mask_footer_right,tx_mask_lp_text,tx_mask_timeframe,tx_mask_phases,tx_mask_text_teaser,tx_mask_client,tx_mask_phone

Mask content element

Fluid-Code in the Mask template (Text.html) <f:link.typolink parameter="{data.tx_mask_text_link}">PDF</f:link.typolink>

mask.json (only the relevant parts)

    "tables": {
        "tt_content": {
            "elements": {
                "text": {
                    "color": "#007575",
                    "colorOverlay": "#000000",
                    "columns": [
                        "header",
                        "tx_mask_is_project",
                        "tx_mask_5719f6e7d0f83",
                        "tx_mask_text_teaser",
                        "tx_mask_45cf478268e8f",
                        "bodytext",
                        "tx_mask_4116519168425",
                        "tx_mask_4a9a456329d71"
                    ],
                    "columnsOverride": {
                        "bodytext": {
                            "config": {
                                "enableRichtext": 1
                            },
                            "fullKey": "bodytext",
                            "key": "bodytext",
                            "type": "richtext"
                        },
                        "header_layout": {
                            "config": {
                                "fieldWizard": {
                                    "selectIcons": {
                                        "disabled": 1
                                    }
                                },
                                "items": [],
                                "renderType": "selectSingle"
                            },
                            "fullKey": "header_layout",
                            "key": "header_layout",
                            "type": "select"
                        }
                    },
                    "description": "Text mit \u00dcberschrift. Alternativ kann auch noch ein Bild oder ein Video in die Textspalte eingef\u00fcgt werden.",
                    "descriptions": [
                        "",
                        "Mit dem Aktivieren der Checkbox verschwinden mehrere Felder, deren Wert bei den Projekten vorgegeben ist.",
                        "",
                        "",
                        "",
                        "",
                        "",
                        ""
                    ],
                    "icon": "fa-file-text-o",
                    "iconOverlay": "",
                    "key": "text",
                    "label": "Text",
                    "labels": [
                        "Titel",
                        "Beinhaltet die Beschreibung f\u00fcr ein Projekt",
                        "Eigenschaften der \u00dcberschrift",
                        "Teasertext",
                        "Texteigenschaften",
                        "Text",
                        "Bild",
                        "Bild\/Video und Hintergrundbild f\u00fcr Video"
                    ],
                    "shortLabel": "",
                    "sorting": 1
                }
            },
            "sql": {
                "tx_mask_text_link": {
                    "tt_content": {
                        "tx_mask_text_link": "varchar(255) DEFAULT '' NOT NULL"
                    }
                }
            },
            "tca": {
                "tx_mask_text_link": {
                    "config": {
                        "allowedTypes": [
                            "file"
                        ],
                        "appearance": {
                            "allowedFileExtensions": "pdf"
                        },
                        "nullable": 0,
                        "type": "link"
                    },
                    "description": {
                        "text": ""
                    },
                    "fullKey": "tx_mask_text_link",
                    "inPalette": 1,
                    "inlineParent": {
                        "text": "tx_mask_45cf478268e8f"
                    },
                    "key": "text_link",
                    "label": {
                        "text": "Link auf PDF"
                    },
                    "order": {
                        "text": 3
                    },
                    "type": "link"
                }
            }
        }
    }

Btw: "green" in the result list comes from the header-class. Strange, that it is shown...

christianbltr commented 3 months ago

So the wrongly indexed link belongs to the content element mask_text, is in the field tx_mask_text_link which is in the table tt_content, but that field is not in the list of "tt_content fields which should be indexed [content_fields]"?

kurtzaugg commented 3 months ago

Yes, that's right. But it is indexed...!

christianbltr commented 2 months ago

As discussed personally this was not realated to ke_search but to another extension which indexed the mask fields. So I'm closing this.