I moved a WordPress site from one domain to another and there were a lot of white spaces that needed to be removed.
The only problem that is left are the following errors:
- PHP Notice: Undefined offset: 0 in /home/linguist/public_html/test/wp-includes/plugin.php on line 767
- PHP Notice: Undefined offset: 0 in /home/linguist/public_html/test/wp-includes/plugin.php on line 785
then further
PHP Warning: Cannot modify header information – headers already sent by (output started at /home/linguist/public_html/test/wp-includes/plugin.php:767)
Its all due to this code which hasn’t been changed at all but is creating errors.
if (is_object($function[0]) ) {
// Object Class Calling
if ( function_exists('spl_object_hash') ) {
return spl_object_hash($function[0]) . $function[1];
} else {
$obj_idx = get_class($function[0]).$function[1];
if ( !isset($function[0]->wp_filter_id) ) {
if ( false === $priority )
return false;
$obj_idx .= isset($wp_filter[$tag][$priority]) ? count((array)$wp_filter[$tag][$priority]) : $filter_id_count;
$function[0]->wp_filter_id = $filter_id_count;
++$filter_id_count;
} else {
$obj_idx .= $function[0]->wp_filter_id;
}
return $obj_idx;
}
} else if ( is_string($function[0]) ) {
// Static Calling
return $function[0].$function[1];
}
}
Could someone please help me with this?
Some code on your site registers a filter or an action with invalid arguments. The errors you see happen, because
add_action()
oradd_filter()
was called with a second argument that is not a string, an object or an array.Examples:
Disable all plugins, switch to Twenty Eleven, and re-enable everything until the errors comes back. Then find all calls to
add_action()
oradd_filter()
.You can find out which command is the reason. Add the following code before the line “if ( is_object( $function[0] ) ) {“
PHP Warning: Cannot modify header information – headers already sent by (output started at /home/linguist/public_html/test/wp-includes/plugin.php:767)
you just put ob_start() in your functions.php at the top of the line.