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

    nokimaro
    @nokimaro
    Меня невозможно остановить, если я смогу начать.
    От яндекса есть официальные рекомендации
    https://yandex.ru/support/webmaster/yandex-indexin...
    https://yandex.ru/support/webmaster/yandex-indexin...

    Проверенный способ без вылета страниц
    1. 301 редирект всех страниц http -> https
    2. в вебмастере ставим галочку переезд на https
    Именно переезд http -> https по момему опыту в яндексе происходит гладко и без особых просадок. Главное не накосячить с редиректом и ssl-сертификатом чтобы небыло роста отказов.

    Технически такой переезд это смена главного зеркала через редирект, но именно в случае http -> https в рамках одного домена, всё проходит с минимумом просадок, и как-правило после перехода на https всегда наблюдали по итогу рост трафика из ПС.
    Ответ написан
    Комментировать
  • Почему после удаления 301 редиректа с .htaccess страница все равно редиректится Wordpress?

    nokimaro
    @nokimaro
    Меня невозможно остановить, если я смогу начать.
    Похоже на кэш браузера.
    Убедиться на 100% есть редирект или нет, можно используя яндекс веб-мастер.
    Используйте инструмент проверки ответа сервера https://webmaster.yandex.ru/tools/server-response/
    Вводите урл и смотрите код ответа, 200 там или 301.
    Ответ написан
    Комментировать
  • Как в $post_id передать нужную запись для события cron и обновления полей update_post_meta по расписанию?

    nokimaro
    @nokimaro
    Меня невозможно остановить, если я смогу начать.
    внутри function updated_meta() написать код для получения нужных $post_id из БД?

    гугл подсказывает что делается это через get_posts()
    $args = array(
      'numberposts' => 10,
      //'post_type'   => 'book'
    );
     
    $latest_posts = get_posts( $args );
    Ответ написан
    3 комментария
  • Есть ли смысл учить wordpress в 2020?

    nokimaro
    @nokimaro
    Меня невозможно остановить, если я смогу начать.
    По прогнозам некоторых людей, PHP скорее всего через год - два умрет, а вместе с ним и все CMS, написанные на нем

    Смешно такое читать. Помню такие прогнозы и 5 лет назад и даже 10 лет назад.
    Именно заставлять себя изучать WP нету смысла, тем более там ещё тот г.код под капотом.
    Потратьте время на прокачку скилов по программированию. Тогда не важно с какой CMS или фреймворком работать. При должных навыках и опыте на изучение уйдет от недели до месяца.
    Ответ написан
    1 комментарий
  • Могут ли знаки в отзыве положить страницу?

    nokimaro
    @nokimaro
    Меня невозможно остановить, если я смогу начать.
    Такое возможно. Особенно если отзывы реализованы сторонним плагином, который может содержать ошибки.
    Чтобы защититься, нужно изучить проблему. То есть найти проблемный отзыв (дождаться повторения), и посмотреть логи ошибок сервера чтобы понять что конкретно этот отзыв ломает в системе.
    Исходя из этого уже сделать фильтр который не будет пропускать такие "зловредные" отзывы, либо фильтр который будет их обезвреживать.
    Ответ написан
    2 комментария
  • Как сделать определенную выборку while?

    nokimaro
    @nokimaro
    Меня невозможно остановить, если я смогу начать.
    Трюк в том что
    - пока $i = 0,1,2,3 не выводим tile
    - далее 4,5 выводим
    - далее 6 не выводим и присваиваем $i = 2
    - далее так как мы сделали 2 то след будет 3 - не выводим
    - далее 4,5 и всё по кругу

    <?php
    if(have_posts())
    {
        $i = 0;
        while(have_posts())
        {
            the_post();
    
            if($i > 3)
            {
                if($i == 4 || $i == 5)
                {
                    the_title();
                }
                else
                {
                    //тут 6 - не выводим и уменьшаем счётчик до 2
                    //на след шаге $i будет 3 и значит опять не выводим
                    //а потом 4, 5 вывод и так по кругу
                    $i = 2;
                }
            }
            
            $i++;
        }
    }
    Ответ написан
    1 комментарий
  • NGINX перенаправление iframe c https на http или https на порту 8085?

    nokimaro
    @nokimaro
    Меня невозможно остановить, если я смогу начать.
    Чтобы небыло проблем с https то нужен валидный SSL сертификат, который для ip (без домена) получить очень проблематично.

    В вашем случае самый оптимальный вариант такой
    1. сделать субдомен и с валидным https сертификатом например iframe.mydomain.ru
    2. в настройках nginx для server_name iframe.mydomain.ru делаем проксирование запросов на ваше java-приложение на нужном порту
    location / {
        proxy_pass http://172.16.0.68:8085;
    }

    3. iframe соотв-но встраиваете как src="https://iframe.mydomain.ru/..."
    Это решит вопросы и с https, вопросы cross domain доступа, а так же позволит не светить 8085 портом в мир, так как проксировать можно в рамках локальной сети.
    Ответ написан
    Комментировать
  • В чем ошибка при использование swiper в WordPress?

    nokimaro
    @nokimaro
    Меня невозможно остановить, если я смогу начать.
    Судя по приведённому коду из вашего примера https://stackblitz.com/edit/swiper-demo-30-thumbs-...

    Нужно в контейнер <div class="swiper-wrapper"> помещать блок где адрес изображения задан через background-image:url()

    <div class="swiper-slide" style="background-image:url(https://swiperjs.com/demos/images/nature-1.jpg)"></div>


    То что вы делаете сейчас это внутрь <div class="swiper-slide"> помещаете <img> элементы

    А надо
    - создать новый элемент div class = swiper-slide
    - задать ему style background-image:url(...) c адресом изображения (из img src)
    - этот созданный элемент поместить внутрь <div class="swiper-wrapper">
    - повторить для следующего изображения

    Что делаете вы
    <div class="swiper-wrapper">
    <div class="swiper-slide">
       <img src=...
       <img src=...
       <img src=...
    
    </div>
    </div>


    Что надо сделать
    <div class="swiper-wrapper">
        <div class="swiper-slide" style="background-image:url(...)"></div>
        <div class="swiper-slide" style="background-image:url(...)"></div>
        <div class="swiper-slide" style="background-image:url(...)"></div>
    </div>
    Ответ написан
    Комментировать
  • Как более лучше оптимизировать код для добавления товаров в избранное?

    nokimaro
    @nokimaro
    Меня невозможно остановить, если я смогу начать.
    Не понятно требование для пустой $data отправлять 1, а не 0
    То есть если было одно значение в избранном и стало ноль, то посылаем 1 и при этом если было ноль и добавили первое значение то всё-равно посылаем 1?

    <?php
    function add_to_id()
    {
        if(isset($_POST['variation_id']) && !empty($_POST['variation_id']))
        {
            $value = intval($_POST['variation_id']);
        }
        elseif(isset($_POST['product_id']) && !empty($_POST['product_id']))
        {
            $value = intval($_POST['product_id']);
        }
        else
        {
            wp_send_json_error();
        }
    
        $data = [];
        if(isset($_COOKIE['wp_id']))
        {
            foreach(explode(',', $_COOKIE['wp_id']) as $val)
            {
                if(!empty($val))
                {
                    $data[$val] = $val;
                }
            }
        }
        
        //удаляем value если оно было среди значение в cookie
        if(isset($data[$value]))
        {
            unset($data[$value]);
        }
        else
        {
            $data[$value] = $value;
        }
    
        setcookie("wp_id", implode(',', $data), time() + 86400 * 30, COOKIEPATH, COOKIE_DOMAIN);
    
        //если человек кликнул - $data: 1, а при повторном клике (по той же иконке) - $data: 0
        wp_send_json_success(count($data));
    }
    Ответ написан