| 开发者 |
webberzone
ajay |
|---|---|
| 更新时间 | 2026年6月10日 23:49 |
| 捐献地址: | 去捐款 |
| PHP版本: | 7.4 及以上 |
| WordPress版本: | 7.0 |
| 版权: | GPLv2 or later |
| 版权网址: | 版权信息 |
core/code block with Prism.js highlighting — no shortcodes, no block replacement, no risk of breaking existing posts.
Simply activate the plugin and your code blocks will instantly display beautiful, readable syntax highlighting on the frontend. Choose from 40+ programming languages and 21 colour themes, all controlled from the block editor's Inspector Controls sidebar.
Two highlighting modes
Pick the rendering mode that best fits your site from the settings page:
core/code. Existing posts are never invalidated. Deactivate the plugin and your blocks are still valid standard WordPress code blocks.wzcbh_languages filter to add or remove entries from the language picker.
Included themes (21)
A11y Dark, Coldark Cold (Light), Coldark Dark, Dracula, Duotone Dark, Duotone Light, GitHub (Light), Gruvbox Dark, Gruvbox Light, Lucario, Material Dark, Material Light, Night Owl, Nord, One Dark, One Light, Shades of Purple, Solarized Dark, Synthwave '84, VS Code Dark+, Xonokai (Monokai).
Per-block features
1,3-5) to visually highlight using Prism's line-highlight plugin.wzcbh_languages — Filter the language list array (slug => label)wzcbh_color_scheme_css_url — Override the Prism theme CSS URLwzcbh_force_load_assets — Force Prism assets to load on every pagewp-content/plugins/ directory. You should end up with a webberzone-code-block-highlighting/ folder.No. WebberZone Code Block Highlighting uses JavaScript and PHP filters to extend the native core/code block. It never swaps the block for a custom one, so existing posts are never invalidated and the plugin can be deactivated without leaving behind broken blocks.
No. Because the plugin extends core/code rather than replacing it, deactivating simply removes the highlighting. Your code content is stored in standard WordPress block markup and remains valid.
40 languages out of the box: Apache Config, Bash, C, C++, C#, CSS, Dart, Docker, F#, Go, GraphQL, Groovy, Haskell, HTML, Java, JavaScript, JSON, JSX, Kotlin, Lua, Markdown, Nginx, Objective-C, Perl, PHP, PowerShell, Python, R, Ruby, Rust, Sass, Scala, SQL, Swift, TOML, TSX, TypeScript, Vim, XML, and YAML.
Use the wzcbh_languages filter to add or remove entries from the language picker. Note: adding a language to the filter only affects the UI dropdown — the corresponding Prism.js grammar must also be available on the frontend (either bundled in frontend.js or loaded separately).
build-prism.js.includes/assets/.includes/admin/class-settings.php.npm run build:prism.wzcbh_color_scheme_css_url filter to point to any CSS file without touching the plugin source.
In client-side mode (the default), Prism.js runs in the visitor's browser and highlights your code on page load. This mode enables interactive toolbar features such as copy-to-clipboard and expand/collapse. In server-side mode, the plugin uses highlight.php to pre-render the highlighted markup on the server. No JavaScript is loaded for highlighting, which is great for performance, Core Web Vitals, and sites with strict content-security policies. Both modes share the same 21 Prism themes and produce visually identical results, so you can switch freely from Settings > Code Block Highlighting.
Yes. When server-side mode is enabled, syntax colours are baked into the HTML on the server — no Prism.js or any other JavaScript is enqueued for highlighting.
No. Theme CSS and (in client-side mode) Prism JS are only enqueued on pages that contain at least one code block. All other pages are unaffected. Use the wzcbh_force_load_assets filter to override this behaviour if needed.
Enter a comma-separated list of lines or ranges in the Highlight Lines field in the Inspector Controls sidebar (e.g. 1,3-5,8). This maps to the data-line attribute consumed by the Prism line-highlight plugin.
Yes. Use the Title field in the Inspector Controls sidebar. The label is displayed in the Prism toolbar above the code block.
The plugin ships with 21 Prism themes. The active theme is selected globally on the settings page (Settings > Code Block Highlighting). Per-block theme switching is not currently supported.
Yes. The plugin is built specifically for the Gutenberg block editor (WordPress 6.6+) and uses the native block filter APIs. It does not support the Classic Editor.
Report security bugs through the Patchstack Vulnerability Disclosure Program. The Patchstack team will validate, triage, and handle any reported vulnerabilities. Report a security vulnerability.
language-* class on <code> elements in client mode when the saved block HTML already carried the class.core/code with Prism.js syntax highlighting — no block replacement, no block validation errors.wzcbh_languages, wzcbh_color_scheme_css_url, wzcbh_force_load_assets.