Tập tành làm việc Disable Cache trong Drupal 8/ Drupal 9

7th May 2022
Table of contents

Danh sách các module rất hay dùng

Module là một phần thiết yếu tạo nên giá trị cho website Drupal. Mặc dù module là tích hợp nhỏ giữa PHP, Javascript và CSS nhưng nâng cao tính năng và trải nghiệm cho người dùng.

Dưới đây là một số module phổ biến và rất hữu dụng cho tất cả website Drupal

ADMIN TOOLBAR

Admin Toolbar - Đây là một module nhỏ nhằm giúp tạo trang menu quản trị trong Drupal thân thiện với người dùng hơn. Nhưng sẽ giúp bạn tiết kiệm rất nhiều thời gian

DEVEL

Devel là module mạnh mẽ và phổ biến giúp các lập trình viên dễ dàng thực hiện phát triển và gỡ bug nhanh nhẹn và hiều quả hơn

ENTITY BROWSER

Entity browser là công cụ linh hoạt giúp cho việc tạo, chọn các ảnh, tập tin, tệp file dễ dàng và mượt hơn core của Drupal

PATHAUTO

PathAuto là module tự động tạo URL/ Path  cho nội dung, sản phầm để tối thân thiện với SEO

vd: /danh-muc/tieu-de-bai-viet thay cho mặc định là /node/2

Webform

Webform module tạo form liên hệ, đăng ký hay mà form nhiều bước (multi-step forms) dễ dàng với trình kéo thả hoặc sử dụng structure YAML.

Google Analytics

Google Analytics - Đây là module dùng để đo lường và phân tích traffic website đến Drupal rất hữu dụng để làm SEO

reCAPTCHA

Recaptcha giúp ngăn chặn spam đến hệ thống website.

Paragraphs

Paragraphs là module cho phép bạn tạo nội dung bài viết dễ dàng , sinh động hơn thay vì bạn chỉ dùng mỗi WYSUWYG như mặc định.

Cách Disable Cache

Drupal có một hệ thống cache vô cùng mạnh mẽ và chia ra rất nhiều loại khác nhau : Dynamic caching, Page caching, Twig template caching, ... Nhưng đôi khi chúng ta cần phải tắt đi để thực hiện một số thay đổi hoặc vì phát triển hệ thống. Dưới đây sẽ là hướng dẫn xáo cache trong Drupal 8/ Drupal 9.

Bước 1

Copy file example.settings.local.php trong folder sites đến sites/default 

cp sites/example.settings.local.php sites/default/settings.local.php

Bước 2

Xóa comment trong đoạn dưới trong settings.php

if (file_exists($app_root . '/' . $site_path . '/settings.local.php')) {
  include $app_root . '/' . $site_path . '/settings.local.php';
}

Bước 3

Xóa comment trong file settings.local.php

$settings['container_yamls'][] = DRUPAL_ROOT . '/sites/development.services.yml';

Trong mặc định, trong file development.service.yml đã có đoạn tắt Drupal cache:

parameters:
  http.response.debug_cacheability_headers: true
services:
  cache.backend.null:
    class: Drupal\Core\Cache\NullBackendFactory

Bước 4

Setting lại những tham số bạn cần trong settings.local.php

Nếu muốn css and js được tổng hợp lại thì để TRUE, còn khi thì FALSE

$config['system.performance']['css']['preprocess'] = TRUE;
$config['system.performance']['js']['preprocess'] = TRUE;

Tắt tạo cache bằng cách bỏ comment

$settings['cache']['bins']['render'] = 'cache.backend.null';

Bỏ comment để tắt cache cho trang động (Dynamic Page)

$settings['cache']['bins']['dynamic_page_cache'] = 'cache.backend.null';

Tắt cache trong trang nội bộ (internal page)

#bỏ comment
$settings['cache']['bins']['page'] = 'cache.backend.null';

Nếu bạn đang phát triển theme/ module bạn có thể set bằng False

$settings['extension_discovery_scan_tests'] = FALSE;

Bước 5

Tắt Cache cho Twig

Thêm đoạn code bên dưới vào file development.services.yml trong folder sites, như dưới đây

# Local development services.
#
# To activate this feature, follow the instructions at the top of the
# 'example.settings.local.php' file, which sits next to this file.
parameters:
  http.response.debug_cacheability_headers: true
  twig.config:
    debug: true
    auto_reload: true
    cache: false
services:
  cache.backend.null:
    class: Drupal\Core\Cache\NullBackendFactory

Bước 6

Vào trang Admin, xóa cache và kiểm tra

Bạn thấy bài viết này như thế nào?
0 reactions

Add new comment

Image CAPTCHA
Enter the characters shown in the image.
Câu nói tâm đắc: “Điều tuyệt với nhất trong cuộc sống là làm được những việc mà người khác tin là không thể!”

Related Articles

Master list (in progress) of how to get parts of fields for use in Twig templates. I’m always having to look these up, so I thought I’d hash them out and write them down.

Litespeed Cache là plugin WordPress dùng để kết hợp với Web Server LiteSpeed nhằm tăng tốc website WordPress của bạn gấp nhiều lần

In this article, we are going to see how some tools & libraries will make people's lives easier during the development & code review process.

In this tutorial, you will learn how to improve the custom code, theme and module, and general code development by using the pre-commit hook on git

Trước khi tìm hiểu xem PHP Code Sniffer là gì thì các bạn cần phải nắm được coding convention là gì đã.