Поддержка Проблемы и решения Ошибка при обновлении

  • Решено web_master_web

    (@web_master_web)


    Здравствуйте помогите решить проблему.

    Решил обновить свой wordpress с версии 2.9.2 на версию 3.3.2, и после копирования файлов на хостинг, зайдя по директории /wp-admin/install.php
    вместо сайта отобразилась вот такая ошибка:

    Fatal error: Cannot redeclare _http_build_query() (previously declared in /home/probees/public_html/wp-includes/compat.php:18) in /home/probees/public_html/wp-includes/functions.php on line 1413

    Я так понимаю ошибка в строке 1413 файла , вот что там прописано

    function _http_build_query($data, $prefix=null, $sep=null, $key='', $urlencode=true) {
    	$ret = array();
    
    	foreach ( (array) $data as $k => $v ) {
    		if ( $urlencode)
    			$k = urlencode($k);
    		if ( is_int($k) && $prefix != null )
    			$k = $prefix.$k;
    		if ( !empty($key) )
    			$k = $key . '%5B' . $k . '%5D';
    		if ( $v === NULL )
    			continue;
    		elseif ( $v === FALSE )
    			$v = '0';
    
    		if ( is_array($v) || is_object($v) )
    			array_push($ret,_http_build_query($v, '', $sep, $k, $urlencode));
    		elseif ( $urlencode )
    			array_push($ret, $k.'='.urlencode($v));
    		else
    			array_push($ret, $k.'='.$v);
    	}
    
    	if ( NULL === $sep )
    		$sep = ini_get('arg_separator.output');
    
    	return implode($sep, $ret);
    }

    причем 1413 строчка это последняя кавычка в коде
    Все дела по файлу readme.

    Сделал пока бекап, вернул старую версию, но хотелось бы обновить.

    Подскажите как решить проблему.

Просмотр 11 ответов — с 1 по 11 (всего 11)
  • Модератор Sergey Biryukov

    (@sergeybiryukov)

    Live and Learn

    Cannot redeclare _http_build_query() (previously declared in /home/probees/public_html/wp-includes/compat.php:18)

    В официальном дистрибутиве функция _http_build_query() определена только в файле wp-includes/functions.php. В wp-includes/compat.php её нет:
    http://core.trac.wordpress.org/browser/tags/3.3.2/wp-includes/compat.php

    Скопируйте полностью все файлы из дистрибутива.

    Автор web_master_web

    (@web_master_web)

    Тоесть мне необходимо файл compat.php в скачанном мной дистрибутиве, заменить файлом указанным в ссылке?

    Модератор Sergey Biryukov

    (@sergeybiryukov)

    Live and Learn

    Нет. Скопировать все файлы из скачанного дистрибутива на сервер.

    В дистрибутиве WordPress 3.3.2 на ru.wordpress.org этот файл выглядит точно так же.

    Автор web_master_web

    (@web_master_web)

    я все качал, все файлы

    Модератор Sergey Biryukov

    (@sergeybiryukov)

    Live and Learn

    Тогда не было бы сообщения о том, что в строке 18 wp-includes/compat.php определена эта функция.

    Автор web_master_web

    (@web_master_web)

    я сравнил два файла, тот что у меня и тот, что вы дали — они отличаются количеством символов

    Автор web_master_web

    (@web_master_web)

    я не от туда качал, а у lecactus rus версию

    Автор web_master_web

    (@web_master_web)

    Я попробую скачать с ru.wordpress.org,, отпишусь что получится, завтра

    Модератор Sergey Biryukov

    (@sergeybiryukov)

    Live and Learn

    я не от туда качал, а у lecactus

    Обратите внимание на правила форума, пункт 9.

    Автор web_master_web

    (@web_master_web)

    В любом случае спасибо.

    Автор web_master_web

    (@web_master_web)

    Спасибо Sergey Biryukov — все получилось, обновился до версии 3.2.2

Просмотр 11 ответов — с 1 по 11 (всего 11)
  • Тема «Ошибка при обновлении» закрыта для новых ответов.