• Redis кеш под Wordpress сожрал всю память, что делать?

    @Kypidon4ik
    Фрилансер, Wordpress developer
    Такая же ситуация была, с хостером решали этот вопрос вместе. Сайт с 200к+ записями. Нам в какой-то момент 32 гб стало мало при TTL кеша редис в 86400. Было решено просто добавить еще 1 плашку на 32 гб.
    PS Скажу сразу что редис очень не любит когда его ограничивают в ОЗУ. При ограничении в ОЗУ начинает страдать ЦП. Замкнутый круг получается.
    Итог: или откажитесь от объектного кеша или разрешите брать столько ОЗУ сколько надо или попробуйте уменьшить TTL кеша (но это тоже спорно)
    Ответ написан
    Комментировать
  • Redis кеш под Wordpress сожрал всю память, что делать?

    Eugene-Usachev
    @Eugene-Usachev
    Не понимаю вашей проблемы. Redis будет удалять самые старые записи, если он заполнен. Если ничего не делать, он всё ещё будет хорошо работать в качестве кэша.

    1 ГБ - это слабая загруженность, на самом деле. Такой объём можно полностью уместить в Redis или Tarantool.
    Ответ написан
    Комментировать
  • Постоянные ссылки для кастомного типа записи в WordPress: как правильно создать?

    daniloneil
    @daniloneil Автор вопроса
    UPD: нашёл решение самостоятельно, всем спасибо за комментарии.

    Вот исправленный порядок и код:

    Для function.php
    /* Start: Register Post Type (Universities Pages) */
    function custom_post_type_universities_pages() {
        $labels = array(
            'name'               => _x('Universities Pages', 'post type general name', 'your-text-domain'),
            'singular_name'      => _x('Universities Page', 'post type singular name', 'your-text-domain'),
            // Добавьте другие метки по вашему усмотрению
        );
    
        $args = array(
            'labels'              => $labels,
            'public'              => true,
            'supports'            => array('title','editor','author','comments'), // Включение поддержки комментариев
        );
        
        register_post_type('universities_page', $args);
    }
    
    add_action('init', 'custom_post_type_universities_pages');
    
    /* Start: Rewrite URL's */
    function custom_rewrite_rule() {
        add_rewrite_rule('^([^/]+)/([^/]+)/([^/]+)/?$', 'index.php?pagename=university&country=$matches[1]&city=$matches[2]&university_slug=$matches[3]', 'top');
    }
    add_action('init', 'custom_rewrite_rule');
    
    function custom_rewrite_tag() {
        add_rewrite_tag('%country%', '([^&]+)');
        add_rewrite_tag('%city%', '([^&]+)');
        add_rewrite_tag('%university_slug%', '([^&]+)');
    }
    add_action('init', 'custom_rewrite_tag');


    Для index.php:
    <a href="<?php echo home_url('/' . $university_data->country . '/' . $university_data->city . '/' . $university_data->slug); ?>" class="text-size-medium text-weight-bold"><?php echo esc_html($university_data->name); ?></a>


    Для кастомной структуры в админ панели:
    домен/%country%/%city%/%postname%/
    Ответ написан
    1 комментарий
  • Почему набор номера не передается на телефон в браузере chrome?

    @cinquefoil2016
    есть вероятность, что в новой версии это не работает
    Ответ написан
    Комментировать
  • Как организовать подобную задачу правильно?

    pLavrenov
    @pLavrenov
    Разработка сайтов
    Лучше всего добавить поле в админ панель чтобы оно сохранялось в базу данных (или просто поле в базе). На фронте проверять, если есть короткое то выводим его если нет то обычное. А пример кода это просто ад, как заплатка на коленке может и сойдет но это не решение задачи.
    Ответ написан
    Комментировать
  • Прописывать адрес вручную или резервировать со шлюза?

    Rsa97
    @Rsa97
    Для правильного вопроса надо знать половину ответа
    Плюс статики - если оборудование загрузится быстрее DHCP-сервера, то оно будет иметь нормальный IP.
    Плюс DHCP - централизованное управление адресами и выдача адресов всем устройствам без их ручной настройки.
    У себя прописываю статические IP на серверах и сетевых принтерах, DHCP с привязкой к MAC для стационарных десктопов, DHCP из пула для остальных.
    Ответ написан
    Комментировать
  • Тег < p > и < span >. Есть разница?

    @Zarron
    Front-end developer
    Советую погуглить про семантику, тэги отличаются не просто так, есть main, header, footer - так же с текстом, все нужно использовать по мере необходимости, сайт конечно же можно на div-ах написать но это будет "неправильно" для поисковых роботов
    Ответ написан
    1 комментарий
  • Тег < p > и < span >. Есть разница?

    vabka
    @vabka
    Токсичный шарпист
    Разница в том, что span не несёт никакого семантического смысла, а p несёт и является параграфом.
    Ответ написан
    5 комментариев
  • Неужели All in One SEO Pro действительно такой плохой?

    vpetrov
    @vpetrov
    частный SEO-специалист, textarget.ru
    Вообще говоря, народ в основном переехал на RankMath - всё то же самое, что AiOS и Yoast, только бесплатно и поболе в бесплатной версии.
    Yoast с его бесконечными апдейтами и кучей мусора в коде я бы не порекомендовал. Ну жесть же: ставить плагин, который вырезает спамные комментарии Yoast из кода. А приходится.
    Структура и архитектура WP сама по себе такова, что без тормозов, грязи в коде и тоннами запросов к БД иначе и не бывает. В принципе - это терпимо.
    Если вы хотите уходить с AiOSP - ну, попробуйте Rank Math. Он даже настройки от старого плагина подхватывает, переход чаще всего абсолютно бесшовный и беспроблемный. Однако особого смысла в этом нет, там нет ничего принципиально отличающегося. Чуть пошустрее, чуть полегче, чуть подобрее. Не более.
    И в целом: скорость загрузки - это, конечно, фактор, но слишком уж малый, чтобы ради его всерьёз перепиливать рабочий стафф.
    Ответ написан
    5 комментариев
  • Как создать RAID-хранилище из старых SATA HDD?

    Melkij
    @Melkij
    PostgreSQL DBA
    получить к ним доступ по сети

    NAS (Network-attached storage)

    или по USB

    DAS (Direct-attached storage)
    DAS очень слабо распространены даже по сравнению с NAS.

    Мне не разглядеть на картинке, какие объёмы дисков. Заводские с большой вероятностью будут испытывать трудности с организацией массива из дисков разного объёма - например, возьмут меньший из дисков, превышающая ёмкость остальных останется неиспользуемой. Ну и даже лишь скромные 5 дисков уже часто нарекают бизнес-сегментом с более чем кусающимся ценником. Как-то тут на q&a подсчитывали, что дешевле взять USB хаб с внешним питанием и пяток usb адаптеров для 2,5" дисков (как у вас), чем покупать контроллер на 5 дисков... (к слову, да, один новый большой HDD вполне может быть дешевле чем пристраивать 5 маленьких)

    Самостоятельно собранные nas на десктопных комплектующих - штука не такая уж редкая. Ещё бывают всякие смешные игрушки на ARM
    Ответ написан
    4 комментария
  • Как создать RAID-хранилище из старых SATA HDD?

    leahch
    @leahch
    3D специалист. Dолго, Dорого, Dерьмово.
    Вообще-то это называется - корзина для жестких дисков. Обычно они с интерфейсами SATA/SAS.
    C USB обычно на один диск - просто коробка с контроллером SATA-USB.
    Есть дорогие коробочки с интерфейсом Thunderbolt, и есть со встроенным RAID-контроллером (но софтовый RAID лучше).
    Если с интерфейсом Ethernet, то это уже так называемые NAS, в нем строена материнка с простеньким процессором и корзинка с hot-swap. Такой можно собрать и самостоятельно - плата с кучей портов SATA + корзина для HDD, плюс линукс или freebsd, как советовал Drno
    Ответ написан
    Комментировать
  • Как создать RAID-хранилище из старых SATA HDD?

    @Drno
    берешь любой ПК с 6 sata
    подбираешь подходящий корпус
    всё пихаешь внутрь, докупаешь ssd на 64-128гб под систему
    ставишь туда голый debian \ ubuntu и настраиваешься mdadm

    либо устанавливаешь что то готовое - типа OpenMediaVault или FreeNAS
    Ответ написан
    Комментировать
  • Как распаковать установочный пакет, а затем собрать его обратно, сохранив всю функциональность установщика?

    Zoxon
    @Zoxon
    Веб-разработчик
    1. Через Universal Extractor www.legroom.net/software/uniextract распаковываете и ковыряете файлы, если есть файл(ы) с переводами переводите их.

    2. Если нету берете любой ковыряльшик ресурсов (Resource Hacker, Restorator и тд.) и меняете текст.

    3. Если файлы зашифрованы или упакованы. Смотрите чем упаковано и ищите анпакер. И повторяем пункт 2

    Можно еще поискать русификатор
    Ответ написан
    3 комментария
  • Как разбить одну таблицу на две и правильно заполнить её данными из импорта?

    @Akina
    Сетевой и системный админ, SQL-программист.
    CREATE TABLE client ( clientid INT AUTO_INCREMENT PRIMARY KEY,
                          firstname VARCHAR(255),
                          lastname VARCHAR(255),
                          phone BIGINT,                           -- если исходный VARCHAR - поменять, 
                                                                  -- либо соотв. преобразование в INSERT
                          UNIQUE (firstname, lastname, phone) );  -- можно потом удалить
    
    INSERT INTO client (firstname, lastname, phone)
        SELECT DISTINCT firstname, lastname, phone
        FROM orders_old;
    
    CREATE TABLE order ( orderid INT AUTO_INCREMENT PRIMARY KEY,
                         ordernumber INT,
                         clientid INT,
                         FOREIGN KEY (clientid) REFERENCES client (clientid) );
    
    INSERT INTO order (ordernumber, clientid)
        SELECT orders_old.ordernumber, client.clientid
        FROM orders_old
        JOIN client USING (firstname, lastname, phone);

    NOT NULL - по вкусу.
    Ответ написан
    1 комментарий
  • Как правильно настроить DMARC?

    McHaber
    @McHaber
    sysadmin
    Богдан Герасименко если интересно, вот сравнительно полный список сервисов по обработке DMARC отчетов
    https://np.reddit.com/r/sysadmin/comments/dcjz4i/d...
    Ответ написан
    Комментировать
  • Обязательно ли объявлять тип переменной в PHP 8?

    DevMan
    @DevMan
    не обязательно, это просто рекомендация.
    и частый затык новичков, которые воспринимают все подчеркнутое как ошибку, хотя это только намек.
    Ответ написан
    Комментировать
  • Как найти место взлома wordpress?

    msHack
    @msHack
    Попробуйте сканеры безопасности их очень много разных
    Ответ написан
    Комментировать
  • Как определить какой это шаблон Wordpress?

    @BIGB0SS
    В первую очередь стоит смотреть на файл style.css.
    Каждый шаблон ВордПресса должен иметь шапку в этом файле, где указывается название шаблона, его автор и тд.
    Но, в этой шапке можно написать что угодно, поэтому достоверной информации об авторстве шаблона найти в ней не получится.
    Судя по структуре стилей - это довольно простой шаблон, сделанный на Bootstrap'e. Так что вряд ли он был сделан на основе чего-либо, кроме Bootstrap'а.

    /*
    
    Theme Name: Forss
    
    Author: Art Media Agency
    
    Author URI: http://www.artmedia.ee/
    
    Version: 1.0
    
    */
    Ответ написан
    Комментировать
  • Как сформировать SQL запрос many to many?

    dimonchik2013
    @dimonchik2013
    non progredi est regredi
    Ответ написан
    Комментировать
  • Нужна ли минификация кода при активном GZIP?

    takezi
    @takezi
    Intelligent people are full of doubts.
    1% выиграете в среднем при gzip+minification. Думаю овчинка выделки не стоит.
    Ответ написан
    2 комментария