افزونه Crayon Syntax Highlighter یکی از پرکاربرد ترین پلاگین ها در سایت های وردپرسی با محتوای برنامه نویسی هست که برای نمایش کد های برنامه نویسی استفاده می شود. متاسفانه این پلاگین با همه خوبی هایی که دارد حدود ۴ سال است که بروز رسانی نشده است و البته تا این اواخر مشکلی هم نداشته است. اما با روی آوردن سرویس های میزبانی وب و شرکت های هاستینگ به استفاده از PHP 7.3 این پلاگین باعث ایجاد مشکل می شود و سایت هایی که از آن استفاده می کنند نمی توانند از نسخه php 7.3 استفاده نمایند.
حل مشکل پلاگین Crayon Syntax Highlighter در PHP 7.3
اگر شما هم از نسخه php 7.3 استفاده می کنید حتما با خطای preg_replace این افزونه مواجه شده اید
تیم برنامه نویسی پارسی پروگرامر توانست مشکل خطای این پلاگین را با ورژن 7.3 PHP حل کند. بنابراین اگر می خواهید از پلاگین Crayon Syntax Highlighter در PHP 7.3 استفاده نمایید بایستی در فایل wp-content/plugins/crayon-syntax-highlighter/crayon_langs.class.php خط شماره ۳۴۰ را غیرفعال نموده و خط ۳۴۱ که در زیر نمایش دادیم به آن اضافه نمایید:
// Override function clean_id($id) { $id = CrayonUtil::space_to_hyphen( strtolower(trim($id)) ); //return preg_replace('/[^\w-+#]/msi', '', $id); return preg_replace('/[^\w\-+#]/msi', '', $id) }
باکس فوق که کد php داخل آن برای شما نمایش داده شده است با استفاده از همین افزونه Crayon Syntax Highlighter ایجاد شده است.