---
url: 'https://dxpr.com/pl/hc/documentation/learn-dxpr-builder/advanced/caching'
title: 'Buforowanie | DXPR'
author:
  name: Jurriaan
  url: 'https://dxpr.com/users/jurriaan'
date: '2026-10-24T11:35:35+00:00'
copyright: 'Copyright DXPR. All rights reserved.'
type: article
summary: |-
  Strona kreatora DXPR to renderowana tablica pola Drupala z własnymi
  metadanymi pamięci podręcznej oraz garścią wewnętrznych pamięci podręcznych,
  które moduł trzyma dla edytora i sprawdzania licencji. Ta strona wymienia,
  co kod buforuje, jakich tagów i kontekstów używa, co je unieważnia
  i co wyczyścić ręcznie po aktualizacji.
  Pole kreatora
  Formater pola DXPR Builder ustawia te metadane pamięci podręcznej
  na każdym polu kreatora:
tags:
  - 'Naar productie'
image: 'https://dxpr.com/themes/custom/dxpr_com/images/dxpr-share-card.jpg'
published: true
og:
  site_name: DXPR
  updated_time: '2026-10-24T11:35:35+0000'
  'image:alt': 'DXPR, powered by Drupal: AI-powered Drupal for marketers.'
schema:
  '@context': 'https://schema.org'
  '@graph':
    -
      mainEntity: {  }
    -
      '@type': TechArticle
      headline: Buforowanie
      description: |-
        Strona kreatora DXPR to renderowana tablica pola Drupala z własnymi
        metadanymi pamięci podręcznej oraz garścią wewnętrznych pamięci podręcznych,
        które moduł trzyma dla edytora i sprawdzania licencji. Ta strona wymienia,
        co kod buforuje, jakich tagów i kontekstów używa, co je unieważnia
        i co wyczyścić ręcznie po aktualizacji.
        Pole kreatora
        Formater pola DXPR Builder ustawia te metadane pamięci podręcznej
        na każdym polu kreatora:
      image:
        '@type': ImageObject
        url: 'https://dxpr.com/themes/custom/dxpr_com/images/dxpr-share-card.jpg'
        width: '1200'
        height: '630'
      datePublished: '2026-10-24T11:35:35+0000'
      dateModified: '2026-10-24T11:35:35+0000'
      author:
        '@type': Organization
        '@id': 'https://dxpr.com/#organization'
        name: DXPR
        url: 'https://dxpr.com/'
        logo:
          '@type': ImageObject
          url: 'https://dxpr.com/themes/custom/dxpr_com/dxpr-logo-dark.svg'
          width: '1348'
          height: '501'
      publisher:
        '@type': Organization
        '@id': 'https://dxpr.com/#organization'
        name: DXPR
        url: 'https://dxpr.com/'
        logo:
          '@type': ImageObject
          url: 'https://dxpr.com/themes/custom/dxpr_com/dxpr-logo-dark.svg'
          width: '1348'
          height: '501'
      mainEntityOfPage: 'https://dxpr.com/pl/hc/documentation/learn-dxpr-builder/advanced/caching'
      articleSection: 'Naar productie'
    -
      '@type': WebPage
      '@id': 'https://dxpr.com/pl/hc/documentation/learn-dxpr-builder/advanced/caching'
      description: |-
        Strona kreatora DXPR to renderowana tablica pola Drupala z własnymi
        metadanymi pamięci podręcznej oraz garścią wewnętrznych pamięci podręcznych,
        które moduł trzyma dla edytora i sprawdzania licencji. Ta strona wymienia,
        co kod buforuje, jakich tagów i kontekstów używa, co je unieważnia
        i co wyczyścić ręcznie po aktualizacji.
        Pole kreatora
        Formater pola DXPR Builder ustawia te metadane pamięci podręcznej
        na każdym polu kreatora:
      breadcrumb:
        '@type': BreadcrumbList
        itemListElement:
          -
            '@type': ListItem
            position: 1
            name: 'Strona Główna'
            item: 'https://dxpr.com/pl'
      publisher:
        '@type': Organization
        '@id': 'https://dxpr.com/#organization'
        name: DXPR
      inLanguage: pl
---
[Help Center](/pl/hc)/[Documentation](/pl/hc/documentation) /[Learn DXPR Builder](/hc/documentation/learn-dxpr-builder) /[Manage the site](/hc/documentation/learn-dxpr-builder/manage) /[Naar productie](/hc/documentation/learn-dxpr-builder/manage/production) # Buforowanie.

 Learn DXPR BuilderManage the siteNaar productie

   ## In this guide

 Related guides

- [Wydajność](/pl/hc/documentation/learn-dxpr-builder/advanced/performance)
- [Architektura](/pl/hc/documentation/learn-dxpr-builder/development/architecture)
- [Odwiedzający widzą coś innego.](/pl/hc/documentation/learn-dxpr-builder/troubleshooting/visitors-see-something-else)

Strona kreatora DXPR to renderowana tablica pola Drupala z własnymi metadanymi pamięci podręcznej oraz garścią wewnętrznych pamięci podręcznych, które moduł trzyma dla edytora i sprawdzania licencji. Ta strona wymienia, co kod buforuje, jakich tagów i kontekstów używa, co je unieważnia i co wyczyścić ręcznie po aktualizacji.

## Pole kreatora

Formater pola **DXPR Builder** ustawia te metadane pamięci podręcznej na każdym polu kreatora:

| Metadane | Wartość | Skutek |
|---|---|---|
| Kontekst pamięci podręcznej | `user.roles:authenticated` | Anonimowi i zalogowani odwiedzający dostają osobne wpisy pamięci podręcznej. |
| Tagi pamięci podręcznej | Własne tagi encji, `config:dxpr_builder.settings` i `config:language.entity.<langcode>` dla renderowanego języka | Zapisanie encji, zapisanie ustawień modułu albo zmiana konfiguracji języka unieważnia renderowane pole. |
| `max-age` | `0` dla każdego zalogowanego użytkownika | Pola kreatora nigdy nie są buforowane przez Dynamic Page Cache dla zalogowanych użytkowników, ponieważ tablica renderująca niesie `drupalSettings` konkretnego użytkownika (e-mail, tokeny CSRF, profil). |

Dla anonimowych odwiedzających pole buforuje się normalnie, więc Internal Page Cache i Dynamic Page Cache serwują strony kreatora bez uruchamiania kodu modułu. Zapisanie w kreatorze zapisuje encję, więc Drupal unieważnia tagi pamięci podręcznej encji jak przy każdym innym zapisie.

Gdy edytor jest włączony na polu, moduł dodaje ponownie `config:dxpr_builder.settings`. Przy **Asset source** ustawionym na **Cloud** i nieskonfigurowanym kluczu produktu ustawia też `max-age` na `0`, aby komunikat o kluczu produktu pokazywał się na każdej stronie.

Własne formularze administracyjne modułu unieważniają `config:dxpr_builder.settings` wprost: **General Settings**, **AI**, formularz profilu użytkownika oraz formularze szablonów stron i użytkownika.

## Widoki i bloki wewnątrz strony

Bloki i widoki przechowywane są w zapisanym HTML jako puste symbole zastępcze `az-cms-element`. Gdy pole się renderuje, moduł wczytuje każdy blok albo widok, renderuje go podstawowym rendererem i wstawia wynik do znaczników pola. Biblioteki widoku i jego `drupalSettings` są kopiowane na pole; jego metadane pamięci podręcznej przepływają przez renderer jak przy każdej tablicy renderującej budowanej podczas renderowania strony.

Konsekwencją jest to, że wiersze widoku pozostają w zbuforowanym polu, dopóki jeden z tagów pamięci podręcznej widoku nie zostanie unieważniony. Widok z buforowaniem czasowym trzyma stare wiersze przez cały swój czas życia. Jeśli odwiedzający widzą nieświeże wiersze:

1. Otwórz widok, rozwiń **Advanced** i ustaw **Caching** na **Tag based**. **None** zatrzymuje Dynamic Page Cache, ale Internal Page Cache nadal trzyma całe strony dla anonimowych odwiedzających.
2. Zapisz widok. Zapisanie dowolnego widoku unieważnia też `config:view_list`, co czyści listy widoków modułu dla edytora.
3. Wyczyść wszystkie pamięci podręczne.

W edytorze blok albo widok dodany lub zmieniony pobierany jest przez `/dxpr_builder/ajax`. Moduł nie buforuje tej odpowiedzi.

## Wewnętrzne pamięci podręczne

Wszystkie wpisy znajdują się w domyślnym koszyku pamięci podręcznej (`cache.default`). Zbuforowane wybieraki elementów noszą tag `dxpr_builder:cms_elements`oraz tagi list typów encji, które wymieniają, więc czyszczą się same, gdy te encje się zmieniają.

| ID pamięci podręcznej | Treść | Czyści |
|---|---|---|
| `dxpr_builder:cms_elements_blocks`, `dxpr_builder:cms_block_categories` | Lista bloków i kategorie bloków dla wybieraka elementów | Zapisanie albo usunięcie bloku treści lub formularza webform (tagi list `block_content_list`, webform), usunięcie wpisów przy odinstalowaniu dowolnego modułu, `drush cr` |
| `dxpr_builder:cms_disallowed_elements:<uid>:<roles hash>` | Bloki, których bieżący użytkownik nie może używać | Te same tagi oraz `config:user.role.<role>` dla każdej roli użytkownika |
| `dxpr_builder:cms_elements_views`, `dxpr_builder:cms_view_elements_settings`, `dxpr_builder:cms_views_tags` | Wyświetlenia widoków, ich ustawienia i identyfikatory dla edytora | Zapisanie, dodanie albo usunięcie dowolnego widoku (`config:view_list`), `drush cr` |
| `dxpr_builder:button_styles` | Style przycisków dla elementu Button | Tag `dxpr_builder:cms_elements`, `drush cr` |
| `dxpr_builder_license_info` | Wynik wywołania statusu licencji | Wygasa po 24 godzinach, gdy autoryzowano, 30 minutach w przeciwnym razie (`LICENSE_CHECK_INTERVAL`, `LICENSE_NOT_AUTHORIZED_INTERVAL`); unieważniane po wysłaniu przez witrynę zmiany użytkownika do serwera licencji |
| `dxpr_builder_license_users` | Lista redaktorów z serwera licencji | Wygasa po 24 godzinach; unieważniane po wysłaniu przez witrynę zmiany użytkownika do serwera licencji |
| `dxpr_builder_blacklisted` | Wynik listy zablokowanych domen | Wygasa po godzinie albo po minucie, gdy domena jest zablokowana |
| `dxpr_builder:jwt_decoded:<sha256 of the key>` | Zdekodowany klucz produktu, jeden wpis na klucz | Tag `config:dxpr_builder.settings` |

Klasy narzędziowe motywu (`dxpr_builder_classes` w pliku `.info.yml`motywu) pochodzą z buforowanych informacji o motywie Drupala, więc zmiana wymaga `drush cr`, zanim edytor ją zobaczy. Pliki zestawów ikon (`*.dxpr_icon_sets.yml`) odczytywane są przy każdym wczytaniu strony edytora, ale nazwana przez nie biblioteka wymaga `drush cr` jak każda nowa biblioteka.

## Pliki i agregacja

Sześć skryptów edytora jest zewnętrznych (Cloud) albo zadeklarowanych z `preprocess: FALSE`, więc agregacja ich nigdy nie dotyka. Agregacja dotyczy bibliotek pomocniczych edytora, takich jak `dxpr_builder/editor.core` z Sortable, oraz plików dla odwiedzających (`dxpr_builder/core`, `dxpr_builder/editor.frontend`, biblioteki `elements.*` i `bootstrap_5`). Dwa objawy wracają do pamięci podręcznej agregacji:

- Edytor psuje się po aktualizacji albo zgłasza `Sortable is not defined` tylko przy włączonej agregacji. Postępuj zgodnie z [Edytor się nie pojawia](/hc/documentation/learn-dxpr-builder/troubleshooting/editor-not-loading).
- Odwiedzający nie widzą stylów ani ikon po aktualizacji albo zmianie ustawień. Postępuj zgodnie z [Odwiedzający widzą coś innego](/hc/documentation/learn-dxpr-builder/troubleshooting/visitors-see-something-else).

## Co wyczyścić po aktualizacji

1. Uruchom aktualizacje bazy danych, potem wyczyść pamięci podręczne:

    ```bash
    drush updb -y
    drush cr

    ```

    `drush cr` przebudowuje definicje bibliotek kreatora, które podążają za wersją modułu i źródłem plików, zagregowane pliki oraz wewnętrzne pamięci podręczne powyżej.
2. Otwórz jedną stronę kreatora jako redaktor i zapisz ją. Zapisuje to stronę znacznikami bieżącego wydania i unieważnia jej tagi encji.
3. Za Varnishem albo CDN wyczyść strony kreatora albo poczekaj na upłynięcie maksymalnego wieku; moduł nie wysyła żądań czyszczenia.

Jeśli strona nadal pokazuje odwiedzającym starą treść, zobacz [Problemy po aktualizacji](/hc/documentation/learn-dxpr-builder/troubleshooting/after-updating).

## Co dalej?

- [Wydajność](/hc/documentation/learn-dxpr-builder/advanced/performance): co pobiera każda strona odwiedzającego i redaktora.
- [Architektura](/hc/documentation/learn-dxpr-builder/development/architecture): kod, który renderuje, zapisuje i buforuje pole kreatora.
- [Odwiedzający widzą coś innego](/hc/documentation/learn-dxpr-builder/troubleshooting/visitors-see-something-else): objawy związane z pamięcią podręczną i ich naprawy.