ആർട്ടിക്കിൾ ഡയറക്ടറി
- 1 എന്തുകൊണ്ടാണ് എനിക്ക് create_function പിശകുകൾ ലഭിക്കുന്നത്?
- 2 കോഡ് പരിഷ്ക്കരിക്കുക: create_function പിശക് പരിഹരിക്കുക
- 3 മികച്ച സമീപനം: ലഘുചിത്രം പ്രവർത്തനരഹിതമാക്കുന്നത് ജാഗ്രതയോടെ കൈകാര്യം ചെയ്യുക
- 4 കോഡ് പരിഷ്ക്കരിക്കുക
- 5 ബോണസ് ടിപ്പ്: കോഡ് അനുയോജ്യത ഉറപ്പാക്കുക
- 6 കോഡ് ഒപ്റ്റിമൈസ് ചെയ്യുന്നത് ഒരു നിരന്തരമായ പോരാട്ടമാണ്
- 7 സംഗ്രഹിക്കാനായി
നിങ്ങളും ഉണ്ടായിട്ടുണ്ടോവേർഡ്പ്രൈസ്പിശക് സന്ദേശം"Uncaught Error: Call to undefined function create_function() in SNIPPET:62"തലവേദന കിട്ടിയോ?"
ഈ പ്രശ്നം പരിഹരിക്കാൻ യഥാർത്ഥത്തിൽ ബുദ്ധിമുട്ടുള്ള കാര്യമല്ല, എന്തുകൊണ്ടാണ് ഈ പ്രശ്നം സംഭവിക്കുന്നത്, ലളിതവും ഫലപ്രദവുമായ കോഡ് ഉപയോഗിച്ച് ഇത് എങ്ങനെ പരിഹരിക്കാം എന്നതിനെക്കുറിച്ച് ഇപ്പോൾ വിശദമായി സംസാരിക്കാം.
എന്തുകൊണ്ടാണ് എനിക്ക് create_function പിശകുകൾ ലഭിക്കുന്നത്?
ആദ്യം ഒരു ചെറിയ പശ്ചാത്തല പരിജ്ഞാനം. PHP 7.2-ൽ,create_function()ഇത് ഒഴിവാക്കി, PHP 8.0-ൽ ഈ ഫംഗ്ഷൻ നേരിട്ട് നീക്കം ചെയ്തു. മറ്റൊരു വിധത്തിൽ പറഞ്ഞാൽ, നിങ്ങളുടെ സെർവർ PHP 7.2 അല്ലെങ്കിൽ അതിന് മുകളിലുള്ളതിലേക്ക് അപ്ഗ്രേഡ് ചെയ്തിരിക്കുകയും ഇപ്പോഴും പഴയ കോഡ് ഉപയോഗിക്കുന്നുണ്ടെങ്കിൽ, ഈ പ്രശ്നം സംഭവിക്കും.
എന്നാൽ പ്രശ്നത്തിൻ്റെ കാതൽ ഇതാണ്:create_functionഇത് ഒരു പഴയ കാലഘട്ടത്തിൻ്റെ ഉൽപ്പന്നമാണ്. ഇതിലെ പ്രശ്നം അത് ഇനി പിന്തുണയ്ക്കില്ല എന്നത് മാത്രമല്ല, മോശം പ്രകടനവും സുരക്ഷാ അപകടസാധ്യതകളും അവതരിപ്പിക്കുന്നു. ഉപയോഗിക്കുക എന്നതാണ് പുതിയ പരിഹാരംഅജ്ഞാത പ്രവർത്തനം(അജ്ഞാത പ്രവർത്തനങ്ങൾ).
കോഡ് പരിഷ്ക്കരിക്കുക: 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അതിൽ ഒരു കാഷെ ഉണ്ട്, error_files-ൻ്റെ പിശക് കോഡ് ഇല്ലാതാക്കേണ്ടതുണ്ട്.
പ്രത്യക്ഷപ്പെടുക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',
ബോണസ് ടിപ്പ്: കോഡ് അനുയോജ്യത ഉറപ്പാക്കുക
കോഡ് പരിഷ്കരിക്കുന്നതിന് മുമ്പ്, വെബ്സൈറ്റ് ഫയലുകളും ഡാറ്റാബേസും ബാക്കപ്പ് ചെയ്യാൻ ശുപാർശ ചെയ്യുന്നു. ബാക്കപ്പുകൾ വേഗത്തിൽ പൂർത്തിയാക്കാനും എന്തെങ്കിലും തെറ്റ് സംഭവിക്കുമ്പോൾ ശ്രദ്ധിക്കപ്പെടാതിരിക്കാനും നിങ്ങൾക്ക് പ്ലഗ്-ഇന്നുകൾ (UpdraftPlus പോലുള്ളവ) ഉപയോഗിക്കാം.
അതേ സമയം, നിങ്ങൾക്ക് PHP പരിചിതമല്ലെങ്കിൽ, ഉൽപ്പാദന അന്തരീക്ഷം നേരിട്ട് പ്രവർത്തിപ്പിക്കുന്നതിനുപകരം ടെസ്റ്റ് പരിതസ്ഥിതിയിൽ കോഡ് പരിഷ്ക്കരിക്കാൻ ശ്രമിക്കുന്നതിന് ശുപാർശ ചെയ്യുന്നു.
കോഡ് ഒപ്റ്റിമൈസ് ചെയ്യുന്നത് ഒരു നിരന്തരമായ പോരാട്ടമാണ്
ഈ ചോദ്യം ലളിതമായി തോന്നുന്നു, എന്നാൽ ഇത് യഥാർത്ഥത്തിൽ വെബ്സൈറ്റ് വികസനത്തിൽ അഭിമുഖീകരിക്കേണ്ട ഒരു സാധാരണ പ്രശ്നമാണ്:പുതിയ പരിസ്ഥിതിയുമായി പഴയ കോഡിൻ്റെ അനുയോജ്യത. അത് PHP പതിപ്പിൻ്റെ നവീകരണമോ വേർഡ്പ്രസ്സ് ഫംഗ്ഷനുകളുടെ മെച്ചപ്പെടുത്തലോ ആകട്ടെ, അവയെല്ലാം വെബ്സൈറ്റ് കൂടുതൽ കാര്യക്ഷമമായും സുരക്ഷിതമായും പ്രവർത്തിപ്പിക്കുന്നതിന് രൂപകൽപ്പന ചെയ്തിരിക്കുന്നു.
ഡവലപ്പർമാർക്ക്, സമയബന്ധിതമായി കോഡ് അപ്ഡേറ്റ് ചെയ്യേണ്ടതും പുതിയ സാങ്കേതികവിദ്യകൾ പഠിക്കേണ്ടതും അത്യാവശ്യമാണ്. അജ്ഞാത പ്രവർത്തനങ്ങൾ കോഡ് കൂടുതൽ സംക്ഷിപ്തമാക്കുക മാത്രമല്ല, പ്രകടനം മെച്ചപ്പെടുത്തുകയും സുരക്ഷാ അപകടസാധ്യതകൾ കുറയ്ക്കുകയും ചെയ്യുന്നു. ഓരോ ഒപ്റ്റിമൈസേഷനും നിങ്ങളുടെ വെബ്സൈറ്റിനെ ഒരു പടി കൂടി മുന്നോട്ട് കൊണ്ടുപോകുന്നു.
സംഗ്രഹിക്കാനായി
create_function()PHP 7.2-ലും അതിനുമുകളിലുള്ളവയിലും ഇത് പിന്തുണയ്ക്കില്ല, പകരം അജ്ഞാത ഫംഗ്ഷനുകൾ ഉപയോഗിക്കാൻ ശുപാർശ ചെയ്യുന്നു.- കോഡ് പരിഷ്കരിച്ചതിന് ശേഷം, നിങ്ങളുടെ വെബ്സൈറ്റ് കൂടുതൽ കാര്യക്ഷമവും സുരക്ഷിതവുമാകും.
- പ്ലഗിനുകളുമായും തീമുകളുമായും മികച്ച അനുയോജ്യതയ്ക്കായി, ഇമേജ് വലുപ്പങ്ങൾ തിരഞ്ഞെടുത്ത് പ്രവർത്തനരഹിതമാക്കുന്നത് ഒരു മികച്ച പരിഹാരമായിരിക്കും.
- കോഡ് ഒപ്റ്റിമൈസ് ചെയ്യുന്നത് പ്രശ്നങ്ങൾ പരിഹരിക്കുന്നത് മാത്രമല്ല, നിങ്ങളുടെ വെബ്സൈറ്റിൻ്റെ ഗുണനിലവാരം മെച്ചപ്പെടുത്തുന്നതിനുള്ള ഒരു ചുവടുവെപ്പ് കൂടിയാണ്.
നിങ്ങൾ സമാനമായ പ്രശ്നങ്ങൾ നേരിട്ടിട്ടുണ്ടെങ്കിൽ, ഈ ലേഖനത്തിലെ പരിഹാരങ്ങൾ പരീക്ഷിക്കാൻ നിങ്ങൾ ആഗ്രഹിച്ചേക്കാം.
ഹോപ്പ് ചെൻ വെയ്ലിയാങ് ബ്ലോഗ് ( https://www.chenweiliang.com/ ) പങ്കിട്ടത് "WordPress Uncaught Error: Call to undefined function create_function() Solution" നിങ്ങൾക്ക് സഹായകമായേക്കാം.
ഈ ലേഖനത്തിന്റെ ലിങ്ക് പങ്കിടാൻ സ്വാഗതം:https://www.chenweiliang.com/cwl-32407.html
