Elektrine lite

← Feed

winkelwagen.de :shopware:

winkelwagen@phpc.social

<p>We are a nice, cozy e commerce agency - officially based in Berlin, Germany. But let&#39;s be honest, we are remote and life in the internet.<br />Although this account will most likely toot our blog posts, feel free to write us - or drop <span class="h-card" translate="no"><a href="https://phpc.social/@Schrank" class="u-url mention">@<span>Schrank</span></a></span> a message.<br />We do mostly <a href="https://phpc.social/tags/shopware6" class="mention hashtag" rel="tag">#<span>shopware6</span></a> and maintain <a href="https://phpc.social/tags/magento1" class="mention hashtag" rel="tag">#<span>magento1</span></a>. But can <a href="https://phpc.social/tags/shopify" class="mention hashtag" rel="tag">#<span>shopify</span></a> as well and of course <a href="https://phpc.social/tags/php" c

Posts

  • View post

    Pagination and batch jobs both get brutally slow once your catalog gets big — for two completely different, fixable reasons. Shopware has a mode and an iterator behavior that solve each, and the docs mention neither. One of them the docblock even gets wrong. http://winkelwagen.de/2026/08/10/shopware-6-hidden-gems-9-pagination-without-the-pain-next_pages-mode-and-the-self-optimizing-iterator/

  • View post

    Shopware 6 Hidden Gems #7: shopware.dal.max_rule_prices — the silent price sorting cutoff This one is less &quot;cool trick&quot; and more &quot;you want to know this before it bites you&quot;. Imagine a grown B2B shop: customer groups, country-specific prices, campaign rules, partner conditions. Over the years the Rule Builder collects rules like my desk collects mate bottles. And one day a customer calls: &quot;I sorted by price, but the cheapest product isn&#39;t first.&quot; You check the p...

  • View post

    Shopware 6 Hidden Gems #6: Two state machine tricks — diagrams for free and forcing “impossible” transitions Order states, delivery states, payment states — Shopware models all of them as state machines with defined transitions. Which is great, until a) a new colleague asks &quot;so which states can an order actually be in?&quot; and you start drawing boxes on a whiteboard, or b) an order gets stuck in a state it can&#39;t legally leave and you start writing UPDATE statements… http://winkelwag...

  • View post

    Shopware 6 Hidden Gems #5: shopware.logger.* — turning down the noise Open the error log of any grown Shopware shop and you&#39;ll find the same suspects, hundreds of times a day: CHECKOUT__CUSTOMER_AUTH_BAD_CREDENTIALS because someone mistyped their password. CHECKOUT__CART_HASH_MISMATCH because a tab was open too long. 404s from bots probing for WordPress. None of these are your bugs — but they bury the one log line that is. The result is the classic monitoring death… http://winkelwagen.de/2...

  • View post

    Shopware 6 Hidden Gems #4: The feature flag system can do way more than FEATURE_ALL=1 Most Shopware developers know exactly two things about feature flags: there is a feature.yaml, and you can put FEATURE_ALL=1 in your .env to see what breaks. That was my level of knowledge too, until I read Feature.php and FeatureFlagRegistry.php top to bottom for this series. Turns out there is a whole feature management system in there — with database persistence, a REST API, events… http://winkelwagen.de/2...

  • View post

    Shopware 6 Hidden Gems #3: sw-expect-packages — let your integration fail fast Here is a support ticket I have seen in about five different costumes: a middleware pushes orders into Shopware via the Admin API. One day the payloads start failing — or worse, they don&#39;t fail, they just silently write incomplete data. After an hour of digging it turns out someone deactivated a plugin on the shop side, or updated it to a version with a different custom field layout. http://winkelwagen.de/2026/0...

  • View post

    Shopware 6 Hidden Gems #2: Bulk imports done right — taming the indexers Every Shopware developer has been here: you push 50,000 products through the Sync API and the import crawls. The writes themselves are fast. What kills you is everything that happens after each write — inheritance updates, cheapest price calculation, search keyword generation, category denormalization. Shopware calls all of this &quot;indexing&quot;, and by default it runs synchronously, per request,… http://winkelwagen.d...

  • View post

    Zahlarten in Shopware 6 nur für Stammkunden anzeigen Manche Zahlarten möchte man nicht jedem Kunden sofort anbieten. Rechnungskauf ist so ein Klassiker. Bei bekannten Kunden ist das Risiko überschaubarer, bei Neukunden möchte man vielleicht erstmal Vorkasse, PayPal, Kreditkarte oder eine andere abgesicherte Zahlart nutzen. In Shopware 6 lässt sich das ohne Plugin lösen. Der Rule Builder reicht dafür völlig aus. Regel für Stammkunden anlegen In der Administration geht… http://winkelwagen.de/202...

  • View post

    Shopwares Criteria::setTitle() is an awesome way to tag your queries throughout the infrastructure! http://winkelwagen.de/2026/07/10/shopware-6-hidden-gems-1-criteriasettitle-name-tags-for-your-sql-queries/

  • View post

    Deliverability („Zustellbarkeit“) – warum „Senden“ nicht gleich „Ankommen“ ist Deliverability („Zustellbarkeit“) ist der Vorgang, mit dem E-Mails in den Posteingängen der Abonnenten landen – und es ist eine Kunst… und eine Wissenschaft. Denn viele Aspekte liegen in unserer Hand (Infrastruktur, E-Mail-Vorlagen…) und auf andere wiederum haben wir keinen direkten Einfluss, etwa die Regeln, welche die E-Mail-Provider zur Entscheidungsfindung („Das ist Spam!“) benutzen. Das… https://winkelwagen.de/...