Задать вопрос
  • Как в плагине WooCommerce Deposits при выборе полной оплаты сделать скидку 10%?

    @eratnikstudio Автор вопроса
    There has been a critical error on this website. Сайт выдал критическую ошибку). Я тоже пробывал так - но что то не так))
    Ответ написан
    Комментировать
  • Как добавить в карточку товара Woo простой календарь?

    @eratnikstudio Автор вопроса
    Сам решил. Пользуйтесь кому надо

    // Добавление поля выбора даты на страницу товара
    function add_datepicker_to_product_page() {
        global $product;
        
        // Проверяем, является ли текущая страница товаром
        if ( ! is_product() ) {
            return;
        }
        
        // Получаем текущую выбранную дату (если есть)
        $selected_date = WC()->session->get( 'selected_date' );
        
        // Выводим HTML-элемент с календарем выбора даты
        echo 'Select date<input type="text" id="date_field" name="date_field" placeholder="Select the check-in date" value="' . esc_attr( $selected_date ) . '" required>';
        
        // Загружаем необходимые скрипты и стили
        wp_enqueue_script( 'jquery-ui-datepicker' );
        wp_enqueue_style( 'jquery-ui-css', 'https://code.jquery.com/ui/1.12.1/themes/base/jquery-ui.css' );
        
        // Инициализируем выбор даты через JavaScript
        echo '<script>
            jQuery(document).ready(function($){
                $("#date_field").datepicker({
                    dateFormat: "yy-mm-dd",
                    onSelect: function(dateText) {
                        // При выборе даты сохраняем ее в сессию
                        $.ajax({
                            url: wc_add_to_cart_params.ajax_url,
                            method: "POST",
                            data: {
                                action: "save_selected_date",
                                selected_date: dateText
                            },
                            success: function(response) {
                                console.log("Выбранная дата сохранена");
                                $( document.body ).trigger( "update_checkout" );
                            }
                        });
                    }
                });
            });
            </script>';
    }
    add_action( 'woocommerce_before_add_to_cart_button', 'add_datepicker_to_product_page' );
    
    // Сохранение выбранной даты при добавлении товара в корзину
    add_action( 'woocommerce_add_cart_item_data', 'save_selected_date', 10, 3 );
    function save_selected_date( $cart_item_data, $product_id, $variation_id ) {
        if ( ! empty( $_POST['date_field'] ) ) {
            $cart_item_data['selected_date'] = sanitize_text_field( $_POST['date_field'] );
        }
        return $cart_item_data;
    }
    
    // Отображение выбранной даты в корзине
    add_filter( 'woocommerce_cart_item_name', 'display_selected_date_in_cart', 10, 3 );
    function display_selected_date_in_cart( $product_name, $cart_item, $cart_item_key ) {
        if ( isset( $cart_item['selected_date'] ) ) {
            $product_name .= '<br><small>' . __('Check-in date') . ': ' . $cart_item['selected_date'] . '</small>';
        }
        return $product_name;
    }
    
    // Отображение выбранной даты на странице оформления заказа
    add_action( 'woocommerce_review_order_before_payment', 'display_selected_date_on_checkout' );
    function display_selected_date_on_checkout() {
        $cart = WC()->cart;
        
        if ( ! $cart->is_empty() ) {
            foreach ( $cart->get_cart() as $cart_item ) {
                if ( isset( $cart_item['selected_date'] ) ) {
                    echo '<div>' . __('Check-in date') . ': ' . $cart_item['selected_date'] . '</div>';
                }
            }
        }
    }
    Ответ написан
    Комментировать
  • Калькулятор расчета стоимости услуги на WP - как сделать?

    @eratnikstudio Автор вопроса
    Сам допёр. Вот код расчета в Calculated Fields Form

    (function(){
    
    if(fieldname2 <= 499) return fieldname2*18;
    
    if(fieldname2 <= 999) return fieldname2*16;
    
    if(fieldname2 <= 2999) return fieldname2*6;
    
    if(fieldname2 <= 4999) return fieldname2*3.25;
    
    if(fieldname2 <= 9999) return fieldname2*2.75;
    
    if(fieldname2 <= 19999) return fieldname2*2.25;
    
    if(fieldname2 <= 50000) return fieldname2*0.95;
    
    })();
    Ответ написан
  • Как вывести информацию из БД на сайт?

    @eratnikstudio Автор вопроса
    Не понимаю всё таки. Как и куда это сделать? )))
    Ответ написан
    Комментировать
  • Как добавить оптовую и розничную цена в Woocommerce?

    @eratnikstudio Автор вопроса
    Ну кто нибудь - прошу помощи! :)
    Ответ написан
  • Правильный файл .htaccess для Joomla?

    @eratnikstudio Автор вопроса
    Не помогает. с цифрами в адресе (https://livion.ru/1) - переходит на страницу https://livion.ru/error, с буквами (https://livion.ru/e) - не переходит).
    Ответ написан
    Комментировать
  • Как настроить редирект несуществующих страниц на страницу error.php в файле .htaccess?

    @eratnikstudio Автор вопроса
    Вот весь .htaccess



    # Может быть закомментировано, если вызывает ошибку сервера. Смотрите примечания выше.
    Options +FollowSymLinks

    # Добавляем Cache-Control в заголовок

    Header set Connection keep-alive
    Header unset ETag
    FileETag None

    Header set Cache-Control "max-age=2592000, public"

    Header set Cache-Control "max-age=604800, public"

    Header set Cache-Control "max-age=216000, private"

    Header set Cache-Control "max-age=216000, public, must-revalidate"

    Header set Cache-Control "max-age=1, private, must-revalidate"


    # Сжимаем файлы с помощью модуля gzip

    AddOutputFilterByType DEFLATE text/html text/plain text/xml application/xml application/xhtml+xml text/javascript text/css application/x-javascript application/javascript
    BrowserMatch ^Mozilla/4 gzip-only-text/html
    BrowserMatch ^Mozilla/4.0[678] no-gzip
    BrowserMatch bMSIE !no-gzip !gzip-only-text/html

    mod_gzip_on Yes
    mod_gzip_dechunk Yes
    mod_gzip_item_include file .(html?|txt|css|js|php|pl)$
    mod_gzip_item_include handler ^cgi-script$
    mod_gzip_item_include mime ^text/.*
    mod_gzip_item_include mime ^application/x-javascript.*
    mod_gzip_item_exclude mime ^image/.*
    mod_gzip_item_exclude rspheader ^Content-Encoding:.*gzip.*



    # Кешируем файлы у клиента

    ExpiresActive On
    ExpiresDefault "access plus 1 seconds"
    ExpiresByType text/html "access plus 1 seconds"
    ExpiresByType image/gif "access plus 2592000 seconds"
    ExpiresByType image/jpeg "access plus 2592000 seconds"
    ExpiresByType image/png "access plus 2592000 seconds"
    ExpiresByType text/css "access plus 604800 seconds"
    ExpiresByType text/javascript "access plus 216000 seconds"
    ExpiresByType application/x-javascript "access plus 216000 seconds"



    # Включение mod_rewrite
    RewriteEngine On

    # Редирект с www
    RewriteCond %{HTTP_HOST} ^www.livion.ru
    RewriteRule (.*) https://livion.ru/$1 [R=301,L]

    # Вывод sitemap по кратким урл
    RewriteCond %{REQUEST_URI} ^(/sitemap.xml)$
    RewriteRule (.*) index.php?option=com_xmap&view=xml&tmpl=component&id=1 [L]
    RewriteCond %{REQUEST_URI} ^(/sitemap.html)$
    RewriteRule (.*) index.php?option=com_xmap&sitemap=1 [L]

    # 404 ошибка


    # Пример редиректа
    Redirect 301 /srochnyj-notarialnyj-perevod-pasporta https://livion.ru/error
    Redirect 301 /sample-data-articles/joomla/extensions/components/administrator-components https://livion.ru/error

    ########## Начало - Правила обработки запросов для блокировки распространенных эксплоитов
    ## Если у вас возникли проблемы с вашим сайтом, используйте ниже описанные операции
    ## Они пытаются заблокировать самые распространенные эксплоиты Joomla!
    #
    ## Код запрета доступа к xml-файлам расширений (раскомментируйте для активации)
    #
    #Order allow,deny
    #Deny from all
    #Satisfy all
    #
    ## Конец кода запрета доступа к xml-файлам


    # Блокировать любой запрос, пытающийся установить значение mosConfig через URL
    RewriteCond %{QUERY_STRING} mosConfig_[a-zA-Z_]{1,21}(=|\%3D) [OR]
    # Блокировать любой запрос, пытающийся испортить base64_encode через URL
    RewriteCond %{QUERY_STRING} base64_encode.*\(.*\) [OR]
    # Блокировать любой запрос, содержащий тег
    Ответ написан
    Комментировать
  • Как изменить корень обращения сайта в .htaccess?

    @eratnikstudio Автор вопроса
    То же самое, файлы и папки((
    Ответ написан
  • Revolution Slider отображается на мобильном телефоне. Почему?

    @eratnikstudio Автор вопроса
    Hide Slider on mobile - поставил офф. Не помогает
    Слайдер не виден на мобильном
    shop.eratnikstudio.by
    Ответ написан
    Комментировать
  • Как в woocommerce перевести слова в корзине?

    @eratnikstudio Автор вопроса
    Это навигация, как я понимаю. Только где искать файл, что бы поменять слова - я не знаю(
    Ответ написан
    Комментировать