Изменить количество вариантов, отображаемых в Woocommerce - PullRequest
0 голосов
/ 05 февраля 2019

По умолчанию Woocommerce загружает 50 вариантов за цикл.

При поиске в Интернете я обнаружил строку кода для ввода в файл functions.php моей активной дочерней темы.

define( ‘WC_MAX_LINKED_VARIATIONS’, 150);

После копирования его в файл functions.php я не получил изменений, и 50 вариантов все еще загружаются, а не 150, как я указал в строке кода.

Это functions.phpфайл:

<?php

//CARGA EL STYLE.CSS DEL TEMA PADRE EN EL TEMA HIJO

add_action( 'wp_enqueue_scripts', 'my_theme_enqueue_styles' );
function my_theme_enqueue_styles() {
    wp_enqueue_style( 'parent-style', get_template_directory_uri() . '/style.css' );
}

//Incremento de las variaciones en Woocommerce  
define( ‘WC_MAX_LINKED_VARIATIONS’, 150);

?>

Ответы [ 2 ]

0 голосов
/ 05 февраля 2019

Сначала вы должны использовать ' (одинарные кавычки) в ‘WC_MAX_LINKED_VARIATIONS’.Затем, поскольку это связано с Ajax, лучше всего определить эту константу с помощью хука init следующим образом:

add_action( 'init', 'change_max_variations_linked' );
function change_max_variations_linked(){
    define( 'WC_MAX_LINKED_VARIATIONS', 150 );
}

Код помещается в файл function.php вашей активной дочерней темы (или активнойтема).Протестировано и работает.

Или вы также можете добавить define( 'WC_MAX_LINKED_VARIATIONS', 150 ); в ваш wp-config.php файл .

Почему: Эта константа определена в WC_Ajax Класс в link_all_variations() метод следующим образом:

wc_maybe_define_constant( 'WC_MAX_LINKED_VARIATIONS', 49 );

Итактаким образом вы определяете константу перед Woocommerce, где wc_maybe_define_constant() не установит для нее никакого значения, сделает вашу настройку активной .


См .: Какмы можем улучшить WooCommerce?Увеличьте максимальное количество вариаций

0 голосов
/ 05 февраля 2019

Только что проверил его на моей локальной машине и обнаружил, что define( 'WC_MAX_LINKED_VARIATIONS', 150 ); можно использовать либо в functions.php, либо в wp-config.php.

. Это не работает для вас, потому что WC_MAX_LINKED_VARIATIONS не заключен в одинарные кавычки '', вместо этого он заключен в апостроф ‘’:

  • Неправильно: define( ‘WC_MAX_LINKED_VARIATIONS’, 150 );
  • Правильно: define( 'WC_MAX_LINKED_VARIATIONS', 150 );

После внесения вышеуказанной коррекции вы можете использовать эту константу любым из следующих способов:

  1. Либо поставить правильнуюкод в файле functions.php;
  2. Или полностью удалите его из файла functions.php и добавьте в файл wp-config.php

Это должно работать для вас.

ПРЕДУПРЕЖДЕНИЕ

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

Проблемы с большими объемами данных, которые не сохраняются (вариации, скорости и т. Д.) .

...