{"id":9144,"date":"2025-04-01T01:30:11","date_gmt":"2025-04-01T01:30:11","guid":{"rendered":"https:\/\/s-o-s.net\/syntax-highlighting-code-block-with-server-side-rendering\/"},"modified":"2025-04-01T01:30:11","modified_gmt":"2025-04-01T01:30:11","slug":"syntax-highlighting-code-block-with-server-side-rendering","status":"publish","type":"post","link":"http:\/\/s-o-s.net\/en_gb\/syntax-highlighting-code-block-with-server-side-rendering\/","title":{"rendered":"Syntax-highlighting Code Block (with Server-side Rendering)"},"content":{"rendered":"<p> <br \/>\n<\/p>\n<article id=\"post-107191\" class=\"alignwide post-107191 plugin type-plugin status-publish hentry plugin_section-blocks plugin_tags-block plugin_tags-code plugin_tags-code-highlighting plugin_tags-code-syntax plugin_tags-syntax-highlight plugin_contributors-allejo plugin_contributors-westonruter plugin_committers-westonruter\">\n<div class=\"plugin-banner\" id=\"plugin-banner-syntax-highlighting-code-block\"><\/div>\n<header class=\"plugin-header\">\n<div class=\"entry-heading-container\">\n<div>\n<div class=\"entry-thumbnail\">\n\t\t\t\t\t<img decoding=\"async\" class=\"plugin-icon\" src=\"https:\/\/ps.w.org\/syntax-highlighting-code-block\/assets\/icon.svg?rev=2131108\" alt=\"\">\t\t\t\t<\/div>\n<div>\n<h1 class=\"plugin-title\">Syntax-highlighting Code Block (with Server-side Rendering)<\/h1>\n<p>\t\t\t\t\t<span class=\"byline\">By <span class=\"author vcard\"><a target=\"_blank\" class=\"url fn n\" href=\"https:\/\/profiles.wordpress.org\/westonruter\/\" rel=\"noopener\">Weston Ruter<\/a><\/span><\/span>\n\t\t\t\t<\/div>\n<\/p><\/div>\n<div class=\"plugin-actions\">\n<div class=\"wp-block-button is-small plugin-download download-button\"><a target=\"_blank\" class=\"wp-block-button__link wp-element-button\" href=\"https:\/\/downloads.wordpress.org\/plugin\/syntax-highlighting-code-block.1.5.1.zip\" rel=\"noopener\">Download<\/a><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/header>\n<p><!-- .entry-header --><\/p>\n<p>\t<span id=\"description\"><\/span><br \/>\n\t<span id=\"reviews\"><\/span><br \/>\n\t<span id=\"installation\"><\/span><br \/>\n\t<span id=\"developers\"><\/span><br \/>\n\t<span id=\"advanced\" class=\"\"><\/span><br \/>\n\t<span id=\"section-links\"><\/p>\n<ul class=\"tabs clear\">\n<li id=\"tablink-description\"><a target=\"_blank\" href=\"https:\/\/wordpress.org\/plugins\/syntax-highlighting-code-block\/#description\" rel=\"noopener\">Details<\/a><\/li>\n<li id=\"tablink-reviews\"><a target=\"_blank\" href=\"https:\/\/wordpress.org\/plugins\/syntax-highlighting-code-block\/#reviews\" rel=\"noopener\">Reviews<\/a><\/li>\n<li id=\"tablink-developers\"><a target=\"_blank\" href=\"https:\/\/wordpress.org\/plugins\/syntax-highlighting-code-block\/#developers\" rel=\"noopener\">Development<\/a><\/li>\n<\/ul>\n<div id=\"link-support\">\n\t\t\t<a target=\"_blank\" href=\"https:\/\/wordpress.org\/support\/plugin\/syntax-highlighting-code-block\/\" rel=\"noopener\">Support<\/a>\n\t\t<\/div>\n<p>\t<\/span><br \/>\n\t<script type=\"text\/javascript\">if ( '#changelog' == window.location.hash ) { window.setTimeout( function() { window.location.hash=\"#developers\"; }, 10 ); }<\/script><\/p>\n<div class=\"entry-content\">\n<div id=\"tab-description\" class=\"plugin-description section\">\n<h2 id=\"description-header\">Description<\/h2>\n<p>This plugin extends the Code block in WordPress core to add syntax highlighting which is rendered on the server. Pre-existing Code blocks on a site are automatically extended to include syntax highlighting. Doing server-side syntax highlighting eliminates the need to enqueue any JavaScript on the frontend (e.g. Highlight.js or Prism.js) and this ensures there is no flash of unhighlighted code (FOUC?). Reducing script on the frontend improves frontend performance, and it also allows for the syntax highlighted code to appear properly in AMP pages as rendered by the <a target=\"_blank\" href=\"https:\/\/amp-wp.org\" rel=\"nofollow ugc noopener\">official AMP plugin<\/a> (see also <a target=\"_blank\" href=\"https:\/\/github.com\/ampproject\/amp-wp\/issues\/972\" rel=\"nofollow ugc noopener\">ampproject\/amp-wp#972<\/a>) or when JavaScript is turned off in the browser.<\/p>\n<p>This extended Code block uses language auto-detection to add syntax highlighting, but you can override the language in the block\u2019s settings sidebar. (There is currently no syntax highlighting of the Code block in the editor, but see <a target=\"_blank\" href=\"https:\/\/github.com\/westonruter\/syntax-highlighting-code-block\/issues\/8\" rel=\"nofollow ugc noopener\">#8<\/a>.) The plugin supports all <a target=\"_blank\" href=\"https:\/\/highlightjs.org\/static\/demo\/\" rel=\"nofollow ugc noopener\">programming languages<\/a> that <a target=\"_blank\" href=\"https:\/\/github.com\/scrivo\/highlight.php\" rel=\"nofollow ugc noopener\">highlight.php<\/a> supports (being a port of <a target=\"_blank\" href=\"https:\/\/highlightjs.org\/\" rel=\"nofollow ugc noopener\">highlight.js<\/a>). The Code block also is extended to support specifying lines to highlight which get marked up with <code>mark<\/code> elements (including in RSS feeds). There is also a checkbox for whether to show line numbers on the frontend (with the numbers being non-selectable). Lastly, given inconsistencies across themes regarding whether lines in a Code block should be wrapped, this plugin adds styling to force them to no-wrap by default, with a checkbox to opt in to wrapping when desired.<\/p>\n<p>For advanced usage, please see the <a target=\"_blank\" href=\"https:\/\/github.com\/westonruter\/syntax-highlighting-code-block\/wiki\" rel=\"nofollow ugc noopener\">plugin wiki<\/a>.<\/p>\n<p>This plugin is <a target=\"_blank\" href=\"https:\/\/github.com\/westonruter\/syntax-highlighting-code-block\" rel=\"nofollow ugc noopener\">developed on GitHub<\/a>. See <a target=\"_blank\" href=\"https:\/\/github.com\/westonruter\/syntax-highlighting-code-block\/issues\" rel=\"nofollow ugc noopener\">list of current issues<\/a> with the plugin. Please feel free to file any additional issues or requests that you may come across. <a target=\"_blank\" href=\"https:\/\/github.com\/westonruter\/syntax-highlighting-code-block\/pulls\" rel=\"nofollow ugc noopener\">Pull requests<\/a> are welcome. See <a target=\"_blank\" href=\"https:\/\/github.com\/westonruter\/syntax-highlighting-code-block\/wiki\/Contributing\" rel=\"nofollow ugc noopener\">contributing information<\/a>.<\/p>\n<h4>Credits<\/h4>\n<p>This is a fork of <a target=\"_blank\" href=\"https:\/\/github.com\/mkaz\/code-syntax-block\" rel=\"nofollow ugc noopener\">Code Syntax Block<\/a> by <a target=\"_blank\" href=\"https:\/\/mkaz.blog\/\" rel=\"nofollow ugc noopener\">Marcus Kazmierczak<\/a> (mkaz), which is also <a target=\"_blank\" href=\"https:\/\/wordpress.org\/plugins\/code-syntax-block\/\" rel=\"ugc noopener\">available on WordPress.org<\/a>. Copyright (c) 2018 Marcus Kazmierczak. Licensed under GPL 2.0 or later.<\/p>\n<p><a target=\"_blank\" href=\"https:\/\/github.com\/scrivo\/highlight.php\" rel=\"nofollow ugc noopener\">highlight.php<\/a> is released under the BSD 3-Clause License. Copyright \u00a9 2006-2013, Ivan Sagalaev (maniac@softwaremaniacs.org), highlight.js (original author). Copyright \u00a9 2013, Geert Bergman (geert@scrivo.nl), highlight.php<\/p>\n<\/div>\n<div id=\"screenshots\" class=\"plugin-screenshots section\">\n<h2 id=\"screenshots-header\">Screenshots<\/h2>\n<ul class=\"plugin-screenshots\">\n<li>\n<figure><a target=\"_blank\" href=\"https:\/\/ps.w.org\/syntax-highlighting-code-block\/assets\/screenshot-1.png?rev=2302245\" rel=\"nofollow noopener\"><img decoding=\"async\" class=\"screenshot\" src=\"https:\/\/ps.w.org\/syntax-highlighting-code-block\/assets\/screenshot-1.png?rev=2302245\" alt=\"\"><\/a><figcaption>Code blocks can be added as normal, optionally overriding the auto-detected language. Also specify any lines to be highlighted, whether to show line numbers, and if the lines should wrap.<\/figcaption><\/figure>\n<\/li>\n<li>\n<figure><a target=\"_blank\" href=\"https:\/\/ps.w.org\/syntax-highlighting-code-block\/assets\/screenshot-2.png?rev=2302245\" rel=\"nofollow noopener\"><img decoding=\"async\" class=\"screenshot\" src=\"https:\/\/ps.w.org\/syntax-highlighting-code-block\/assets\/screenshot-2.png?rev=2302245\" alt=\"\"><\/a><figcaption>The Code block renders with syntax highlighting on the frontend without any JavaScript enqueued. Stylesheets are added only when block is on the page.<\/figcaption><\/figure>\n<\/li>\n<\/ul>\n<\/div>\n<div id=\"tab-reviews\" class=\"plugin-reviews section\">\n<h2 id=\"reviews-header\">Reviews<\/h2>\n<div class=\"plugin-reviews\">\n<article class=\"plugin-review\">\n<div class=\"review-avatar\">\n\t\t\t\t\t\t<img decoding=\"async\" alt=\"\" src=\"https:\/\/secure.gravatar.com\/avatar\/81d6cd29d711b1b8f768e3f31b7493de331a70168494303d83b73c2dbeca125c?s=60&amp;d=retro&amp;r=g\" srcset=\"https:\/\/secure.gravatar.com\/avatar\/81d6cd29d711b1b8f768e3f31b7493de331a70168494303d83b73c2dbeca125c?s=120&amp;d=retro&amp;r=g 2x\" class=\"avatar avatar-60 photo\" height=\"60\" width=\"60\">\t\t\t\t\t<\/div>\n<div class=\"review\">\n<header>\n<div class=\"header-top\">\n<div class=\"wporg-ratings\" aria-label=\"5 out of 5 stars\" data-title-template=\"%s out of 5 stars\" data-rating=\"5\" style=\"color:#ffb900;\"><span class=\"dashicons dashicons-star-filled\"><\/span><span class=\"dashicons dashicons-star-filled\"><\/span><span class=\"dashicons dashicons-star-filled\"><\/span><span class=\"dashicons dashicons-star-filled\"><\/span><span class=\"dashicons dashicons-star-filled\"><\/span><\/div>\n<h3 class=\"review-title\"><a target=\"_blank\" class=\"url\" href=\"https:\/\/wordpress.org\/support\/topic\/code-block-is-not-100-of-wp-users-bro\/\" rel=\"noopener\">code block is not 100% of wp users bro<\/a><\/h3>\n<\/p><\/div>\n<div class=\"header-bottom\">\n\t\t\t\t\t\t\t\t<span class=\"review-author author vcard\"><a target=\"_blank\" href=\"https:\/\/profiles.wordpress.org\/audioscavenger\/\" title=\"Posts by audioscavenger\" rel=\"author noopener\">audioscavenger<\/a><\/span><br \/>\n\t\t\t\t\t\t\t\t<span class=\"review-date\">April 11, 2024<\/span>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n<\/header>\n<div class=\"review-content\">no one wants to conduct a real study to see how many of use hate the code block.<\/div>\n<\/p><\/div>\n<\/article>\n<article class=\"plugin-review\">\n<div class=\"review-avatar\">\n\t\t\t\t\t\t<img decoding=\"async\" alt=\"\" src=\"https:\/\/secure.gravatar.com\/avatar\/8a93e92ac024cb0f2b659dc8fd82d168193e82f0fd94ba830f79ae69f3bbc96e?s=60&amp;d=retro&amp;r=g\" srcset=\"https:\/\/secure.gravatar.com\/avatar\/8a93e92ac024cb0f2b659dc8fd82d168193e82f0fd94ba830f79ae69f3bbc96e?s=120&amp;d=retro&amp;r=g 2x\" class=\"avatar avatar-60 photo\" height=\"60\" width=\"60\">\t\t\t\t\t<\/div>\n<div class=\"review\">\n<header>\n<div class=\"header-top\">\n<div class=\"wporg-ratings\" aria-label=\"5 out of 5 stars\" data-title-template=\"%s out of 5 stars\" data-rating=\"5\" style=\"color:#ffb900;\"><span class=\"dashicons dashicons-star-filled\"><\/span><span class=\"dashicons dashicons-star-filled\"><\/span><span class=\"dashicons dashicons-star-filled\"><\/span><span class=\"dashicons dashicons-star-filled\"><\/span><span class=\"dashicons dashicons-star-filled\"><\/span><\/div>\n<h3 class=\"review-title\"><a target=\"_blank\" class=\"url\" href=\"https:\/\/wordpress.org\/support\/topic\/very-good-job-83\/\" rel=\"noopener\">Very good job!<\/a><\/h3>\n<\/p><\/div>\n<div class=\"header-bottom\">\n\t\t\t\t\t\t\t\t<span class=\"review-author author vcard\"><a target=\"_blank\" href=\"https:\/\/profiles.wordpress.org\/salvatorenoschese\/\" title=\"Posts by Salvatore Noschese\" rel=\"author noopener\">Salvatore Noschese<\/a><\/span><br \/>\n\t\t\t\t\t\t\t\t<span class=\"review-date\">June 3, 2023<\/span><br \/>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<span class=\"review-replies\">1 reply<\/span>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n<\/header>\n<div class=\"review-content\">missed just a download and\/or copy button.<\/p>\n<p>also for theme, maybe is best to update \u201cusage instruction\u201d! only after some search I understood can be changed via customized menu.<\/p>\n<p>anyway, looks so good.<\/p>\n<p>ty.<\/p><\/div>\n<\/p><\/div>\n<\/article>\n<article class=\"plugin-review\">\n<div class=\"review-avatar\">\n\t\t\t\t\t\t<img decoding=\"async\" alt=\"\" src=\"https:\/\/secure.gravatar.com\/avatar\/6ac7c2e9bb1e43d09d87b780c06c09b391a52680c3b1512bcd094176376a1a26?s=60&amp;d=retro&amp;r=g\" srcset=\"https:\/\/secure.gravatar.com\/avatar\/6ac7c2e9bb1e43d09d87b780c06c09b391a52680c3b1512bcd094176376a1a26?s=120&amp;d=retro&amp;r=g 2x\" class=\"avatar avatar-60 photo\" height=\"60\" width=\"60\">\t\t\t\t\t<\/div>\n<div class=\"review\">\n<header>\n<div class=\"header-top\">\n<div class=\"wporg-ratings\" aria-label=\"5 out of 5 stars\" data-title-template=\"%s out of 5 stars\" data-rating=\"5\" style=\"color:#ffb900;\"><span class=\"dashicons dashicons-star-filled\"><\/span><span class=\"dashicons dashicons-star-filled\"><\/span><span class=\"dashicons dashicons-star-filled\"><\/span><span class=\"dashicons dashicons-star-filled\"><\/span><span class=\"dashicons dashicons-star-filled\"><\/span><\/div>\n<h3 class=\"review-title\"><a target=\"_blank\" class=\"url\" href=\"https:\/\/wordpress.org\/support\/topic\/this-works-nicely\/\" rel=\"noopener\">This works nicely.<\/a><\/h3>\n<\/p><\/div>\n<div class=\"header-bottom\">\n\t\t\t\t\t\t\t\t<span class=\"review-author author vcard\"><a target=\"_blank\" href=\"https:\/\/profiles.wordpress.org\/olliejones\/\" title=\"Posts by OllieJones\" rel=\"author noopener\">OllieJones<\/a><\/span><br \/>\n\t\t\t\t\t\t\t\t<span class=\"review-date\">May 25, 2023<\/span>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n<\/header>\n<div class=\"review-content\">Thanks for this. It\u2019s really nice.<\/div>\n<\/p><\/div>\n<\/article>\n<article class=\"plugin-review\">\n<div class=\"review-avatar\">\n\t\t\t\t\t\t<img loading=\"lazy\" decoding=\"async\" alt=\"\" src=\"https:\/\/secure.gravatar.com\/avatar\/5c6cbac107c132c57a2bb2d7a5f8b0c31d899519c58ea4b22f62eb718541afce?s=60&amp;d=retro&amp;r=g\" srcset=\"https:\/\/secure.gravatar.com\/avatar\/5c6cbac107c132c57a2bb2d7a5f8b0c31d899519c58ea4b22f62eb718541afce?s=120&amp;d=retro&amp;r=g 2x\" class=\"avatar avatar-60 photo\" height=\"60\" width=\"60\">\t\t\t\t\t<\/div>\n<div class=\"review\">\n<header>\n<div class=\"header-top\">\n<div class=\"wporg-ratings\" aria-label=\"5 out of 5 stars\" data-title-template=\"%s out of 5 stars\" data-rating=\"5\" style=\"color:#ffb900;\"><span class=\"dashicons dashicons-star-filled\"><\/span><span class=\"dashicons dashicons-star-filled\"><\/span><span class=\"dashicons dashicons-star-filled\"><\/span><span class=\"dashicons dashicons-star-filled\"><\/span><span class=\"dashicons dashicons-star-filled\"><\/span><\/div>\n<h3 class=\"review-title\"><a target=\"_blank\" class=\"url\" href=\"https:\/\/wordpress.org\/support\/topic\/nice-plugin-thank-you-16\/\" rel=\"noopener\">Nice plugin, thank you !<\/a><\/h3>\n<\/p><\/div>\n<div class=\"header-bottom\">\n\t\t\t\t\t\t\t\t<span class=\"review-author author vcard\"><a target=\"_blank\" href=\"https:\/\/profiles.wordpress.org\/chaton666\/\" title=\"Posts by Marie Comet\" rel=\"author noopener\">Marie Comet<\/a><\/span><br \/>\n\t\t\t\t\t\t\t\t<span class=\"review-date\">November 4, 2022<\/span>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n<\/header>\n<div class=\"review-content\">Works great, thanks !<\/div>\n<\/p><\/div>\n<\/article>\n<article class=\"plugin-review\">\n<div class=\"review-avatar\">\n\t\t\t\t\t\t<img loading=\"lazy\" decoding=\"async\" alt=\"\" src=\"https:\/\/secure.gravatar.com\/avatar\/fc29a040754a796607f46a128e6b54e53d1491994ec3326df3ef015c23bb8f37?s=60&amp;d=retro&amp;r=g\" srcset=\"https:\/\/secure.gravatar.com\/avatar\/fc29a040754a796607f46a128e6b54e53d1491994ec3326df3ef015c23bb8f37?s=120&amp;d=retro&amp;r=g 2x\" class=\"avatar avatar-60 photo\" height=\"60\" width=\"60\">\t\t\t\t\t<\/div>\n<div class=\"review\">\n<header>\n<div class=\"header-top\">\n<div class=\"wporg-ratings\" aria-label=\"5 out of 5 stars\" data-title-template=\"%s out of 5 stars\" data-rating=\"5\" style=\"color:#ffb900;\"><span class=\"dashicons dashicons-star-filled\"><\/span><span class=\"dashicons dashicons-star-filled\"><\/span><span class=\"dashicons dashicons-star-filled\"><\/span><span class=\"dashicons dashicons-star-filled\"><\/span><span class=\"dashicons dashicons-star-filled\"><\/span><\/div>\n<h3 class=\"review-title\"><a target=\"_blank\" class=\"url\" href=\"https:\/\/wordpress.org\/support\/topic\/its-time-to-switch-to-get-more-performance\/\" rel=\"noopener\">It\u2019s time to switch to get more performance!<\/a><\/h3>\n<\/p><\/div>\n<div class=\"header-bottom\">\n\t\t\t\t\t\t\t\t<span class=\"review-author author vcard\"><a target=\"_blank\" href=\"https:\/\/profiles.wordpress.org\/gwynethllewelyn\/\" title=\"Posts by Gwyneth Llewelyn\" rel=\"author noopener\">Gwyneth Llewelyn<\/a><\/span><br \/>\n\t\t\t\t\t\t\t\t<span class=\"review-date\">July 13, 2022<\/span><br \/>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<span class=\"review-replies\">1 reply<\/span>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n<\/header>\n<div class=\"review-content\">I confess, I\u2019ve been a happy user of Code Syntax Block for quite a while \u2014 a plugin which the author, Weston Router, clearly states that Syntax Highlighting (Code Block) is based upon.<\/p>\n<p>Alas, however, all the pages I had with the older plugin would suffer from an inevitable rendering slowdown \u2014 there is so much Javascript on web pages these days that such a slowdown is inevitable, and this is especially true to those scripts that attempt to recognise the language automatically \u2014 something that will consume plenty of CPU cycles on the browser. Parsing the language is also no mean feature by itself (I know, I\u2019ve been doing some experiments for some code editors, and, believe me, it\u2019s tough!).<\/p>\n<p>So why force the end-user to bear the burden of all that work? It makes much more sense to pre-render everything on the server, and then let the web server send the already-parsed HTML from its cache. That way, the end-user will already have everything on their browser, no need to wait for parsing!<\/p>\n<p>Also, if you \u2018forget\u2019 to set the language that your code is in (it happens\u2026), the auto-detecting feature will only run on the server, and just once, when you save the post you\u2019re writing. Even if it takes a fraction of a second more to save, think of how much time all those users will save when they get the already-rendered page!<\/p>\n<p>So, this plugin is definitely recommended. As a bonus: if you are already using some sort of code block on your WP setup, once you turn off whatever plugin you were using, Syntax Highlighting (Code Block) will immediately pick it up and start its magic (you might need to open and save all the pages you\u2019ve got code on, though \u2014 I\u2019m not quite sure if that\u2019s really the case). That means zero effort (beyond saving) \u2014 what you already had will continue to work. And, naturally enough, when you disable this plugin, your code block will just revert to the internal WP code block instead \u2014 nothing will be \u2018lost\u2019 that way!<\/p>\n<p>If you\u2019re still hesitant and reading this to the end\u2026 while you wasted your time here, think of how many of your users would have saved their time if you already had this plugin installed \ud83d\ude42<\/p><\/div>\n<\/p><\/div>\n<\/article>\n<article class=\"plugin-review\">\n<div class=\"review-avatar\">\n\t\t\t\t\t\t<img loading=\"lazy\" decoding=\"async\" alt=\"\" src=\"https:\/\/secure.gravatar.com\/avatar\/32d51f2a4043c936cd42663e3917116ce03a1b8f8d128e5df657e40aa3941716?s=60&amp;d=retro&amp;r=g\" srcset=\"https:\/\/secure.gravatar.com\/avatar\/32d51f2a4043c936cd42663e3917116ce03a1b8f8d128e5df657e40aa3941716?s=120&amp;d=retro&amp;r=g 2x\" class=\"avatar avatar-60 photo\" height=\"60\" width=\"60\">\t\t\t\t\t<\/div>\n<div class=\"review\">\n<header>\n<div class=\"header-top\">\n<div class=\"wporg-ratings\" aria-label=\"5 out of 5 stars\" data-title-template=\"%s out of 5 stars\" data-rating=\"5\" style=\"color:#ffb900;\"><span class=\"dashicons dashicons-star-filled\"><\/span><span class=\"dashicons dashicons-star-filled\"><\/span><span class=\"dashicons dashicons-star-filled\"><\/span><span class=\"dashicons dashicons-star-filled\"><\/span><span class=\"dashicons dashicons-star-filled\"><\/span><\/div>\n<h3 class=\"review-title\"><a target=\"_blank\" class=\"url\" href=\"https:\/\/wordpress.org\/support\/topic\/muy-bueno-752\/\" rel=\"noopener\">Muy bueno!<\/a><\/h3>\n<\/p><\/div>\n<div class=\"header-bottom\">\n\t\t\t\t\t\t\t\t<span class=\"review-author author vcard\"><a target=\"_blank\" href=\"https:\/\/profiles.wordpress.org\/diegoamorin\/\" title=\"Posts by diegoamorin\" rel=\"author noopener\">diegoamorin<\/a><\/span><br \/>\n\t\t\t\t\t\t\t\t<span class=\"review-date\">April 19, 2022<\/span>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n<\/header>\n<div class=\"review-content\">No agrega bloques nuevos a WordPress, ya que potencia el bloque de c\u00f3digo existente. Soporta gran cantidad de Lenguajes, puedes mostrar l\u00edneas y marcar ciertas partes del c\u00f3digo. \u00a1Vaya todo lo que necesito!<\/p>\n<p>Y no hay que configurar nada!<\/p><\/div>\n<\/p><\/div>\n<\/article><\/div>\n<p>\t\t<a target=\"_blank\" class=\"reviews-link\" href=\"https:\/\/wordpress.org\/support\/plugin\/syntax-highlighting-code-block\/reviews\/\" rel=\"noopener\"><br \/>\n\t\t\tRead all 26 reviews\t\t<\/a><\/div>\n<div id=\"tab-developers\" class=\"plugin-developers section\">\n<h2 id=\"developers-header\">Contributors &amp; Developers<\/h2>\n<div class=\"plugin-contributors\">\n<p>\u201cSyntax-highlighting Code Block (with Server-side Rendering)\u201d is open source software. The following people have contributed to this plugin.<\/p>\n<p><span class=\"screen-reader-text\">Contributors<\/span><\/p>\n<ul id=\"contributors-list\" class=\"contributors-list\">\n<li>\n\t\t\t\t<img loading=\"lazy\" decoding=\"async\" alt=\"\" src=\"https:\/\/secure.gravatar.com\/avatar\/63b496ec3806485229b4f934b26643dad6e734ca6e6ef7b38c846205b01cd37f?s=32&amp;d=mm&amp;r=g\" srcset=\"https:\/\/secure.gravatar.com\/avatar\/63b496ec3806485229b4f934b26643dad6e734ca6e6ef7b38c846205b01cd37f?s=64&amp;d=mm&amp;r=g 2x\" class=\"avatar avatar-32 photo\" height=\"32\" width=\"32\">\t\t\t\t<a target=\"_blank\" href=\"https:\/\/profiles.wordpress.org\/westonruter\/\" rel=\"noopener\"><br \/>\n\t\t\t\t\tWeston Ruter\t\t\t\t<\/a>\n\t\t\t<\/li>\n<li>\n\t\t\t\t<img loading=\"lazy\" decoding=\"async\" alt=\"\" src=\"https:\/\/secure.gravatar.com\/avatar\/d66778910a0fa5d2df6f837ebcb61c9b2385767450d7e7325b4afa637b205988?s=32&amp;d=mm&amp;r=g\" srcset=\"https:\/\/secure.gravatar.com\/avatar\/d66778910a0fa5d2df6f837ebcb61c9b2385767450d7e7325b4afa637b205988?s=64&amp;d=mm&amp;r=g 2x\" class=\"avatar avatar-32 photo\" height=\"32\" width=\"32\">\t\t\t\t<a target=\"_blank\" href=\"https:\/\/profiles.wordpress.org\/allejo\/\" rel=\"noopener\"><br \/>\n\t\t\t\t\tVladimir Jimenez\t\t\t\t<\/a>\n\t\t\t<\/li>\n<\/ul><\/div>\n<div class=\"plugin-development\">\n<p>\u201cSyntax-highlighting Code Block (with Server-side Rendering)\u201d has been translated into 9 locales. Thank you to <a target=\"_blank\" href=\"https:\/\/translate.wordpress.org\/projects\/wp-plugins\/syntax-highlighting-code-block\/contributors\" rel=\"noopener\">the translators<\/a> for their contributions.<\/p>\n<p><a target=\"_blank\" href=\"https:\/\/translate.wordpress.org\/projects\/wp-plugins\/syntax-highlighting-code-block\" rel=\"noopener\">Translate \u201cSyntax-highlighting Code Block (with Server-side Rendering)\u201d into your language.<\/a><\/p>\n<h3>Interested in development?<\/h3>\n<p><a target=\"_blank\" href=\"https:\/\/plugins.trac.wordpress.org\/browser\/syntax-highlighting-code-block\/\" rel=\"noopener\" class=\"broken_link\">Browse the code<\/a>, check out the <a target=\"_blank\" href=\"https:\/\/plugins.svn.wordpress.org\/syntax-highlighting-code-block\/\" rel=\"noopener\">SVN repository<\/a>, or subscribe to the <a target=\"_blank\" href=\"https:\/\/plugins.trac.wordpress.org\/log\/syntax-highlighting-code-block\/\" rel=\"noopener\" class=\"broken_link\">development log<\/a> by <a target=\"_blank\" href=\"https:\/\/plugins.trac.wordpress.org\/log\/syntax-highlighting-code-block\/?limit=100&amp;mode=stop_on_copy&amp;format=rss\" rel=\"noopener\" class=\"broken_link\">RSS<\/a>.<\/p>\n<\/div>\n<\/div>\n<div id=\"tab-changelog\" class=\"plugin-changelog section\">\n<h2 id=\"changelog-header\">Changelog<\/h2>\n<p>For the plugin\u2019s changelog, please see <a target=\"_blank\" href=\"https:\/\/github.com\/westonruter\/syntax-highlighting-code-block\/releases\" rel=\"nofollow ugc noopener\">the Releases page on GitHub<\/a>.<\/p>\n<\/div><\/div>\n<p><!-- .entry-content --><\/p>\n<p>\t<!-- .entry-meta --><br \/>\n<\/article>\n<p><br \/>\n<br \/><a href=\"https:\/\/wordpress.org\/plugins\/syntax-highlighting-code-block\/\" target=\"_blank\" rel=\"noopener\">Source link <\/a><\/p>","protected":false},"excerpt":{"rendered":"<p>Syntax-highlighting Code Block (with Server-side Rendering) By Weston Ruter Download Details Reviews Development Support Description This plugin extends the Code block in WordPress core to add syntax highlighting which is rendered on the server. Pre-existing Code blocks on a site are automatically extended to include syntax highlighting. Doing server-side syntax highlighting eliminates the need to [&hellip;]<\/p>","protected":false},"author":40,"featured_media":9145,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"give_campaign_id":0,"footnotes":""},"categories":[42,39,40],"tags":[2207,2062,5680,5679,5678],"class_list":["post-9144","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-block-plugin","category-lite-version","category-wp-plugin-solution","tag-block","tag-code","tag-rendering","tag-serverside","tag-syntaxhighlighting"],"acf":[],"fifu_image_url":"https:\/\/ps.w.org\/syntax-highlighting-code-block\/assets\/banner-772x250.png?rev=2131108","_links":{"self":[{"href":"http:\/\/s-o-s.net\/en_gb\/wp-json\/wp\/v2\/posts\/9144","targetHints":{"allow":["GET"]}}],"collection":[{"href":"http:\/\/s-o-s.net\/en_gb\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/s-o-s.net\/en_gb\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/s-o-s.net\/en_gb\/wp-json\/wp\/v2\/users\/40"}],"replies":[{"embeddable":true,"href":"http:\/\/s-o-s.net\/en_gb\/wp-json\/wp\/v2\/comments?post=9144"}],"version-history":[{"count":0,"href":"http:\/\/s-o-s.net\/en_gb\/wp-json\/wp\/v2\/posts\/9144\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"http:\/\/s-o-s.net\/en_gb\/wp-json\/wp\/v2\/media\/9145"}],"wp:attachment":[{"href":"http:\/\/s-o-s.net\/en_gb\/wp-json\/wp\/v2\/media?parent=9144"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/s-o-s.net\/en_gb\/wp-json\/wp\/v2\/categories?post=9144"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/s-o-s.net\/en_gb\/wp-json\/wp\/v2\/tags?post=9144"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}