Задать вопрос
Ответы пользователя по тегу WordPress
  • Возможно ли инициировать клик через url?

    Mike_Ro
    @Mike_Ro Куратор тега WordPress
    Python, JS, WordPress, SEO, Bots, Adversting
    Без дополнительной логики на фронте или сервере - нельзя. Можно написать js обработчик, который будет разбирать url и на основание его параметров - выполнять клик.

    P.S. посмотрел калькулятор, он вообще не отправляет никаких данных на сервер, т.е. он считает их на клиенте, а значит вариант с отправкой запросов к их серверу так же отпадает. В общем, проще (быстрее и дешевле) написать свой калькулятор, чем решать текущую задачу, либо найти аналог.
    Ответ написан
    Комментировать
  • Как сделать сайт на WordPress с высокой производительностью?

    Mike_Ro
    @Mike_Ro Куратор тега WordPress
    Python, JS, WordPress, SEO, Bots, Adversting
    Как сделать сайт на WordPress с высокой производительностью?

    Вначале необходимо определить, что такое "высокая производительность". Обычно, под производительностью сервера (WP сайт это как раз тот самый сервер) подразумевается показатель RPS (Requests Per Second) - максимальное количество запросов к серверу в секунду. Именно максимальное, т.е. в какой то "час-пик". Предположим, что сайты на WP обычно используют небольшие, ну максимум средние компании, с соответствующим ожиданием по нагрузке в своем сегменте.

    Возьмем голую тему без плагинов, которая выводит 10 изображений, с подключением 5 статических файлов (css/js), итого около 20 запросов от одного не кэшированного визита посетителя. Если на наш сайт зайдут 5 посетителей в секунду, они сгенерируют 100 RPS (5 * 20). Может показаться, что 5 визитов в секунду - это мало, но в минуту это будет уже 300 визитов, а в час 18000 визитов, что как бы дохрена, для малого-среднего бизнеса. Повторюсь, речь идет про "час-пик", т.к. нагрузка в другой промежуток времени нас не интересует.

    По моим наблюдениям, WP без проблем выдерживает 50-100 RPS на нормальном хостинге с начальным тарифом без кэширования.

    Но проблема в другом - в теме и ее плагинах, я видел темы, которые генерируют 200 запросов к серверу с одного визита, что ломает всю логику подсчетов выше, и может спокойно положить тот самый начальный хостинг.

    Я придерживаюсь следующего плана оптимизации WP сайта, от простого к сложному:
    1. Кэширование плагином - самое быстрое и относительно дешевое решение, гуглить WordPress caching plugins. Обычно, вместе с такими плагинами идет опция с оптимизацией изображения до .webp или .avif формата и оптимизацией css/js файлов, если же нет, то это должен быть следующим пунктом оптимизации. Например, для W3 Total Cache имеются плагины Smush и ShortPixel.
    2. Хостинг - арендовать более производительный shared-хостинг и подключить CDN.
    3. VDS/DS хостинг - переезд на производительный VDS/DS хостинг, настройка обратного прокси Nginx и перекладка на его плечи задачи кэширования. Иногда получается сделать так, что до WP вообще не доходит запросов, все отрабатывает Nginx (это идеальный сценарий, но не всегда выполнимый). Здесь можно снять несколько сотен-тысяч RPS, что уже очень прилично, для такого уровня сайтов.
    4. Больше серверов - докупка VDS/DS серверов с балансировкой, либо руками, либо средствами хостера. Здесь можно снять ЕЩЕ несколько сотен-тысяч RPS дополнительно к п3. Обычно, такая производительность нужна каким то интернет-каталогам/магазинам.

    Конечно, можно переписать саму тему с плагинами (написать с нуля), но не факт, что это будет дешевле и быстрее, чем пункты выше. Бизнесу вообще глубоко фиолетово, на чем написан инструмент (сайт), главное, чтобы он приносил деньги, стоил максимально дешево и мог быстро нарастить производительность под новую нишу, если это понадобится.

    Ну и как уже сказали другие, elementor противоречит слову "производительность", хотя и его наличие можно на время закидать кэшированием-серверами-деньгами.

    Рекомендую почитать:
    WordPress Developer Resources - Optimization
    The Ultimate Guide to Boost WordPress Speed & Perf...
    Page Speed Optimization for WordPress
    Как понять, где лучше использовать плагин, а где лучше разобраться и вставить код?
    Какие плагины обязательны? А какие замедлят сайт?

    Отслеживать производительность можно плагинами New Relic и Query Monitor, а тестировать нагрузку Load Impact и Apache Benchmark. Это поможет понять, где узкие места.
    Ответ написан
    5 комментариев
  • Как сделать шапку на всю ширину экрана в Wordpress?

    Mike_Ro
    @Mike_Ro Куратор тега WordPress
    Python, JS, WordPress, SEO, Bots, Adversting
    Как это сделать? Такое чувство, что тема Astra перебивает мои настройки

    Чувства обманчивы, надежнее использовать инструменты разработчика в браузере.
    Мне нужно сделать шапку сайта с верхним меню на всю ширину экрана.
    У меня почему-то footer и header по размеру контейнера, хотя по размеру контейнера должен быть только контент внутри, а не сам элемент.

    Примерный алгоритм, с 3 секциями и контейнерами внутри них:
    <div class="page">
    
        <div class="page__item page__item--header">
            <div class="page__container">
                <div class="header"></div>
            </div>
        </div>
    
        <div class="page__item page__item--content">
            <div class="page__container">
                <div class="content"></div>
            </div>
        </div>
    
        <div class="page__item page__item--footer">
            <div class="page__container">
                <div class="footer"></div>
            </div>
        </div>
    
    </div>
    Ответ написан
    4 комментария
  • Какой SEO-плагин поставить для для Wordpress в 2025м?

    Mike_Ro
    @Mike_Ro Куратор тега Поисковая оптимизация
    Python, JS, WordPress, SEO, Bots, Adversting
    Переезд на зарубежные сервера чреват потерей позиций сайта (тестировала, так и случилось).

    От смены сервера позиции не проседают, что то другое повлияло.
    Какой SEO-плагин поставить для для Wordpress в 2025м?

    Тот же, что и в 24 году - Yoast SEO или All in One SEO Pack.
    Ответ написан
    3 комментария
  • Как в woocomerce получить содержимое корзины не для зарегистрированного пользователя?

    Mike_Ro
    @Mike_Ro Куратор тега WordPress
    Python, JS, WordPress, SEO, Bots, Adversting
    1. Проверить, работают ли сессии в WP. Ради эксперимента, можно попробовать дернуть товары напрямую из сессии WC()->session->get( 'cart' ).
    2. Если п1 == true, то использовать WC()->cart->get_cart(), WC_Cart.
    Ответ написан
    Комментировать
  • Как связать несколько сайтов в WP?

    Mike_Ro
    @Mike_Ro Куратор тега WordPress
    Python, JS, WordPress, SEO, Bots, Adversting
    Несколько вариантов:
    - WordPress Multisite.
    - Плагины по типу MainWP.
    - Общее внешнее хранилище (бд/файл/api) для всех сайтов, которые берут из нее данные.
    Ответ написан
    Комментировать
  • Кто же создает sitemap.xml в этом случае?

    Mike_Ro
    @Mike_Ro Куратор тега Поисковая оптимизация
    Python, JS, WordPress, SEO, Bots, Adversting
    Мне не очень понятно что за сервис такой в панели управления хостинга который умеет залезать в БД вордпресс???!

    Никуда он не залезает, а просто обходит сайт по всем страницам.
    Ответ написан
    1 комментарий
  • Как мигрировать содержимое Master Slider в любой другой аналогичный слайдер на Wordpress?

    Mike_Ro
    @Mike_Ro Куратор тега WordPress
    Python, JS, WordPress, SEO, Bots, Adversting
    Автоматически и с полным сохранение контента в том виде, в котором он был в MasterSlider - никак, только руками, можно своими, или с фриланса.
    Ответ написан
    1 комментарий
  • Как задать сложность выбора пароля при регистрации на вордпресс?

    Mike_Ro
    @Mike_Ro Куратор тега WordPress
    Python, JS, WordPress, SEO, Bots, Adversting
    Ответ написан
    Комментировать
  • При репосте - 403 ошибка, почему?

    Mike_Ro
    @Mike_Ro Куратор тега WordPress
    Python, JS, WordPress, SEO, Bots, Adversting
    Run Curl Commands Online, выполните команду curl https://site.ru/sames/topic/some_post, если вернется нормальный ответ, то проблемы на стороне FB.
    Ответ написан
    Комментировать
  • Как и куда вставлять ссылки с UTM метками?

    Mike_Ro
    @Mike_Ro Куратор тега WordPress
    Python, JS, WordPress, SEO, Bots, Adversting
    Помогите пожалуйста как правильно отслеживать нажатия кнопок на лендинге.

    Я собираюсь подключить Гугл Адвордс и отслеживать нажатия этих кнопок. Как это сделать?

    Использовать конверсии.
    Я прочитал, что это можно делать через UTM-метки, через генератор УТМ меток сгенерировал код:

    UTM метки нежны для того, чтобы другой сайт узнал, откуда и при каких обстоятельствах перешёл посетитель.
    На самом деле тут как раз все просто, это небольшие фрагменты кода, они стандартные, которые добавляются к адресу странички и позволят Гугл Аналитикс или другим сервисам определять источники трафика, откуда кто перешел, на что нажали.

    Это не фрагменты кода, а url параметры. Они не всегда стандартны. Они не позволяют точно определить, что нажали, для этого существуют события конверсий.
    Проблема в том, мне кажется, что они не должны добавляться в адресную строку странички, а скорей должны как-то автоматически добавляться через JS код.

    Нет.
    Ответ написан
    Комментировать
  • Где можно отредактировать title?

    Mike_Ro
    @Mike_Ro Куратор тега WordPress
    Python, JS, WordPress, SEO, Bots, Adversting
    Подскажите пожалуйста где можно изменить содержание в title в WordPress?

    Если тема дефолтная, то title обычно формируется из заголовка поста + названия сайта из админки. Если тема кастомная, то может быть все, что угодно.
    Ответ написан
    Комментировать
  • Как в wordpress с помощью advanced custom field вывести кнопку для скачивания файла?

    Mike_Ro
    @Mike_Ro Куратор тега WordPress
    Python, JS, WordPress, SEO, Bots, Adversting
    P.s. в программировании вообще не силен

    А если загуглить? Advanced custom fields download button.
    Ответ написан
  • Как в WooCommerce задать несколько цен?

    Mike_Ro
    @Mike_Ro Куратор тега WordPress
    Python, JS, WordPress, SEO, Bots, Adversting
    Комментировать
  • Как создать файл изображения и загрузить его в библиотеку на wordpress?

    Mike_Ro
    @Mike_Ro Куратор тега WordPress
    Python, JS, WordPress, SEO, Bots, Adversting
    1. wp_tempnam() - создать временный файл $tmp для его последующей перезаписи из п3.
    2. Объявить ассоциативный массив с данными изображения, где среди прочего передать 'name' => basename($tmp),
    3. Перезаписать временный файл из п1 данными из п2 - media_handle_sideload(), вернется id уже загруженного изображения в wp.
    4. Удалить временный файл п1 - unlink().
    5. Зная id уже загруженного изображения на сервер (п3), можно получить его превью (например).

    Выглядеть это будет примерно так (грубый пример):
    $tmp = wp_tempnam('img');
    imagejpeg($img_o, $tmp, 100);
    imagedestroy($img_o);
    
    $file_data = [
        'name' => basename($tmp),
        'tmp_name' => $tmp,
    ];
    
    $id = media_handle_sideload($file_data);
    unlink($tmp);
    
    echo wp_get_attachment_image_url($id, 'thumbnail');
    Ответ написан
    2 комментария
  • Как переводить текст из шаблонов при помощи WP Multilang?

    Mike_Ro
    @Mike_Ro Куратор тега WordPress
    Python, JS, WordPress, SEO, Bots, Adversting
    Используйте функции локализации __() и _e(), Multilang поддерживает эти функции.
    Ответ написан
    1 комментарий
  • Метод разработки и обновления сайта?

    Mike_Ro
    @Mike_Ro Куратор тега JavaScript
    Python, JS, WordPress, SEO, Bots, Adversting
    Все зависит от организации работы в конкретной конторе и конкретного разработчика, но лично у меня работает следующий подход:
    1. Пишем начальное тз, минимальный необходимый перечень.
    2. Говнокодим на основание п1 по принципу - "сделать быстро и чтобы работало по тз".
    3. Пушим п2 в гит и разворачиваем сайт (или компонент на сайте).
    4. Записываем фидбэк о компоненте, что не работает, как хотелось бы чтобы работало итп. Если это не критические замечания (безопасность или что то основное не работает), то откладываем изменения на месяц, квартал или год.
    5. При накопление критической массы замечаний в п4 (ну или у Вас просто не осталось задач на настоящий момент) - добавляем рефакторинг п3 в очередь задач.
    6. Повторяем 3-6 пункты до бесконечности.

    При данном режиме работы решается сразу 3 задачи:
    - Не требуется детальное тз на старте, в котором все равно не удастся предвидеть все наперед, соответственно сокращается общее время разработки и его стоимость.
    - Сайт или компонент сайта выпускается в релиз очень быстро, а значит решает задачу бизнеса так же быстро.
    - Прозрачный и прогнозируемый по срокам и стоимости режим релизов.

    Важное уточнение!

    Схема с минимальным ТЗ и говнокодом работает лишь с теми заказчиками, которым Вы подробно разъяснили, почему сроки и стоимость ниже, почему за каждую "хотелку" не указанную в тз придется доплачивать, и почему необходим рефакторинг.

    Идеальный вариант, донести до заказчика мысль, что проект будет требовать постоянного финансирования (в определенном ежемесячном объеме) на разработку новых или рефакторинг старых компонентов. В таком случае у Вас всегда будет под рукой разработчик, который сможет оперативно и за привычную стоимость решить поставленную задачу, который уже привык работать в таком режиме и ему не нужно лишний раз объяснять одно и то же.
    Ответ написан
    Комментировать
  • Как лучше создать мультиязычный сайт?

    Mike_Ro
    @Mike_Ro Куратор тега Поисковая оптимизация
    Python, JS, WordPress, SEO, Bots, Adversting
    Если сайт не большой, то лучше плагином. How to make multi language website wordpress. Для seo, url лучше сделать подпапками, например: site.com/en/page
    Ответ написан
    Комментировать
  • Как сделать условие внутри echo?

    Mike_Ro
    @Mike_Ro Куратор тега WordPress
    Python, JS, WordPress, SEO, Bots, Adversting
    Так?
    $categories = get_categories([
        'taxonomy' => 'video',
        'orderby' => 'ID',
        'order' => 'DESC',
        'number' => '8',
    ]);
    
    foreach ($categories as $c) {
        $vQuality = get_field('video_quality', 'category_' . $c->term_id);
    
        if ($vQuality === '4K') {
            echo '<img src="/image2.jpg">';
        }
        
        elseif ($vQuality === '1080') {
            echo '<img src="/image3.jpg">';
        }
        
        else {
            echo '<img src="/image1.jpg">';
        }
    
        echo '<p>' . esc_html($c->name) . '</p>';
    }
    Ответ написан
    5 комментариев
  • Как продвинуть свой сайт на wordpress?

    Mike_Ro
    @Mike_Ro Куратор тега Поисковая оптимизация
    Python, JS, WordPress, SEO, Bots, Adversting
    Практически из любого сайта можно сделать образцово seo оптимизированный сайт (в обратную сторону это так же работает). Для начала начните с Гугла, затем задавайте более конкретные вопросы.
    Ответ написан
    1 комментарий