※ 如果您是從舊站跳轉過來的,請您直接用搜尋器↑再找一次資料唷!

Drupal 7

Drupal 7 Database 4 byte UTF-8 support 轉換筆記

前陣子不小心把 MariaDB 的版本從 10.0.x 升到 10.4.x (詳見 筆記)

我其實長期以來都是用 Emoji Scrub 來處理copy FB文章有特殊符號存檔出錯的問題

這次升級MariaDB 的版本的主因是因為發現文章中的某些字元出不來
(不過搞笑的是其實是我 fontfamily 字型設定的問題 FontAwesome 排序調整即可 XD )

由於我在 MariaDB 10.4.x 轉換失敗,所以就弄一台 VM 來處理

VM 的規格是直接採用 Ubuntu 18.04 內建的 MySQL 5.7

參考此頁 https://www.drupal.org/project/utf8mb4_convert

轉換時需使用drush

這個不需要設定,預設就有支援

啟用 opcache 的設定檔

/etc/php/7.2/fpm/conf.d/10-opcache.ini


; configuration for php opcache module
; priority=10
zend_extension=opcache.so

opcache.enable=1
opcache.memory_consumption=128
opcache.interned_strings_buffer=8
opcache.max_accelerated_files=4000
opcache.revalidate_freq=10
opcache.fast_shutdown=1
opcache.file_cache=/tmp

PS.opcache.enable_cli開啟後drush會不能用,所以設定檔沒有開

如何使用patch

以我剛好遇到的but為例

Emoji Scrub 模組出現錯誤訊息
Undefined index: summary File emoji_scrub/emoji_scrub.module, line 74(file: emoji_scrub/emoji_scrub.module, line 74)

參考此頁解決
https://www.drupal.org/project/emoji_scrub/issues/2694419

01.到模組根目錄
cd sites/all/modules/emoji_scrub/
02.下執及執行patch
curl https://www.drupal.org/files/issues/emoji_scrub-check-summary-key-exists-2694419-2-7.patch | git apply -v

Drupal 7 Boostrap版型BUG

手上幾個站執行完drush cc all後,就GG了

兇手
bootstrap_bootstrap_cdn_provider_jsdelivr_alter() (/var/www/my/sites/all/themes/bootstrap/includes/cdn.inc 中的第 166 行)
drupal_http_request 沒要到 jsDelivr 的資料就掛了

解法
要改寫 bootstrap/includes/cdn.inc
註解掉166行
$packageJson = _bootstrap_cdn_provider_re...
然後加上下面兩行就可以了
$packageJson = _bootstrap_cdn_provider_request_json("https://data.jsdelivr.com/v1/package/npm/$package");
if(empty($packageJson)){continue;}

Drupal Taiwan社團有朋友提過這個BUG,正好派上用場 XD