Артицле Дирецтори
Да ли сте и ви билиWordPressпорука о грешци"Uncaught Error: Call to undefined function create_function() in SNIPPET:62"Главобоља?"
Овај проблем заправо није тешко решити. Хајде да сада детаљно разговарамо о томе зашто се овај проблем јавља и како га решити једноставним и ефикасним кодом.
Зашто добијам грешке цреате_фунцтион?
Прво мало основног знања. У ПХП 7.2,create_function()Застарела је, ау ПХП 8.0 ова функција је директно уклоњена. Другим речима, ако је ваш сервер надограђен на ПХП 7.2 или новији и још увек користи стари код, овај проблем ће се појавити.
Али срж проблема је:create_functionТо је производ старог доба. Проблем са њим није само што више није подржан, већ уводи и лоше перформансе и потенцијалне безбедносне ризике. Ново решење је коришћењеанонимна функција(Анонимне функције).
Измените код: Решите грешку цреате_фунцтион

Сада, да видимо како да заменимо стари код. Следи посебан план модификације кода:
оригинални код
//彻底禁止WordPress缩略图
add_filter( 'add_image_size', create_function( '', 'return 1;' ) );
//自定义登录页面的LOGO链接为首页链接
add_filter('login_headerurl', create_function(false,"return get_bloginfo('url');"));
Модификовани код
// 彻底禁止 WordPress 缩略图
add_filter( 'add_image_size', function() { return 1; } );
// 自定义登录页面的 LOGO 链接为首页链接
add_filter( 'login_headerurl', function() { return get_bloginfo('url'); } );
Објашњење кода:
function() { return 1; }је анонимна функција која не захтева параметре и враћа1.get_bloginfo('url')То је функција која враћа адресу почетне странице веб локације. Такође је обавијамо анонимном функцијом.
Бољи приступ: опрезно третирајте онемогућавање сличица
Потпуно онемогућавање ВордПресс сличица понекад није најбоља опција. Ако одређене теме или додаци захтевају слике одређене величине, њихово потпуно онемогућавање може изазвати неочекиване проблеме.
Ево флексибилнијег решења: селективно онемогућите непотребне величине слике преко филтера.
Пример кода
add_filter( 'intermediate_image_sizes_advanced', function( $sizes ) {
unset( $sizes['thumbnail'] ); // 禁用缩略图
unset( $sizes['medium'] ); // 禁用中等大小
unset( $sizes['large'] ); // 禁用大图
return $sizes;
} );
Овај приступ не само да решава проблем, већ и одржава компатибилност са одређеним карактеристикама.
Измените код
Додајте измењени код на једну од следећих локација:
- актуелне теме
functions.phpдатотека. - Додатак прилагођене функције (препоручени метод да се избегне покривеност кода ажурирањима теме).
Шта да радим ако се грешка и даље јавља након измене кода?
Ако је додатак флуент-сниппет-стораге омогућен, а и даље постоје грешке након модификације, мождаfluent-snippet-storage/index.phpУ датотеци постоји кеш меморија, а код грешке еррор_филес треба да се обрише.
појачатиwp-content/fluent-snippet-storage/index.phpДатотека, идите до самог краја и пронађите код сличан следећем:
'error_files' => array ( '1-e7a7bbe999a4wordpresse5a4b4e983a8e697a0e794a8e4bfa1e681af.php' => 'Uncaught Error: Call to undefined function create_function() in SNIPPET:62', ), );
Избришите код за ове записе о грешци:
'1-e7a7bbe999a4wordpresse5a4b4e983a8e697a0e794a8e4bfa1e681af.php' => 'Uncaught Error: Call to undefined function create_function() in SNIPPET:62',
Бонус савет: Осигурајте компатибилност кода
Пре измене кода, препоручује се да направите резервну копију датотека веб локације и базе података. Можете да користите додатак (као што је УпдрафтПлус) да бисте брзо завршили прављење резервне копије и избегли да будете затечени када нешто крене наопако.
У исто време, ако нисте упознати са ПХП-ом, препоручује се да покушате да модификујете код у тестном окружењу уместо да директно управљате производним окружењем.
Оптимизација кода је стална битка
Ово питање изгледа једноставно, али то је заправо уобичајен проблем са којим се треба суочити у развоју веб странице:Компатибилност старог кода са новим окружењем. Било да се ради о надоградњи ПХП верзије или побољшању функција ВордПресс-а, сви су дизајнирани тако да веб локација ради ефикасније и безбедније.
За програмере је од суштинског значаја да ажурирају код на време и науче нове технологије. Анонимне функције не само да чине код концизнијим, већ и побољшавају перформансе и смањују потенцијалне безбедносне ризике. Свака оптимизација води вашу веб локацију корак даље.
总结
create_function()Више није подржан у ПХП-у 7.2 и новијим, и препоручује се да се уместо тога користе анонимне функције.- Након измене кода, ваша веб локација ће бити ефикаснија и безбеднија.
- За бољу компатибилност са додацима и темама, селективно онемогућавање величина слика може бити боље решење.
- Оптимизација кода није само решавање проблема, већ и корак ка побољшању квалитета ваше веб странице.
Ако сте наишли на сличне проблеме, можда бисте желели да испробате решења у овом чланку.
Блог Хопе Цхен Веилианг ( https://www.chenweiliang.com/ ) „ВордПресс Унцаугхт Еррор: Цалл то ундефинед фунцтион цреате_фунцтион() Солутион“ може да вам буде од помоћи.
Добродошли да поделите везу овог чланка:https://www.chenweiliang.com/cwl-32407.html
