Anzahl Produkte pro Kategorie

Kann eine aggregation in einer association verwendet werden?
Wir verwenden den Endpunkt der Store Api
POST /store-api/v2/category
Was wir versucht haben ist so etwas in der Art:

{
    "limit": 2,
    "associations": {
        "products": {
            "aggregations": [
                {
                    "name": "product-category-count",
                    "type": "count",
                    "field": "id"
                }
            ]
        }
    },
    "aggregations": [
        {
            "name": "products-count",
            "type": "count",
            "field": "category.products.id"
        }
    ]
}

Der products-count ist ja die Anzahl aller Produkte.
Der product-category-count ist im Response gar nicht zu finden.

Für jede Kategorie müsste eine zusätzliche Abfrage gestellt werden, wie viele Artikel in der Kategorie sind. Je nach Shop währen das 50, 100 oder deutlich mehr zusätzliche Datenbankabfragen. Daher ist das im Core nicht implementiert.

Per Plugin lässt sich das aber realisieren.

Hast du hierfür eine Lösung gefunden?

Ich bin auch gerade an einem Plugin für die Administration.
Bei mir geht es darum, die Artikel anzuzeigen und die Gesamtzahl ihrer jeweiligen Bewertungen.

Sprich ich greife auf die product Repository zu mit einer Association bzw. einer count Aggregation auf die productReviews zu.

Jedoch erhalte ich so entweder die jeweiligen Bewertungen oder die Gesamtzahl aller Bewertungen, nicht jedoch die Gesamtzahl der Bewertungen des jeweiligen Produktes.

Ich möchte diese nicht über die length des Results zusammenrechnen, da ich das ja in der Administration via Vue darstellen will, am besten auch sortierbar usw. Deshalb versuche ich natürlich die entsprechenden Werte direkt ans Vue zu übergeben.