Ответы пользователя по тегу WordPress
  • Как сделать разные способы оплаты на разные товары в Woocommerce?

    @zeaovede Автор вопроса
    Если кому-то еще нужно будет, то с данной задачей отлично позволяет справиться плагин Woocommerce Payment Gateway per Product
    Ответ написан
    Комментировать
  • Как изменить сообщение об ошибке на странице .../checkout/?

    @zeaovede Автор вопроса
    Искать пришлось долго. Мало ли кому-то пригодится
    /** Replace 'An account is already registered with your email address. Please log in.' **/
    add_filter( 'woocommerce_registration_error_email_exists', function() {
        return 'Este înregistrat deja un cont cu adresa ta de e-mail. <a href="#" class="showlogin">Te rugăm să te autentifici.</a>';
    } );
    Ответ написан
    Комментировать
  • Как изменить header.php для магазина woocommerce?

    @zeaovede
    Решение, которое было предложено тут с созданием header-shop.php в корне темы у меня не сработало. Но я нашел кое-что лучше. В корне темы находим файл page.php, и там вместо дефолтного header вывести следующий код:

    if ( class_exists( 'WooCommerce' ) && is_account_page() ) {
        get_header('shop');
    } else {
        // текущий код header.php
    }

    В моем примере нужный мне header будет выводиться на странице мой аккаунт, в любом другом месте будет выводиться дефолтный. Проверено.
    Очень важно, выводить именно в page.php, иначе, если это сделать просто через header в корне темы, то будет выводиться сразу два хеадера. В том месте где нашел ответ рекомендовано было выводить через header, но у меня сработало только через page.php. Поэтому, можете проверять.
    Ответ написан
    Комментировать
  • Как автоматически измененить статус заказа в Woocommerce?

    @zeaovede
    Рабочее решение найденное в очке интернета. Публикую для себя, чтобы не потерять, но возможно кому-то пригодится.
    add_filter( 'woocommerce_thankyou', 'update_order_status', 10, 1 );
    
    function update_order_status( $order_id ) {
      if ( !$order_id ){
        return;
      }
      $order = new WC_Order( $order_id );
      if ( 'on-hold' == $order->status) {
        $order->update_status( 'pending payment' );
      }
      return;
    }
    Ответ написан
    Комментировать
  • Как отключить стили и скрипты Contact Form 7 Multi-Step Forms?

    @zeaovede Автор вопроса
    Остановился пока что на таком варианте
    //отключение загрузки скриптов и стилей cf7mls
    function deregister_cf7mls_scripts() {
        if( ! is_page('apply') ){
            wp_deregister_script('cf7mls');
        }
    }
    add_action('wp_print_scripts', 'deregister_cf7mls_scripts', 100);
     
    function deregister_cf7mls_styles() {
        if( ! is_page('apply') ){
            wp_deregister_style('cf7mls');
        }
    }
    add_action('wp_print_styles', 'deregister_cf7mls_styles', 100); 
    //отключение загрузки скриптов и стилей cf7mls

    Из минусов, что скрипты отключаются не только на страницах, но и в админке, из-за чего слетает некоторый функционал, но на фронте на работу не влияет. Возможно, кто-то сможет предложить решение лучше
    Ответ написан
  • Почему при переподключении jquery может отвалиться myajax?

    @zeaovede Автор вопроса
    Проблему решил переместив jquery в футер
    wp_deregister_script( 'jquery-js' );
    wp_register_script( 'jquery-js', get_template_directory_uri() .'/js/jquery-3.6.0.min.js', false, null, true);
    wp_enqueue_script( 'jquery-js' );
    Ответ написан
    Комментировать
  • Что это за тема wordpress?

    @zeaovede
    Не буду говорить где можно взять бесплатно, найдешь сам. Есть одна интересная тема под названием betheme, которая включает 600+ шаблонов на различную тематику.
    Посмотреть можно тут. Установка шаблонов из админки. В общем, захочешь - найдешь
    Ответ написан
    1 комментарий