WordPress подсветка кода плагин Pure Highlightjs фон настройки помощь документация

3-минутное чтение
Цзянсу
2025-08-13
2025-10-11
3,979
Я получаю комиссионные, когда вы совершаете покупки по ссылкам ниже, без дополнительных затрат для вас.

Представление плагина Pure Highlightjs

Закулисные настройки

Плагин WordPress Highlight Code Plugin Pure Highlightjs Backend Settings Help Documentation - LikaCloud
Настройки фона плагина

Выбор темы

  • Дневная тема: выбор стиля блока кода, сохранение после выбора, предварительный просмотр. Никакой оптимизации, можно выбрать десятки стилей.
  • Ночная тема: вам нужно, чтобы тема поддерживала корневой html-элемент, чтобы добавить темный, чтобы переключить ночной режим, иначе вы можете использовать только дневную тему.

Цвет полосы прокрутки

Вам необходимо установить стиль полосы прокрутки в соответствии со стилем темы, полоса прокрутки с simplebar, совместимая со всеми основными браузерами, может быть применена ко всему сайту, где вам нужна полоса прокрутки, к сожалению, не поддерживает тело страницы и html экрана стороны полосы прокрутки стиль.

Примечание: Цвет полосы прокрутки, установленный в бекенде плагина, действует только на полосу прокрутки блока кода.

Если вам нужно использовать simplebar в другом месте сайта, откройте следующий файл каталога плагинов:

//位置 plugins/Pure-Highlightjs/assets/pure-highlight.js
// 根据类名添加simplebar滚动条样式
document
  .querySelectorAll(
    'pre, .a, .b, .c,.com-scrollbar'
  )
  .forEach((el) => {
    el.setAttribute('data-simplebar', '');
  });

Над кодом типа .a, .b, .c, .com-scrollbar добавьте сюда имя класса div или другого элемента, и он будет применен, например, к полосе прокрутки simplebar:

<!-- 滚动条类最好是添加在这个div -->
<div class="com-scrollbar flex flex-col gap-4">
  <!-- 不建议在这个div添加滚动条类 -->
  <div class="content">
    <span>Контент</span>
    <span>Контент</span>
    <span>Контент</span>
    <span>Контент</span>
  </div>
</div>

Настройки цвета панели инструментов

Поскольку стиль плагина в каждой теме не одинаков, поэтому добавьте настройки цвета стиля инструмента, если цвет фиксируется непосредственно в коде, для некоторых тем стили не согласованы, фон может быть выбран в соответствии со стилем, чтобы установить цвет панели инструментов.

Режим отображения панели инструментов

  • Всегда включена: панель инструментов будет отображаться всегда и не исчезнет.
  • Отображение при наведении мыши: панель инструментов будет отображаться при наведении мыши на блок кода, при нажатии на блок кода будет отображаться мобильное устройство.

Плавающая панель инструментов

Панель инструментов всегда выдвигается и всегда отображается в области просмотра, следуя за страницей вниз, когда она скользит вниз, вверх, когда она скользит вверх, и возвращаясь в исходное положение, когда область просмотра выходит за пределы блока кода.

Высота кодового блока

Когда в статье много блоков кода и много строк кода в каждом блоке? Рекомендуется установить максимальную высоту (max-height) блока кода, в классическом редакторе заполнять высоту при вводе кода, в редакторе блоков использовать метод имени класса.

Настройки высоты блока кода классического редактора

Плагин WordPress Highlight Code Plugin Pure Highlightjs Backend Settings Help Documentation - LikaCloud
Классический редактор Вставка кода Набор кодовых блоков Максимальная высота

Как показано на рисунке, когда в классическом редакторе нажимается кнопка "Код" для вставки кода, по умолчанию устанавливается максимальная высота 380, которую можно изменить на другие числа.При вставке кода в конце по умолчанию будет добавлена пустая строка, которую рекомендуется удалять, если в блоке нет другого кода.(?) Сначала я думал, что это проблема с кодом, и, наконец, почему бы больше 20px пустой позиции, глядя на полдня первоначально вставлены в код при добавлении пустой строки, плачет? ‍♀️), ниже приведена классическая демонстрация редактора, максимальная высота 300px:

<?php
/**
 * PHP长行代码演示示例
 * 用于测试滚动条效果
 */
 
// 基本变量定义
$testString = "这是一个普通的字符串变量,用于演示PHP的基本语法特性";
$numberValue = 123456;
$arrayData = [
    'name' => '测试数据',
    'type' => '演示',
    'values' => [10, 20, 30, 40, 50]
];
 
// 这是一行很长的代码,包含了多个函数调用和字符串拼接,目的是测试滚动条效果。这里我们模拟一个复杂的数据处理过程,包含字符串操作、数组处理和数学计算等多种操作的组合。这段代码会将多个不同类型的数据进行转换和组合,生成一个复杂的结果字符串。
$longLine1 = "处理结果: " . strtoupper(trim(json_encode(array_merge($arrayData, ['timestamp' => time(), 'random' => rand(1000, 9999), 'status' => 'completed', 'message' => '这是一条很长的消息,用于增加字符串长度,测试滚动效果。这里继续添加一些内容,让这行代码变得足够长,以便在显示时需要滚动条才能完全查看。']), " \t\n\r\0\x0B"))) . " | 计算结果: " . (sqrt(pow($numberValue, 2) + pow($numberValue / 2, 2)) * 1.5) . " | 状态信息: 操作已完成,耗时 " . microtime(true) . " 毫秒,内存使用: " . memory_get_usage() . " 字节";
 
// 另一个长行代码,演示条件判断和函数嵌套的复杂情况
if (strlen($testString) > 10 && is_array($arrayData) && count($arrayData['values']) > 3 && $numberValue > 100000 && strpos($testString, 'PHP') !== false && (time() % 2 == 0)) {
    $longLine2 = "满足所有条件 | 数组信息: " . print_r($arrayData, true) . " | 字符串长度: " . strlen($testString) . " | 随机数: " . rand(1, 1000) . " | 当前时间: " . date('Y-m-d H:i:s') . " | 这是为了测试滚动条而添加的额外内容,继续增加长度直到足够长,确保在大多数编辑器或显示窗口中都需要滚动才能看到完整内容。这里再添加一些文字,让这行代码变得更长一些,以达到测试目的。";
} else {
    $longLine2 = "不满足所有条件的默认值";
}
 
// 函数定义
function processData($input) {
    if (!is_array($input)) {
        return "无效输入: 必须提供数组类型";
    }
    
    // 处理数据的逻辑
    $result = [];
    foreach ($input as $key => $value) {
        $result[strtoupper($key)] = is_string($value) ? strrev($value) : $value;
    }
    
    return $result;
}
 
// 类定义
class DemoClass {
    private $property1;
    protected $property2;
    public $property3;
    
    public function __construct($param1, $param2) {
        $this->property1 = $param1;
        $this->property2 = $param2;
        $this->property3 = "默认值: " . $param1 . " - " . $param2;
    }
    
    public function getCombined() {
        return $this->property1 . "|" . $this->property2 . "|" . $this->property3;
    }
}
 
// 执行演示
echo "PHP长行代码测试演示\n";
echo "=====================\n";
echo "1. 长行字符串1: " . $longLine1 . "\n\n";
echo "2. 长行字符串2: " . $longLine2 . "\n\n";
echo "3. 处理后的数据: " . print_r(processData($arrayData), true) . "\n\n";
 
$demoObj = new DemoClass("参数1", "参数2");
echo "4. 对象信息: " . $demoObj->getCombined() . "\n";
?>

На панели инструментов отображается кнопка Expand Collapse, когда блок кода Classic Editor имеет высоту.

Код классического редактора при отсутствии высоты

Плагин WordPress Highlight Code Plugin Pure Highlightjs Backend Settings Help Documentation - LikaCloud
Удаление значения высоты блока кода, когда высота не требуется
<?php
// 简单的PHP类示例
class Greeting {
    private $name;
    
    public function __construct($name) {
        $this->name = $name;
    }
    
    public function sayHello() {
        return "Hello, " . $this->name . "!";
    }
}
 
$greeter = new Greeting("World");
echo $greeter->sayHello();
?>

Классический редактор не показывает кнопку "Развернуть-свернуть", когда нет высоты.

Настройки высоты блока в редакторе кода блока

Плагин WordPress Highlight Code Plugin Pure Highlightjs Backend Settings Help Documentation - LikaCloud
Заполните высоту в названии класса, если вам нужна высота.

На данный момент существует всего несколько названий этого класса высоты:

h-200 {
  max-height: 200px; /*最大高度为200px*/
}
h-300 {
  max-height: 300px; /*最大高度为300px*/
}
h-380 {
  max-height: 380px; /*最大高度为380px*/
}
h-500 {
  max-height: 500px; /*最大高度为500px*/
}

Блок редактор не вручную ввести высоту, как классический редактор, используя фиксированный класс, ? Это может быть, что редактор просто связаться с редактором блока, последующие действия, чтобы увидеть, если вы можете код панели инструментов блока, чтобы добавить ручной ввод высоты функции, демо следующим образом:

<?php
/**
 * PHP长行代码演示示例
 * 用于测试滚动条效果
 */
 
// 基本变量定义
$testString = "这是一个普通的字符串变量,用于演示PHP的基本语法特性";
$numberValue = 123456;
$arrayData = [
    'name' => '测试数据',
    'type' => '演示',
    'values' => [10, 20, 30, 40, 50]
];
 
// 这是一行很长的代码,包含了多个函数调用和字符串拼接,目的是测试滚动条效果。这里我们模拟一个复杂的数据处理过程,包含字符串操作、数组处理和数学计算等多种操作的组合。这段代码会将多个不同类型的数据进行转换和组合,生成一个复杂的结果字符串。
$longLine1 = "处理结果: " . strtoupper(trim(json_encode(array_merge($arrayData, ['timestamp' => time(), 'random' => rand(1000, 9999), 'status' => 'completed', 'message' => '这是一条很长的消息,用于增加字符串长度,测试滚动效果。这里继续添加一些内容,让这行代码变得足够长,以便在显示时需要滚动条才能完全查看。']), " \t\n\r\0\x0B"))) . " | 计算结果: " . (sqrt(pow($numberValue, 2) + pow($numberValue / 2, 2)) * 1.5) . " | 状态信息: 操作已完成,耗时 " . microtime(true) . " 毫秒,内存使用: " . memory_get_usage() . " 字节";
 
// 另一个长行代码,演示条件判断和函数嵌套的复杂情况
if (strlen($testString) > 10 && is_array($arrayData) && count($arrayData['values']) > 3 && $numberValue > 100000 && strpos($testString, 'PHP') !== false && (time() % 2 == 0)) {
    $longLine2 = "满足所有条件 | 数组信息: " . print_r($arrayData, true) . " | 字符串长度: " . strlen($testString) . " | 随机数: " . rand(1, 1000) . " | 当前时间: " . date('Y-m-d H:i:s') . " | 这是为了测试滚动条而添加的额外内容,继续增加长度直到足够长,确保在大多数编辑器或显示窗口中都需要滚动才能看到完整内容。这里再添加一些文字,让这行代码变得更长一些,以达到测试目的。";
} else {
    $longLine2 = "不满足所有条件的默认值";
}
 
// 函数定义
function processData($input) {
    if (!is_array($input)) {
        return "无效输入: 必须提供数组类型";
    }
    
    // 处理数据的逻辑
    $result = [];
    foreach ($input as $key => $value) {
        $result[strtoupper($key)] = is_string($value) ? strrev($value) : $value;
    }
    
    return $result;
}
 
// 类定义
class DemoClass {
    private $property1;
    protected $property2;
    public $property3;
    
    public function __construct($param1, $param2) {
        $this->property1 = $param1;
        $this->property2 = $param2;
        $this->property3 = "默认值: " . $param1 . " - " . $param2;
    }
    
    public function getCombined() {
        return $this->property1 . "|" . $this->property2 . "|" . $this->property3;
    }
}
 
// 执行演示
echo "PHP长行代码测试演示\n";
echo "=====================\n";
echo "1. 长行字符串1: " . $longLine1 . "\n\n";
echo "2. 长行字符串2: " . $longLine2 . "\n\n";
echo "3. 处理后的数据: " . print_r(processData($arrayData), true) . "\n\n";
 
$demoObj = new DemoClass("参数1", "参数2");
echo "4. 对象信息: " . $demoObj->getCombined() . "\n";
?>

При наличии высоты на панели инструментов отображается кнопка Expand Collapse.

Когда код редактора блоков не имеет высоты

Плагин WordPress Highlight Code Plugin Pure Highlightjs Backend Settings Help Documentation - LikaCloud
Оставьте название класса пустым, если высота не требуется

Если вам не нужна высота или у вас очень мало кода, вам не нужно задавать имя класса высоты.При отсутствии высоты на панели инструментов не будет отображаться кнопка развернуть белый свернутый экран.Демоверсия выглядит следующим образом

<?php
// 简单的PHP类示例
class Greeting {
    private $name;
    
    public function __construct($name) {
        $this->name = $name;
    }
    
    public function sayHello() {
        return "Hello, " . $this->name . "!";
    }
}
 
$greeter = new Greeting("World");
echo $greeter->sayHello();
?>

Впоследствии будет обновляться спрос на обновление плагина, например, плагины имеют какие-либо проблемы, пожалуйста, добавьтеГруппа QQ 1398231Обратная связь!