我的WP控制台上出现以下错误:
Warning: First parameter must either be an object or the name of an existing class
in /home/content/88/11746388/html/wp-content/plugins/pluginname/pluginname.php on
line 136
这些是从130到140的线条。任何想法?
function get_latest_version($plugin_file) {
$latest_version = '';
$sr_plugin_info = get_site_transient ( 'update_plugins' );
// if ( property_exists($sr_plugin_info, 'response [$plugin_file]') && property_exists('response [$plugin_file]', 'new_version') ) {
if ( property_exists($sr_plugin_info, 'response [$plugin_file]') ) {
$latest_version = $sr_plugin_info->response [$plugin_file]->new_version;
}
return $latest_version;
}
答案 0 :(得分:1)
似乎你在这一行中有错误:
if ( property_exists($sr_plugin_info, 'response [$plugin_file]') ) {
property_exists - 检查对象或类是否具有属性。
和'response [$plugin_file]'
它不是类的有效属性名称。
答案 1 :(得分:0)
说实话,代码正在从几个伤口流血。
a。)get_site_transient不保证返回一个对象,而property_exists需要一个
b。)您尝试使用property_exists检查属性中是否存在数组键。我非常确定property_exists不能这样做 - 你应该只检查response
属性并使用isset()
作为$plugin_file
索引。
答案 2 :(得分:-3)
function get_latest_version($plugin_file) {
$latest_version = '';
$sr_plugin_info = get_site_transient ( 'update_plugins' );
// if ( property_exists($sr_plugin_info, response[$plugin_file]) && property_exists(response[$plugin_file], 'new_version') ) {
if ( property_exists($sr_plugin_info, response[$plugin_file]) ) {
$latest_version = $sr_plugin_info->response[$plugin_file]->new_version;
}
return $latest_version;
}