Пользователь пока ничего не рассказал о себе

Наибольший вклад в теги

Все теги (1)

Лучшие ответы пользователя

Все ответы (6)
  • Как массово изменить thumbnails без обрезания картинок?

    mirusck
    @mirusck
    Поменяйте размеры картинок в Woocommerce --> Settings --> Catalog --> Image Options (Woocommerce --> Настройки --> Каталог --> Настройки изображений)

    После этого сгенерируйте сабнейлы нового размера с помощью плагина wordpress.org/plugins/regenerate-thumbnails
    Ответ написан
    Комментировать
  • WooCommerce: как добавить кнопку "Купить сейчас" в дополнение к кнопке "Добавить в корзину"?

    mirusck
    @mirusck
    Вот код для того, что бы все кнопки "Добавить в корзину" переадресовывали на страницу оплаты. К сожалению, не работает с ajax-based кнопками (их можно отключить в Woocommerce --> Settings --> Catalog --> Enable AJAX add to cart buttons on archives):

    add_filter( 'add_to_cart_redirect', 'add_to_cart_redirect_to_checkout');
    function add_to_cart_redirect_to_checkout() {
        global $woocommerce;
        return $woocommerce->cart->get_checkout_url();
    }


    Это так, навскидку. Подумаю на досуге, как сделать параллельно две кнопки. Пока мне видится вариант примерно такой:
    1. Во всех темплейтах добавить кастомные кнопки
    2. В зависимости от того, на какой странице: каталога или одного продукта, кнопки должны быть то ли урлами (example.com/?add-to-cart=486&buy_now), то ли сабмит баттонами <input type="submit" name="buy_now" ..... />
    3. Кастомный обработчик $_POST и $_GET, который вручную, используя классы типа WC_Cart, WC_Product и тд, добавляет товар в корзину и редиректит на чекаут

    add_action('init', 'add_to_cart_redirect');
    function add_to_cart_redirect() {
        if ( isset($_GET['buy_now']) && ....  || isset($_POST['buy_now'] ) {
            // тут добавление в корзину и тд
            // .....
            // .....
    
            wp_safe_redirect( $woocommerce->cart->get_cart_url() );
            exit;
        }
    }


    Тут, опять же, будет спорна обработка аяксовых запросов, для нее нужно будет дописывать отдельный обработчик.
    Ответ написан
    Комментировать
  • Таксономия в Wordpress?

    mirusck
    @mirusck
    Возможно, поздно, но все же:
    1. Все ваши посты с новым пост тайпом будут отображены на странице yourdomain.com/?post_type=app
    Если хотите урл покрасивее, добавьте такие аргументы при регистрации посттайпа:
    $args = array(
            ....
            'has_archive' => true,
            'rewrite' => array(
                'slug' => 'apps',
                'with_front' => false
            )
    }

    Тогда урл будет такой: yourdomain.com/apps.
    // Если не сработало, то нужно перегенерить пермалинки на странице Settings --> Permalinks (Параметры --> Постоянные ссылки)

    2. Продублируйте в папке темы файлы archive.php и single.php в файлы с названиями archive-app.php single-app.php соответственно. Теперь при выводе ваших кастомных постов будут использоваться именно эти файлы шаблонов.

    В темплейтах для вывода категории, девайса и платформы используйте функцию the_terms() или get_the_terms()
    Например:
    <?php the_terms($post->ID, 'device'); ?>
    Ответ написан
    1 комментарий