Поддержка Проблемы и решения кеш? память? или что-то еще?

  • Решено mypowerlogo

    (@mypowerlogo)


    магазин
    версия WooCommerce: 3.5.0
    версия WordPress: 4.9.8
    WordPress ограничение памяти: 2 GB
    Информация о сервере: Apache/2.4.10 (Unix)
    PHP версии: 7.2.5
    Максимальный размер запроса PHP: 100 MB
    Ограничение времени выполнения PHP: 600
    Количество входящих параметров в запросе PHP: 5000
    Макс. размер загрузки: 999 MB

    установлено еще прядка 30 плагинов( внешний вид, аякс окна и т.д.)
    до 1000 посетителей в день

    Суть проблемы: после обновления плагинов прекратилось поступление заказов и так было 12 часов пока не произвел некие манипуляции(установил плагин «WP Super Cache» и в нем очистил кеш) после этого заказы снова начали поступать. Причем и до и после очистки если я делал тестовый заказ со своего ПК заказ приходил успешно.

    Предистория: ранее сталкивался 2 недели не приходили заказы при постоянном рекламном потоке посетителей. Хотя также тестовые заказы приходили с любого ПК успешно. Решилась проблема тем, что «WordPress ограничение памяти:» с 64мб увеличил до 2 GB.

    без каких либо индикаторов или на абум клацать каждый день «очистить кеш» тоже не выход ведь не понятно почему вообще это происходит и почему новые посетители не могут сделать заказ.

    Опережу некоторые вопросы:
    вопрос: то, что люди заходят не означает, что они что то покупают.
    ответ: 1000 человек это не 5, статистику не обманешь. Если изо дня в день 1000 человек делает 10-30 заказов, то не может быть, что резко стало 0 и люди перестали покупать вещи. тенденция на спад идет постепенно, а не резко.

    вопрос: конкуренты могли предложить более выгодную цену или предложение
    ответ: разные товарные позиции, со всех сторон мгновенно обскакать не получилось бы, да и реакция на такие изменения идет постепенная и влечет плавное падение.

    Подскажите, что может не работать и как это проверить или исправить.

    Страница, с которой нужна помощь: [войдите, чтобы увидеть ссылку]

Просмотр 15 ответов — с 1 по 15 (всего 27)
  • Модератор Yui

    (@fierevere)

    ゆい

    А лог ошибок вы конечно же не смотрели?

    в корневой папке есть файл PHP_errors.log 14.5 Mb не знаю как его посмотреть

    Модератор Yui

    (@fierevere)

    ゆい

    скачать, открыть например в WordPad, можно в блокноте, но на таких больших файлах он подвисает.
    Это обычный текстовый файл

    скачал открыл ничего не понятно

    Модератор Юрий

    (@yube)

    скачал открыл ничего не понятно

    Печально. Ищите слово FATAL, и, если найдете, покажите нам несколько таких строк.

    Модератор SeVlad

    (@sevlad)

    wp.me/3YHjQ

    скачал открыл ничего не понятно

    1. Переименуйте или удалите файл на сервере.
    2. Воспроизводите проблему.
    3. Откройте вновь созданный файл (скачав его или через ПУ хостинга) и скопируйте сюда, удалив повторяющиеся строки.

    проверил за последние 10 дней такой ошибки «fatal» не было.

    вот ссылка на лог
    http://transfiles.ru/swlod

    Модератор Yui

    (@fierevere)

    ゆい

    [31-Oct-2018 14:43:02 UTC] PHP Warning:  call_user_func_array() expects parameter 1 to be a valid callback, no array or string given in /home/m/mypower/mypower.in.ua/public_html/wp-includes/class-wp-hook.php on line 286
    [31-Oct-2018 14:43:09 UTC] The WC_Cart::get_cart_url function is deprecated since version 2.5. Replace with wc_get_cart_url.
    
    [26-Oct-2018 13:45:28 UTC] The WC_Cart::get_item_data function is deprecated since version 3.3. Replace with wc_get_formatted_cart_item_data.
    [26-Oct-2018 13:45:28 UTC] The WC_Cart::get_remove_url function is deprecated since version 3.3. Replace with wc_get_cart_remove_url.

    могли просто показать нам это, больше в вашем логе ничего уникального нет.
    сообщение об использовании устаревших ф-ций в принципе может быть причиной вашей проблемы с заказами
    вопрос где у вас вызывается WC_Cart::get_cart_url и другие устаревшие функции

    • Ответ изменён 1 год, 1 месяц назад пользователем Yui.

    очень много ошибок с файлом class-wp-hook.php если что вот его кусок с этой строкой:

    
    public function apply_filters( $value, $args ) {
    		if ( ! $this->callbacks ) {
    			return $value;
    		}
    
    		$nesting_level = $this->nesting_level++;
    
    		$this->iterations[ $nesting_level ] = array_keys( $this->callbacks );
    		$num_args = count( $args );
    
    		do {
    			$this->current_priority[ $nesting_level ] = $priority = current( $this->iterations[ $nesting_level ] );
    
    			foreach ( $this->callbacks[ $priority ] as $the_ ) {
    				if( ! $this->doing_action ) {
    					$args[ 0 ] = $value;
    				}
    
    				// Avoid the array_slice if possible.
    				if ( $the_['accepted_args'] == 0 ) {
    					$value = call_user_func_array( $the_['function'], array() );
    				} elseif ( $the_['accepted_args'] >= $num_args ) {
    <strong>строка 286					$value = call_user_func_array( $the_['function'], $args );</strong>
    				} else {
    					$value = call_user_func_array( $the_['function'], array_slice( $args, 0, (int)$the_['accepted_args'] ) );
    				}
    			}
    		} while ( false !== next( $this->iterations[ $nesting_level ] ) );
    
    		unset( $this->iterations[ $nesting_level ] );
    		unset( $this->current_priority[ $nesting_level ] );
    
    		$this->nesting_level--;
    
    		return $value;
    	}
    
    • Ответ изменён 1 год, 1 месяц назад пользователем mypowerlogo.
    • Ответ изменён 1 год, 1 месяц назад пользователем Yui. Причина: code
    Модератор Yui

    (@fierevere)

    ゆい

    class-wp-hook.php сам не является причиной проблемы, это стандартный файл ядра WP
    вопрос в том, что вызывает этот код. Обычно это один из плагинов

    можно поискать в режиме решения проблем с плагином https://ru.wordpress.org/plugins/health-check/ , наблюдая за логом, хоть это может быть и не очень удобно на живом сайте с траффиком и ошибками от других посетителей

    WC_Cart::get_cart_url эта функция встречается только в файле
    /wp-content/plugins/woocommerce/includes/legacy/class-wc-legacy-cart.php

    вот в таком виде

    	
    public function get_cart_url() {
    		wc_deprecated_function( 'WC_Cart::get_cart_url', '2.5', 'wc_get_cart_url' );
    		return wc_get_cart_url();
    	}
    
    • Ответ изменён 1 год, 1 месяц назад пользователем Yui. Причина: [code]

    какой вообще принцип исправления таких ошибок?

    Модератор Yui

    (@fierevere)

    ゆい

    встречается только в файле
    /wp-content/plugins/woocommerce/includes/legacy/class-wc-legacy-cart.php

    это то, что генерирует ошибку в лог, при этом не выполняя другого кода, вы соответственно потеряли какой-то функционал

    Это не единственное место, если есть ошибка, значит этот код откуда-то вызывается
    возможно тема.

    Модератор Yui

    (@fierevere)

    ゆい

    принцип исправления простой — найти что вызывает проблему, тема или плагин старый
    и обновить их.
    Если оно самописное — придется следовать рекомендациям и переписывать код, чтобы он использовал современные функции, а не устаревшие и уже не работающие.

Просмотр 15 ответов — с 1 по 15 (всего 27)
  • Тема «кеш? память? или что-то еще?» закрыта для новых ответов.