WordPress Uncaught Villa: Kalla í óskilgreinda aðgerð create_function() lausn

Hefur þú líka veriðWordPressvilluboð"Uncaught Error: Call to undefined function create_function() in SNIPPET:62"Gefinn höfuðverk?"

Þetta vandamál er í raun ekki erfitt að leysa. Við skulum tala í smáatriðum núna um hvers vegna þetta vandamál kemur upp og hvernig á að leysa það með einföldum og áhrifaríkum kóða.

Af hverju fæ ég create_function villur?

Smá bakgrunnsþekking fyrst. Í PHP 7.2,create_function()Það hefur verið úrelt og í PHP 8.0 var þessi aðgerð fjarlægð beint. Með öðrum orðum, ef þjónninn þinn hefur verið uppfærður í PHP 7.2 eða nýrri og er enn að nota gamlan kóða, mun þetta vandamál koma upp.

En kjarni vandans er:create_functionÞað er afurð gamalla tíma. Vandamálið við það er ekki aðeins að það er ekki lengur stutt, heldur kynnir það einnig lélega frammistöðu og hugsanlega öryggisáhættu. Nýja lausnin er að notanafnlaus aðgerð(Nafnlausar aðgerðir).

Breyttu kóðanum: Leysaðu create_function villuna

WordPress Uncaught Villa: Kalla í óskilgreinda aðgerð create_function() lausn

Nú skulum við sjá hvernig á að skipta um gamla kóðann. Eftirfarandi er sérstök kóðabreytingaáætlun:

upprunalega kóða

//彻底禁止WordPress缩略图
add_filter( 'add_image_size', create_function( '', 'return 1;' ) );

//自定义登录页面的LOGO链接为首页链接
add_filter('login_headerurl', create_function(false,"return get_bloginfo('url');"));

Breyttur kóða

// 彻底禁止 WordPress 缩略图
add_filter( 'add_image_size', function() { return 1; } );

// 自定义登录页面的 LOGO 链接为首页链接
add_filter( 'login_headerurl', function() { return get_bloginfo('url'); } );

Kóðaskýring:

  • function() { return 1; } er nafnlaus aðgerð sem krefst enga breytu og skilar 1.
  • get_bloginfo('url') Það er aðgerð sem skilar heimilisfangi vefsíðunnar. Við vefjum hana einnig með nafnlausri aðgerð.

Betri nálgun: Farðu varlega með slökkva á smámyndum

Að slökkva alveg á WordPress smámyndum er stundum ekki besti kosturinn. Ef tiltekin þemu eða viðbætur krefjast mynda af ákveðinni stærð getur það valdið óvæntum vandamálum að slökkva á þeim alveg.

Hér er sveigjanlegri lausn: slökktu á vali á óþarfa myndastærðum með síum.

Dæmi um kóða

add_filter( 'intermediate_image_sizes_advanced', function( $sizes ) {
    unset( $sizes['thumbnail'] ); // 禁用缩略图
    unset( $sizes['medium'] );    // 禁用中等大小
    unset( $sizes['large'] );     // 禁用大图
    return $sizes;
} );

Þessi nálgun leysir ekki aðeins vandamálið heldur heldur einnig eindrægni við ákveðna eiginleika.

Breyta kóða

Bættu breytta kóðanum við einn af eftirfarandi stöðum:

  1. af núverandi efni functions.php skjal.
  2. Sérsniðin aðgerðaviðbót (mælt er með aðferð til að forðast kóðaþekju með þemauppfærslum).

Hvað ætti ég að gera ef villa kemur enn eftir að hafa breytt kóðanum?

Ef fluent-snippet-storage viðbótin er virkjuð og enn eru villur eftir breytingu, gæti hún verið ífluent-snippet-storage/index.phpÞað er skyndiminni í því og villukóða error_files þarf að eyða.

snúa uppwp-content/fluent-snippet-storage/index.phpSkrá, skrunaðu niður að endanum og finndu kóða sem líkist eftirfarandi:

'error_files' => 
array (
'1-e7a7bbe999a4wordpresse5a4b4e983a8e697a0e794a8e4bfa1e681af.php' => 'Uncaught Error: Call to undefined function create_function() in SNIPPET:62',
),
);

Kóði til að eyða þessum villuskrám:

'1-e7a7bbe999a4wordpresse5a4b4e983a8e697a0e794a8e4bfa1e681af.php' => 'Uncaught Error: Call to undefined function create_function() in SNIPPET:62',

Bónusráð: Gakktu úr skugga um samhæfni kóða

Áður en kóðanum er breytt er mælt með því að taka öryggisafrit af vefsíðuskrám og gagnagrunni. Þú getur notað viðbætur (eins og UpdraftPlus) til að klára öryggisafrit á fljótlegan hátt og forðast að vera hrifinn af því þegar eitthvað fer úrskeiðis.

Á sama tíma, ef þú þekkir ekki PHP, er mælt með því að reyna að breyta kóðanum í prófunarumhverfinu frekar en að reka framleiðsluumhverfið beint.

Hagræðing kóða er stöðug barátta

Þessi spurning virðist einföld, en það er í raun algengt vandamál sem þarf að takast á við í vefsíðuþróun:Samhæfni gamla kóðans við nýtt umhverfi. Hvort sem það er uppfærsla á PHP útgáfunni eða endurbætur á WordPress aðgerðum, þá eru þau öll hönnuð til að gera vefsíðuna skilvirkari og öruggari.

Fyrir forritara er nauðsynlegt að uppfæra kóðann tímanlega og læra nýja tækni. Nafnlausar aðgerðir gera kóðann ekki aðeins hnitmiðaðri, heldur bæta einnig árangur og draga úr hugsanlegri öryggisáhættu. Sérhver hagræðing tekur vefsíðuna þína einu skrefi lengra.

总结

  1. create_function() Það er ekki lengur stutt í PHP 7.2 og nýrri, og mælt er með því að nota nafnlausar aðgerðir í staðinn.
  2. Eftir að hafa breytt kóðanum verður vefsíðan þín skilvirkari og öruggari.
  3. Fyrir betri eindrægni við viðbætur og þemu gæti það verið betri lausn að slökkva á myndastærðum.
  4. Hagræðing kóða snýst ekki aðeins um að laga vandamál, heldur einnig skref í átt að því að bæta gæði vefsíðunnar þinnar.

Ef þú hefur lent í svipuðum vandamálum gætirðu viljað prófa lausnirnar í þessari grein.

发表 评论

Netfangið þitt verður ekki birt. Nauðsynlegir reitir eru notaðir * Merkimiði

Flettu að Top