Artikkelkatalog
Har du også værtWordPressfeilmelding"Uncaught Error: Call to undefined function create_function() in SNIPPET:62"Ga hodepine?"
Dette problemet er faktisk ikke vanskelig å løse. La oss snakke i detalj nå om hvorfor dette problemet oppstår og hvordan du løser det med enkel og effektiv kode.
Hvorfor får jeg create_function-feil?
Litt bakgrunnskunnskap først. I PHP 7.2,create_function()Den har blitt avviklet, og i PHP 8.0 ble denne funksjonen fjernet direkte. Med andre ord, hvis serveren din har blitt oppgradert til PHP 7.2 eller nyere og fortsatt bruker gammel kode, vil dette problemet oppstå.
Men kjernen i problemet er:create_functionDet er et produkt fra en gammel tid. Problemet med det er ikke bare at det ikke lenger støttes, men det introduserer også dårlig ytelse og potensielle sikkerhetsrisikoer. Den nye løsningen er å brukeanonym funksjon(Anonyme funksjoner).
Endre koden: Løs create_function-feilen

La oss nå se hvordan du erstatter den gamle koden. Følgende er den spesifikke kodeendringsplanen:
original kode
//彻底禁止WordPress缩略图
add_filter( 'add_image_size', create_function( '', 'return 1;' ) );
//自定义登录页面的LOGO链接为首页链接
add_filter('login_headerurl', create_function(false,"return get_bloginfo('url');"));
Endret kode
// 彻底禁止 WordPress 缩略图
add_filter( 'add_image_size', function() { return 1; } );
// 自定义登录页面的 LOGO 链接为首页链接
add_filter( 'login_headerurl', function() { return get_bloginfo('url'); } );
Kodeforklaring:
function() { return 1; }er en anonym funksjon som ikke krever noen parametere og returnerer1.get_bloginfo('url')Det er en funksjon som returnerer hjemmesidens adresse. Vi pakker den også inn med en anonym funksjon.
Bedre tilnærming: behandle deaktivering av miniatyrbilder med forsiktighet
Å deaktivere WordPress-miniatyrbilder fullstendig er noen ganger ikke det beste alternativet. Hvis visse temaer eller plugins krever bilder av en bestemt størrelse, kan det føre til uventede problemer å deaktivere dem fullstendig.
Her er en mer fleksibel løsning: deaktiver selektivt unødvendige bildestørrelser via filtre.
Eksempelkode
add_filter( 'intermediate_image_sizes_advanced', function( $sizes ) {
unset( $sizes['thumbnail'] ); // 禁用缩略图
unset( $sizes['medium'] ); // 禁用中等大小
unset( $sizes['large'] ); // 禁用大图
return $sizes;
} );
Denne tilnærmingen løser ikke bare problemet, men opprettholder også kompatibilitet med visse funksjoner.
Endre kode
Legg til den endrede koden på ett av følgende steder:
- av gjeldende emne
functions.phpfil. - Tilpasset funksjon plug-in (anbefalt metode for å unngå kodedekning av temaoppdateringer).
Hva skal jeg gjøre hvis feilen fortsatt oppstår etter å ha endret koden?
Hvis fluent-snippet-storage-plugin-modulen er aktivert og det fortsatt er feil etter endring, kan den være ifluent-snippet-storage/index.phpDet er en cache i den, og feilkoden til error_files må slettes.
skru oppwp-content/fluent-snippet-storage/index.phpFil, rull ned til slutten, og finn kode som ligner på følgende:
'error_files' => array ( '1-e7a7bbe999a4wordpresse5a4b4e983a8e697a0e794a8e4bfa1e681af.php' => 'Uncaught Error: Call to undefined function create_function() in SNIPPET:62', ), );
Kode for å slette disse feilpostene:
'1-e7a7bbe999a4wordpresse5a4b4e983a8e697a0e794a8e4bfa1e681af.php' => 'Uncaught Error: Call to undefined function create_function() in SNIPPET:62',
Bonustips: Sørg for kodekompatibilitet
Før du endrer koden, anbefales det å sikkerhetskopiere nettstedfilene og databasen. Du kan bruke plug-ins (som UpdraftPlus) for raskt å fullføre sikkerhetskopier og unngå å bli overrumplet når noe går galt.
Samtidig, hvis du ikke er kjent med PHP, anbefales det å prøve å modifisere koden i testmiljøet i stedet for å betjene produksjonsmiljøet direkte.
Optimalisering av kode er en konstant kamp
Dette spørsmålet virker enkelt, men det er faktisk et vanlig problem som må møtes i nettstedutvikling:Kompatibilitet av gammel kode med nytt miljø. Enten det er oppgradering av PHP-versjonen eller forbedring av WordPress-funksjoner, er de alle designet for å gjøre nettstedet mer effektivt og sikkert.
For utviklere er det viktig å oppdatere koden i tide og lære nye teknologier. Anonyme funksjoner gjør ikke bare koden mer konsis, men forbedrer også ytelsen og reduserer potensielle sikkerhetsrisikoer. Hver optimering tar nettstedet ditt ett skritt videre.
oppsummering
create_function()Det støttes ikke lenger i PHP 7.2 og nyere, og det anbefales å bruke anonyme funksjoner i stedet.- Etter at du har endret koden, vil nettstedet ditt være mer effektivt og sikkert.
- For bedre kompatibilitet med plugins og temaer kan selektivt deaktivere bildestørrelser være en bedre løsning.
- Optimalisering av kode handler ikke bare om å fikse problemer, men også et skritt mot å forbedre kvaliteten på nettstedet ditt.
Hvis du har støtt på lignende problemer, kan det være lurt å prøve løsningene i denne artikkelen.
Hope Chen Weiliang blogg ( https://www.chenweiliang.com/ ) delt av "WordPress Uncaught Error: Call to undefined function create_function() Solution" kan være nyttig for deg.
Velkommen til å dele lenken til denne artikkelen:https://www.chenweiliang.com/cwl-32407.html
For å låse opp flere skjulte triks🔑, velkommen til å bli med i Telegram-kanalen vår!
Del og lik hvis du liker det! Dine delinger og likes er vår fortsatte motivasjon!