Artikulu direktorioa
Zu ere izan al zaraWordPresserrore-mezua"Uncaught Error: Call to undefined function create_function() in SNIPPET:62
— Buruko mina emanda?
Arazo hau ez da zaila konpontzea orain zehatz-mehatz hitz egin dezagun zergatik gertatzen den arazoa eta nola konpondu kode sinple eta eraginkor batekin.
Zergatik jasotzen ditut create_function erroreak?
Aurretik ezagutza apur bat. PHP 7.2-n,create_function()
Zaharkituta geratu da, eta PHP 8.0-n, funtzio hau zuzenean kendu zen. Beste era batera esanda, zure zerbitzaria PHP 7.2 edo berrira eguneratu bada eta oraindik kode zaharra erabiltzen ari bada, arazo hau gertatuko da.
Baina arazoaren muina hau da:create_function
Garai zahar bateko produktua da. Honen arazoa ez da bakarrik onartzen ez dela, baina errendimendu eskasa eta segurtasun arrisku potentzialak ere sartzen ditu. Irtenbide berria erabiltzea dafuntzio anonimoa(Funtzio Anonimoak).
Aldatu kodea: konpondu create_function errorea
Orain, ikus dezagun nola ordezkatu kode zaharra. Honako hau da kodea aldatzeko plan zehatza:
jatorrizko kodea
//彻底禁止WordPress缩略图
add_filter( 'add_image_size', create_function( '', 'return 1;' ) );
//自定义登录页面的LOGO链接为首页链接
add_filter('login_headerurl', create_function(false,"return get_bloginfo('url');"));
Kode aldatua
// 彻底禁止 WordPress 缩略图
add_filter( 'add_image_size', function() { return 1; } );
// 自定义登录页面的 LOGO 链接为首页链接
add_filter( 'login_headerurl', function() { return get_bloginfo('url'); } );
Kodearen azalpena:
function() { return 1; }
parametrorik eta itzulerarik behar ez duen funtzio anonimo bat da1
.get_bloginfo('url')
Webgunearen hasierako orriaren helbidea itzultzen duen funtzio bat da, gainera, funtzio anonimo batekin biltzen dugu.
Ikuspegi hobea: tratatu koadro txikiak desgaitzea kontu handiz
WordPress koadro txikiak guztiz desgaitzea batzuetan ez da aukerarik onena. Zenbait gai edo plugin-ek tamaina zehatz bateko irudiak behar badituzte, guztiz desgaitzeak ustekabeko arazoak sor ditzake.
Hona hemen irtenbide malguagoa: desgaitu iragazkien bidez behar ez diren irudien tamainak.
Lagin kodea
add_filter( 'intermediate_image_sizes_advanced', function( $sizes ) {
unset( $sizes['thumbnail'] ); // 禁用缩略图
unset( $sizes['medium'] ); // 禁用中等大小
unset( $sizes['large'] ); // 禁用大图
return $sizes;
} );
Ikuspegi honek arazoa konpontzeaz gain, ezaugarri batzuekin bateragarritasuna mantentzen du.
Aldatu kodea
Gehitu aldatutako kodea kokapen hauetako batean:
- egungo gaiarena
functions.php
fitxategia. - Funtzio pertsonalizatuaren plugina (gomendatutako metodoa gaiaren eguneratzeen bidez kodea estaldura saihesteko).
Zer egin behar dut kodea aldatu ondoren errorea oraindik gertatzen bada?
Fluent-snippet-storage plug-in-a gaituta badago eta oraindik akatsak badaude aldatu ondoren, balitekefluent-snippet-storage/index.php
Cache bat dago bertan, eta error_files-en errore-kodea ezabatu behar da.
agertuwp-content/fluent-snippet-storage/index.php
Fitxatu, joan behera amaieraraino eta bilatu hurrengoaren antzeko kodea:
'error_files' => array ( '1-e7a7bbe999a4wordpresse5a4b4e983a8e697a0e794a8e4bfa1e681af.php' => 'Uncaught Error: Call to undefined function create_function() in SNIPPET:62', ), );
Errore-erregistro hauek ezabatzeko kodea:
'1-e7a7bbe999a4wordpresse5a4b4e983a8e697a0e794a8e4bfa1e681af.php' => 'Uncaught Error: Call to undefined function create_function() in SNIPPET:62',
Bonus aholkua: ziurtatu kodea bateragarritasuna
Kodea aldatu aurretik, webguneko fitxategien eta datu-basearen babeskopia egitea gomendatzen da. Pluginak erabil ditzakezu (adibidez, UpdraftPlus) babeskopiak azkar osatzeko eta zerbait gaizki gertatzen denean ezustean harrapatzea saihesteko.
Aldi berean, PHP ezagutzen ez baduzu, gomendagarria da proba-ingurunean kodea aldatzen saiatzea produkzio-ingurunea zuzenean funtzionatzea baino.
Kodea optimizatzea etengabeko borroka da
Galdera honek sinplea dirudi, baina benetan webgunearen garapenean aurre egin beharreko arazo arrunta da:Kode zaharraren bateragarritasuna ingurune berriarekin. PHP bertsioaren bertsio berritzea edo WordPress funtzioen hobekuntza dela, denak webgunea eraginkorrago eta seguruago exekutatzeko diseinatuta daude.
Garatzaileentzat ezinbestekoa da kodea garaiz eguneratzea eta teknologia berriak ikastea. Funtzio anonimoek kodea zehatzagoa izateaz gain, errendimendua hobetzen dute eta segurtasun arriskuak murrizten dituzte. Optimizazio bakoitzak zure webgunea urrats bat harago eramaten du.
Laburpena
create_function()
Jada ez da onartzen PHP 7.2 edo bertsio berriagoetan, eta horren ordez funtzio anonimoak erabiltzea gomendatzen da.- Kodea aldatu ondoren, zure webgunea eraginkorragoa eta seguruagoa izango da.
- Pluginekin eta gaiekin bateragarritasun hobea lortzeko, irudien tamainak modu selektiboan desgaitzea irtenbide hobea izan daiteke.
- Kodea optimizatzea arazoak konpontzeaz gain, zure webgunearen kalitatea hobetzeko urratsa ere bada.
Antzeko arazoak aurkitu badituzu, baliteke artikulu honetako irtenbideak probatzea.
Hope Chen Weiliang bloga ( https://www.chenweiliang.com/ ) "WordPress Uncaught Error: defined function to create_function() Solution" deitzea lagungarria izan daiteke.
Ongi etorri artikulu honen esteka partekatzera:https://www.chenweiliang.com/cwl-32407.html
Desblokeatu AI laguntza eta esan agur lan eraginkorrari! 🔓💼
🌟 Izan zaitez AI arma magiko hauek esperimentatzen lehena kanalaren goiko direktorioan! 🌟
Partekatu eta gustatu gustatzen bazaizu! Zure partekatzeak eta gustukoak dira gure etengabeko motibazioa!