Drupal 8 Block Cache

В Drupal 8 все визуализируемые массивы кэшируются, включая, конечно, те, которые возвращаются пользовательскими блоками. ,

Новый и значительно улучшенный Cache API в Drupal 8 обеспечивает изощренный подход к кешированию всех визуализируемых объектов - будь то страницы, сущности или, в нашем случае, блоки. В то время как в Drupal 7 настройки кэша по умолчанию возвращались вместе с другими настройками блока в hook_block_info (), Drupal 8 позволяет разработчикам управлять поведением кэша для блоков непосредственно в массиве рендеринга, который возвращается методом объекта build () объекта.

В Drupal 7 кэширование блока по ролям выглядит так:

function mymodule_block_info ( )  { 
  $ blocks = array ( ) ;
  $ blocks [ 'mymodule_example_block' ] = array ( 
    'info' => t ( 'Block title' ) ,
     // Параметры кэширования блоков (для каждой роли, для каждого пользователя и т. д.) 
    // DRUPAL_CACHE_PER_ROLE является значением по умолчанию. 
    'cache' => DRUPAL_CACHE_PER_ROLE,
   ) ;
  return  $ blocks ;
}


В Drupal 8 настройками кэша манипулируют непосредственно в рендерируемых массивах, возвращаемых (среди прочего) методом build () блока:

class MyCustomBlock extends BlockBase { 
  public  function build ( )  { 
    return  array ( 
      '#markup' => $ this -> t ( 'Содержимое моего пользовательского блока' ) ,
       '#cache' => array ( 
        'contextxts' => array ( ' user.roles ' ) ,
       ) ,
     ) ;
  }


Доступные параметры для манипулирования настройками кэша включают «keys», «contexts», «tags», «max-age» и «bin». Подробная документация по управлению кешем в Drupal 8 доступна на Drupal.org .

 В Drupal 8 поведение кеша должно учитываться при рендеринге абсолютно всего через API рендеринга. Подробнее об этом на Drupal.org .

Теги

Добавить комментарий

Restricted HTML

  • Допустимые HTML-теги: <a href hreflang> <em> <strong> <cite> <blockquote cite> <code> <ul type> <ol start type> <li> <dl> <dt> <dd> <h2 id> <h3 id> <h4 id> <h5 id> <h6 id>
  • Строки и абзацы переносятся автоматически.
  • Адреса веб-страниц и email-адреса преобразовываются в ссылки автоматически.
Оставьте комментарий!