andersundsehr/relation-processor

Adds DataProcessor to resolve all types of TCA Relations

Installs: 3 177

Dependents: 0

Suggesters: 0

Security: 0

Stars: 4

Watchers: 2

Forks: 2

Open Issues: 1

Type:typo3-cms-extension

1.3.0 2024-07-01 11:05 UTC

This package is auto-updated.

Last update: 2024-12-07 08:36:23 UTC


README

install

composer req andersundsehr/relation-processor

what does it do

It adds a RelationProcessor so you don't have to manually define a DatabaseQueryProcessor for each relation you want to use.
It uses the TCA configuration to determine the correct query to use.
It uses the PageRepository->versionOL() and PageRepository->getLanguageOverlay() functions so it hase correct versioning and language overlay support.

Example

10 = AUS\RelationProcessor\DataProcessing\RelationProcessor
10 {
    # this field is of the current table and will be used to determine the relation
    # eg. if you have EXT:news and this processor is used on a tt_content you can get all related news like this:
    field = tx_news_related_news
}

Advanced Example

page = PAGE
page.10 = FLUIDTEMPLATE
page.10 {
    dataProcessing {
        10 = TYPO3\CMS\Frontend\DataProcessing\FilesProcessor
        10 {
            references.fieldName = header_image
            as = headerImage
        }

        20 = AUS\RelationProcessor\DataProcessing\RelationProcessor
        20 {
            field = tx_customerproduct_companies

            dataProcessing {
                10 = TYPO3\CMS\Frontend\DataProcessing\FilesProcessor
                10 {
                    references.fieldName = header_image
                    as = headerImage
                }

                20 = AUS\RelationProcessor\DataProcessing\RelationProcessor
                20 {
                    field = tx_customercompany_product_family

                    dataProcessing {
                        10 = TYPO3\CMS\Frontend\DataProcessing\FilesProcessor
                        10 {
                            references.fieldName = header_image
                            as = headerImage
                        }
                    }
                }
            }
        }
    }
}

with ♥️ from anders und sehr GmbH

If something did not work 😮
or you appreciate this Extension 🥰 let us know.

We are hiring https://www.andersundsehr.com/karriere/