[Solved] Display nested categories
Forum rules
Always add your TYPO3, Aimeos and PHP version as well as your environment (Linux/Mac/Win)
Spam and unrelated posts will be removed immediately!
Always add your TYPO3, Aimeos and PHP version as well as your environment (Linux/Mac/Win)
Spam and unrelated posts will be removed immediately!
Re: Display nested categories
aimeos 20.7, TYPO3 9.5.20, macOS 10.13.6
Sorry for bringing this up again! I try to add "supplier" to the list of products that are shown on the catalog page, but run into these problems:
First of all, I do get an error, when I use the TypoScript with domains like this (is it still valid in v20.7? Didn't find anything like a deprection notice in the docu...):
Error message: "A non-recoverable error occured"
And second: How do I actually include the supplier text (mis-used as text for course teachers)? Adding a snippet like the following to "template/catalog/lists/items-body-list won't work (copy of the "text/short" snippet):
Also, the partial "products-standard.php" does not emit any "supplier" values either, when I use a dump on $productItem:
I'd be grateful for any hints! Thank you!
Sorry for bringing this up again! I try to add "supplier" to the list of products that are shown on the catalog page, but run into these problems:
First of all, I do get an error, when I use the TypoScript with domains like this (is it still valid in v20.7? Didn't find anything like a deprection notice in the docu...):
Code: Select all
plugin.tx_aimeos.settings {
client.html {
catalog.lists {
domains = {
0 = attribute
1 = media
2 = price
3 = product
4 = text
// 5 = supplier
}
}
}
}
And second: How do I actually include the supplier text (mis-used as text for course teachers)? Adding a snippet like the following to "template/catalog/lists/items-body-list won't work (copy of the "text/short" snippet):
Code: Select all
<?php foreach( $productItem->getRefItems( 'supplier', none, 'default' ) as $item ) : ?>
<div class="supplier-item" itemprop="description">
<?= $enc->html( $item->getContent(), $enc::TRUST ); ?><br/>
</div>
<?php endforeach; ?>
Code: Select all
var_dump($productItem);
die();
Re: Display nested categories
The "domains" configuration is correct but the suppliers aren't referenced via the list table.
Instead, they are available if you call:
The supplier texts are included because "text" is in the list of domains you want to retrieve.
Instead, they are available if you call:
Code: Select all
$product->getSupplierItems()
Professional support and custom implementation are available at Aimeos.com
If you like Aimeos, give us a star
If you like Aimeos, give us a star
Re: Display nested categories
Thank you for your answer! Unfortunately my lights won't turn on and I kindly ask you for more advise:
First, if I define this TypoScript, I still get an error (which disappears, when I remove it; then everything works fine; however, I would like to understand where my mistake / misunderstanding is):
I do not understand, why this error occurs. The documentation did not change, so I assume the update to 20.7 does not require an changes in this setup either? (The changelog to have one entry with "domains" from 2020-02-09 and lead to this change:
https://github.com/aimeos/aimeos-core/c ... f513dbed86
And the second thing is: The texts from the suppliers are still not displayed. In "common/partials/products-standard.php" calls to "productItem->getRefItem" work fine, even on aditional text types I created:
But using what you suggested (and I am pretty sure I use it wrongly) does simply nothing:
(An example screenshot of a supplier text is included.)
Is it, by any chance, necessary to import the "suppliers" first somehow? And then access the text attributes?
Sorry for still being so confused...
First, if I define this TypoScript, I still get an error (which disappears, when I remove it; then everything works fine; however, I would like to understand where my mistake / misunderstanding is):
Code: Select all
plugin.tx_aimeos {
settings {
controller {
frontend {
catalog {
// levels-always = 1
}
}
}
client.html {
basket {
cache {
// Disable cache during development
enable = 0
}
}
catalog {
// attribute.type.sticker = input
lists {
basket-add = 1
metatags = 0
// Having "domains" activated, causes the error "A non-recoverable error occured"
// in or before the call of the common partial "products-standard.php"
domains = {
0 = attribute
1 = media
2 = price
3 = product
4 = text
// 5 = supplier
}
}
detail {
// This domain config does not cause any problems
// (but I am not using a detail view so far):
domains = {
0 = attribute
1 = media
2 = price
3 = product
4 = text
// 5 = supplier
}
https://github.com/aimeos/aimeos-core/c ... f513dbed86
And the second thing is: The texts from the suppliers are still not displayed. In "common/partials/products-standard.php" calls to "productItem->getRefItem" work fine, even on aditional text types I created:
Code: Select all
<?php foreach( $productItem->getRefItems( 'text', 'short', 'default' ) as $textItem ) : ?>
<div class="text-item" itemprop="description">
<?= $enc->html( $textItem->getContent(), $enc::TRUST ); ?>
</div>
<?php endforeach; ?>
<p>Date</p>
<?php foreach( $productItem->getRefItems( 'text', 'course-date', 'default' ) as $textItem ) : ?>
<div class="text-item" itemprop="date">
<?= $enc->html( $textItem->getContent(), $enc::TRUST ); ?>
</div>
<?php endforeach; ?>
<p>Time</p>
<?php foreach( $productItem->getRefItems( 'text', 'course-time', 'default' ) as $textItem ) : ?>
<div class="text-item" itemprop="date">
<?= $enc->html( $textItem->getContent(), $enc::TRUST ); ?>
</div>
<?php endforeach; ?>
[...]
Code: Select all
<p>Teacher</p>
<?php foreach( $productItem->getSupplierItems( 'text', 'portraittext', 'default' ) as $textItem ) : ?>
<div class="text-item" itemprop="description">
<?= $enc->html( $textItem->getContent(), $enc::TRUST ); ?>
</div>
<?php endforeach; ?>
Is it, by any chance, necessary to import the "suppliers" first somehow? And then access the text attributes?
Sorry for still being so confused...
Re: Display nested categories
That doesn't work, you need:rowild wrote: ↑19 Aug 2020, 10:11Code: Select all
<p>Teacher</p> <?php foreach( $productItem->getSupplierItems( 'text', 'portraittext', 'default' ) as $textItem ) : ?> <div class="text-item" itemprop="description"> <?= $enc->html( $textItem->getContent(), $enc::TRUST ); ?> </div> <?php endforeach; ?>
Code: Select all
<p>Teacher</p>
<?php foreach( $productItem->getSupplierItems() as $supplierItem ) : ?>
<?php foreach( $supplierItem->getRefItems( 'text', 'portraittext', 'default' ) as $textItem ) : ?>
<div class="text-item" itemprop="description">
<?= $enc->html( $textItem->getContent(), $enc::TRUST ); ?>
</div>
<?php endforeach; ?>
<?php endforeach; ?>
Professional support and custom implementation are available at Aimeos.com
If you like Aimeos, give us a star
If you like Aimeos, give us a star
Re: Display nested categories
I am sorry, but this does not work. And i have no idea, where the problem could be.
This
does not return any data.
But I do have data (see screenshots).
(I put a
right in front of that `foreach`, which's output can be seen in the "display_fe" screenshot. Probably not much help...)
Also, I still don't know, why defining `domains` in TS causes an error, as mentioned before – would you mind to share your thoughts on that?
Thank you for your efforts!
This
Code: Select all
<?php foreach( $productItem->getSupplierItems() as $supplierItem ) : ?>
does not return any data.
But I do have data (see screenshots).
(I put a
Code: Select all
<?php
echo '<pre>';
var_dump($productItem->getSupplierItems());
echo '</pre>';
?>
Also, I still don't know, why defining `domains` in TS causes an error, as mentioned before – would you mind to share your thoughts on that?
Thank you for your efforts!
Re: Display nested categories
Here is the code of my common/partials/products-standard.php:
Code: Select all
<?php
/**
* @license LGPLv3, http://opensource.org/licenses/LGPL-3.0
* @copyright Aimeos (aimeos.org), 2016-2020
*/
/* Expected data:
* - productItems : List of product variants incl. referenced items
* - basket-add : True to display "add to basket" button, false if not (optional)
* - require-stock : True if the stock level should be displayed (optional)
* - itemprop : Schema.org property for the product items (optional)
* - position : Position is product list to start from (optional)
*/
$enc = $this->encoder();
$position = $this->get( 'position' );
/** client/html/catalog/detail/url/target
* Destination of the URL where the controller specified in the URL is known
*
* The destination can be a page ID like in a content management system or the
* module of a software development framework. This "target" must contain or know
* the controller that should be called by the generated URL.
*
* @param string Destination of the URL
* @since 2014.03
* @category Developer
* @see client/html/catalog/detail/url/controller
* @see client/html/catalog/detail/url/action
* @see client/html/catalog/detail/url/config
* @see client/html/catalog/detail/url/filter
*/
$detailTarget = $this->config( 'client/html/catalog/detail/url/target' );
/** client/html/catalog/detail/url/controller
* Name of the controller whose action should be called
*
* In Model-View-Controller (MVC) applications, the controller contains the methods
* that create parts of the output displayed in the generated HTML page. Controller
* names are usually alpha-numeric.
*
* @param string Name of the controller
* @since 2014.03
* @category Developer
* @see client/html/catalog/detail/url/target
* @see client/html/catalog/detail/url/action
* @see client/html/catalog/detail/url/config
* @see client/html/catalog/detail/url/filter
*/
$detailController = $this->config( 'client/html/catalog/detail/url/controller', 'catalog' );
/** client/html/catalog/detail/url/action
* Name of the action that should create the output
*
* In Model-View-Controller (MVC) applications, actions are the methods of a
* controller that create parts of the output displayed in the generated HTML page.
* Action names are usually alpha-numeric.
*
* @param string Name of the action
* @since 2014.03
* @category Developer
* @see client/html/catalog/detail/url/target
* @see client/html/catalog/detail/url/controller
* @see client/html/catalog/detail/url/config
* @see client/html/catalog/detail/url/filter
*/
$detailAction = $this->config( 'client/html/catalog/detail/url/action', 'detail' );
/** client/html/catalog/detail/url/config
* Associative list of configuration options used for generating the URL
*
* You can specify additional options as key/value pairs used when generating
* the URLs, like
*
* client/html/<clientname>/url/config = array( 'absoluteUri' => true )
*
* The available key/value pairs depend on the application that embeds the e-commerce
* framework. This is because the infrastructure of the application is used for
* generating the URLs. The full list of available config options is referenced
* in the "see also" section of this page.
*
* @param string Associative list of configuration options
* @since 2014.03
* @category Developer
* @see client/html/catalog/detail/url/target
* @see client/html/catalog/detail/url/controller
* @see client/html/catalog/detail/url/action
* @see client/html/catalog/detail/url/filter
* @see client/html/url/config
*/
$detailConfig = $this->config( 'client/html/catalog/detail/url/config', [] );
/** client/html/catalog/detail/url/filter
* Removes parameters for the detail page before generating the URL
*
* For SEO, it's nice to have product URLs which contains the product names only.
* Usually, product names are unique so exactly one product is found when resolving
* the product by its name. If two or more products share the same name, it's not
* possible to refer to the correct product and in this case, the product ID is
* required as unique identifier.
*
* This setting removes the listed parameters from the URLs of the detail pages.
*
* @param array List of parameter names to remove
* @since 2019.04
* @category User
* @category Developer
* @see client/html/catalog/detail/url/target
* @see client/html/catalog/detail/url/controller
* @see client/html/catalog/detail/url/action
* @see client/html/catalog/detail/url/config
*/
$detailFilter = array_flip( $this->config( 'client/html/catalog/detail/url/filter', ['d_prodid'] ) );
?>
<div class="[ common__partials__products-standard ] list-items w-100">
<?php foreach( $this->get( 'products', [] ) as $id => $productItem ) : ?>
<?php $params = array_diff_key( ['d_name' => $productItem->getName( 'url' ), 'd_prodid' => $productItem->getId(), 'd_pos' => $position !== null ? $position++ : ''], $detailFilter ); ?>
<div class="product bg-border-colors rounded p-3 mb-4 <?= $enc->attr( $productItem->getConfigValue( 'css-class' ) ); ?>"
data-reqstock="<?= (int) $this->get( 'require-stock', true ); ?>"
itemprop="<?= $this->get( 'itemprop' ); ?>"
itemtype="http://schema.org/Product"
itemscope="">
<a href="<?= $enc->attr( $this->url( ( $productItem->getTarget() ?: $detailTarget ), $detailController, $detailAction, $params, [], $detailConfig ) ); ?>">
<!-- Images -->
<?php if( ( $mediaItem = $productItem->getRefItems( 'media', 'default', 'default' )->first() ) !== null ) : ?>
<div class="media-list">
<noscript>
<div class="media-item" itemscope="" itemtype="http://schema.org/ImageObject">
<img src="<?= $enc->attr( $this->content( $mediaItem->getPreview() ) ); ?>" alt="<?= $enc->attr( $mediaItem->getName() ); ?>" />
<meta itemprop="contentUrl" content="<?= $enc->attr( $this->content( $mediaItem->getPreview() ) ); ?>" />
</div>
</noscript>
<?php foreach( $productItem->getRefItems( 'media', 'default', 'default' ) as $mediaItem ) : ?>
<div class="media-item">
<img class="lazy-image"
src="data:image/gif;base64,R0lGODlhAQABAIAAAP///////yH5BAEEAAEALAAAAAABAAEAAAICTAEAOw=="
data-src="<?= $enc->attr( $this->content( $mediaItem->getPreview() ) ); ?>"
data-srcset="<?= $enc->attr( $this->imageset( $mediaItem->getPreviews() ) ) ?>"
alt="<?= $enc->attr( $mediaItem->getName() ); ?>"
/>
</div>
<?php endforeach; ?>
</div>
<?php endif; ?>
</a>
<div class="text-list">
<p class="lead uppercase leading-snug" itemprop="name"><?= $enc->html( $productItem->getName(), $enc::TRUST ); ?></p>
<?php foreach( $productItem->getRefItems( 'text', 'short', 'default' ) as $textItem ) : ?>
<div class="text-item" itemprop="description">
<?= $enc->html( $textItem->getContent(), $enc::TRUST ); ?>
</div>
<?php endforeach; ?>
<h4>Date</h4>
<?php foreach( $productItem->getRefItems( 'text', 'course-date', 'default' ) as $textItem ) : ?>
<div class="text-item" itemprop="date">
<?= $enc->html( $textItem->getContent(), $enc::TRUST ); ?>
</div>
<?php endforeach; ?>
<h4>Time</h4>
<?php foreach( $productItem->getRefItems( 'text', 'course-time', 'default' ) as $textItem ) : ?>
<div class="text-item" itemprop="date">
<?= $enc->html( $textItem->getContent(), $enc::TRUST ); ?>
</div>
<?php endforeach; ?>
<h4>Notes</h4>
<?php foreach( $productItem->getRefItems( 'text', 'notes', 'default' ) as $textItem ) : ?>
<div class="text-item" itemprop="date">
<?= $enc->html( $textItem->getContent(), $enc::TRUST ); ?>
</div>
<?php endforeach; ?>
<p>Teacher</p>
<?php
echo '<pre>';
var_dump($productItem->getSupplierItems());
echo '</pre>';
?>
<?php foreach( $productItem->getSupplierItems() as $supplierItem ) : ?>
<h3>NAME: <?= $enc->html( $supplierItem->getName() ); ?></h3>
<?php if( ( $mediaItem = $supplierItem->getRefItems( 'media', 'default', 'default' )->first() ) !== null ) : ?>
<div class="media-item">
<img class="lazy-image"
data-src="<?= $enc->attr( $this->content( $mediaItem->getPreview() ) ); ?>"
data-srcset="<?= $enc->attr( $this->imageset( $mediaItem->getPreviews() ) ) ?>"
alt="<?= $enc->attr( $mediaItem->getName() ); ?>"
/>
</div>
<?php endif; ?>
<?php foreach( $supplierItem->getRefItems( 'text', 'portraittext', 'default' ) as $textItem ) : ?>
<div class="text-item" itemprop="description">
<?= $enc->html( $textItem->getContent(), $enc::TRUST ); ?>
</div>
<?php endforeach; ?>
<?php endforeach; ?>
</div>
<div class="offer" itemprop="offers" itemscope itemtype="http://schema.org/Offer">
<div class="stock-list">
<div class="articleitem stock-actual"
data-prodid="<?= $enc->attr( $productItem->getId() ); ?>"
data-prodcode="<?= $enc->attr( $productItem->getCode() ); ?>">
</div>
<?php foreach( $productItem->getRefItems( 'product', null, 'default' ) as $articleId => $articleItem ) : ?>
<div class="articleitem"
data-prodid="<?= $enc->attr( $articleId ); ?>"
data-prodcode="<?= $enc->attr( $articleItem->getCode() ); ?>">
</div>
<?php endforeach; ?>
</div>
<div class="price-list">
<div class="articleitem price price-actual"
data-prodid="<?= $enc->attr( $productItem->getId() ); ?>"
data-prodcode="<?= $enc->attr( $productItem->getCode() ); ?>">
<?= $this->partial(
/** client/html/common/partials/price
* Relative path to the price partial template file
*
* Partials are templates which are reused in other templates and generate
* reoccuring blocks filled with data from the assigned values. The price
* partial creates an HTML block for a list of price items.
*
* The partial template files are usually stored in the templates/partials/ folder
* of the core or the extensions. The configured path to the partial file must
* be relative to the templates/ folder, e.g. "partials/price-standard.php".
*
* @param string Relative path to the template file
* @since 2015.04
* @category Developer
*/
$this->config( 'client/html/common/partials/price', 'common/partials/price-standard' ),
array( 'prices' => $productItem->getRefItems( 'price', null, 'default' )->first() ?: map() )
); ?>
</div>
<?php if( $productItem->getType() === 'select' ) : ?>
<?php foreach( $productItem->getRefItems( 'product', 'default', 'default' ) as $prodid => $product ) : ?>
<?php if( !( $prices = $product->getRefItems( 'price', null, 'default' ) )->isEmpty() ) : ?>
<div class="articleitem price"
data-prodid="<?= $enc->attr( $prodid ); ?>"
data-prodcode="<?= $enc->attr( $product->getCode() ); ?>">
<?= $this->partial(
$this->config( 'client/html/common/partials/price', 'common/partials/price-standard' ),
array( 'prices' => $prices )
); ?>
</div>
<?php endif; ?>
<?php endforeach; ?>
<?php endif; ?>
</div>
</div>
<?php if( $this->get( 'basket-add', false ) ) : ?>
<?php
$basketTarget = $this->config( 'client/html/basket/standard/url/target' );
$basketController = $this->config( 'client/html/basket/standard/url/controller', 'basket' );
$basketAction = $this->config( 'client/html/basket/standard/url/action', 'index' );
$basketConfig = $this->config( 'client/html/basket/standard/url/config', [] );
?>
<form method="POST" action="<?= $enc->attr( $this->url( $basketTarget, $basketController, $basketAction, [], [], $basketConfig ) ); ?>">
<!-- catalog.lists.items.csrf -->
<?= $this->csrf()->formfield(); ?>
<!-- catalog.lists.items.csrf -->
<?php if( $basketSite = $this->config( 'client/html/basket/standard/url/site' ) ) : ?>
<input type="hidden" name="<?= $this->formparam( 'site' ) ?>" value="<?= $enc->attr( $basketSite ) ?>" />
<?php endif ?>
<?php if( $productItem->getType() === 'select' ) : ?>
<div class="items-selection">
<?= $this->partial(
$this->config( 'client/html/common/partials/selection', 'common/partials/selection-standard' ),
['productItems' => $productItem->getRefItems( 'product', 'default', 'default' )]
); ?>
</div>
<?php endif; ?>
<div class="items-attribute">
<?= $this->partial(
$this->config( 'client/html/common/partials/attribute', 'common/partials/attribute-standard' ),
['productItem' => $productItem]
); ?>
</div>
<div class="addbasket">
<div class="input-group">
<input type="hidden" value="add"
name="<?= $enc->attr( $this->formparam( 'b_action' ) ); ?>"
/>
<input type="hidden" value="<?= $id; ?>"
name="<?= $enc->attr( $this->formparam( array( 'b_prod', 0, 'prodid' ) ) ); ?>"
/>
<input type="number" class="form-control" value="1"
min="1" max="2147483647" maxlength="10" step="1" required="required" <?= !$productItem->isAvailable() ? 'disabled' : '' ?>
name="<?= $enc->attr( $this->formparam( array( 'b_prod', 0, 'quantity' ) ) ); ?>"
/><!--
--><button class="btn btn-topic" type="submit" value="" <?= !$productItem->isAvailable() ? 'disabled' : '' ?> >
<?= $enc->html( $this->translate( 'client', 'Add to basket' ), $enc::TRUST ); ?>
</button>
</div>
</div>
</form>
<?php endif; ?>
</div>
<?php endforeach; ?>
</div>
Re: Display nested categories
I could find one o my mistakes: I used a equal sign after "domains", which is wrong. So this is the correct way:
And after clearing the cache, the supplier texts show.
Thank you very much, aimeos team! I am very grateful for your support!
Code: Select all
plugin.tx_aimeos {
settings {
client.html {
catalog {
lists {
// Wrong: No "=" after "domains" !!!
// domains = {
// Correct:
domains {
0 = attribute
1 = media
2 = price
3 = product
4 = text
5 = supplier
}
}
Thank you very much, aimeos team! I am very grateful for your support!
Re: Display nested categories
And I need your help again on this topic:
When getting the supplierItems, "getName" works....
...but this does not:
The same is true for the domain "catalog".
Is it wrong to use "getRefItems" on supplier and catalog?
When getting the supplierItems, "getName" works....
Code: Select all
<?php foreach( $productItem->getSupplierItems() as $supplierItem ) : ?>
<h3 class="px-0 mx-0"><?= $enc->html( $supplierItem->getName() ); ?></h3>
Code: Select all
[...]
<?php foreach( $supplierItem->getRefItems( 'text', 'portraittext', 'default' ) as $textItem ) : ?>
<div class="text-item" itemprop="description">
<?= $enc->html( $textItem->getContent(), $enc::TRUST ); ?>
</div>
<?php endforeach; ?>
The same is true for the domain "catalog".
Is it wrong to use "getRefItems" on supplier and catalog?
Re: Display nested categories
It's totally OK to use $product->getSupplierItems() (or getCatalogItems()) and $supplierItem->getRefItems() afterwards. The texts are included in the supplier item if the domains passed to the product manager contains "text".
Professional support and custom implementation are available at Aimeos.com
If you like Aimeos, give us a star
If you like Aimeos, give us a star
Re: Display nested categories
Sorry, I do not understand your answer.
This is the snippet I use in "commons/partials/product-standard.php":
As mentioned in the comment of the snippet, the 2 getRefItems loops to not generate any content. I do not see my error...
I also don't know, what a sentence like this is really meaning:
"The texts are included in the supplier item if the domains passed to the product manager contains "text"."
I read the documentation several times and tried/try to understand it as good as I can. But a sentence like yours is not there. Do you talk about the TypoScript configuation object? If so, does that mean that I do NOT have to specify a "supplier" and/or a "catalog" domain? Or what do you mean exactly by that? (Because in other answers and on Slack I read that I do have to add those domains...)
This is the snippet I use in "commons/partials/product-standard.php":
Code: Select all
<?php foreach( $productItem->getSupplierItems() as $supplierItem ) : ?>
// This works
<h3 class="px-0 mx-0">Teacher: <?= $enc->html( $supplierItem->getName() ); ?></h3>
// This and the next loops do not produce any results:
<?php if( ( $mediaItem = $supplierItem->getRefItems( 'media', 'default', 'default' )->first() ) !== null ) : ?>
<div class="media-item">
<img class="lazy-image"
data-src="<?= $enc->attr( $this->content( $mediaItem->getPreview() ) ); ?>"
data-srcset="<?= $enc->attr( $this->imageset( $mediaItem->getPreviews() ) ) ?>"
alt="<?= $enc->attr( $mediaItem->getName() ); ?>"
/>
</div>
<?php endif; ?>
<?php foreach( $supplierItem->getRefItems( 'text', 'short', 'default' ) as $textItem ) : ?>
<div class="text-item" itemprop="description">Short description:
<?= $enc->html( $textItem->getContent(), $enc::TRUST ); ?>
</div>
<?php endforeach; ?>
<?php foreach( $supplierItem->getRefItems( 'text', 'portraittext', 'default' ) as $textItem ) : ?>
<div class="text-item" itemprop="description">Portrait text:
<?= $enc->html( $textItem->getContent(), $enc::TRUST ); ?>
</div>
<?php endforeach; ?>
<?php foreach( $supplierItem->getRefItems( 'text', 'long', 'default' ) as $textItem ) : ?>
<div class="text-item" itemprop="description">Long description:
<?= $enc->html( $textItem->getContent(), $enc::TRUST ); ?>
</div>
<?php endforeach; ?>
<?php endforeach; ?>
I also don't know, what a sentence like this is really meaning:
"The texts are included in the supplier item if the domains passed to the product manager contains "text"."
I read the documentation several times and tried/try to understand it as good as I can. But a sentence like yours is not there. Do you talk about the TypoScript configuation object? If so, does that mean that I do NOT have to specify a "supplier" and/or a "catalog" domain? Or what do you mean exactly by that? (Because in other answers and on Slack I read that I do have to add those domains...)