• Почему get_query_var('page') ничего не возвращает?

    @Muvka Автор вопроса
    Вообщем, я сделал подходящий для себя костыль. Сайт простой в целом. Просто для paged вычленил из адресной строки номер страницы и присваиваю paged. Кто знает, пусть скажет, какие проблемы могу возникнуть?
    $paged = 1;
    
    $req_uri = array_reverse(explode('/', $_SERVER['REQUEST_URI']));
    foreach ($req_uri as $value) {
       if(is_numeric($value)) {
            $paged = $value;
    	break;
       }
    }
    $args = array (
     'post_type' => 'post',
     'post_status' => array( 'publish' ),
     'posts_per_page' => '8',
     'paged' => $paged
    );
    Ответ написан
    1 комментарий
  • С чего начать изучения анимации svg?

    sfi0zy
    @sfi0zy Куратор тега CSS
    Creative frontend developer
    По сути SVG - это почти HTML (ок, нехорошо так говорить, но тем не менее). Дерево из тегов, атрибуты, все дела. Выбираем нужные элементы, меняем атрибуты - вот и вся анимация. Как и с любыми другими элементами на странице. Это не какой-то отдельный и ни на что не похожий тип анимаций.

    Есть три варианта анимирования SVG в рамках фронтенда, два идентичных обычному HTML, и один дополнительный, привнесенный извне:

    1. CSS. Картинку, вставленную в страницу, можно анимировать с помощью CSS в каких-то пределах. Не все так получится сделать, но какие-то простые движения, изменения цветов - вполне можно. Если вы знаете CSS - можно сказать, что уже знаете все, что тут можно сделать.
    2. JS. Все как всегда. Получаем элементы через querySelector, getElementBy... и.т.д., и через setAttribute задаем элементам SVG нужные атрибуты. Обычно удобно добавить какой-то инструмент для интерполяций значений во времени. Из популярного - GSAP и Anime.js. При желании можно что-то свое написать, если задачи совсем простые, в базовом варианте все подобные инструменты строятся примерно по такому принципу. Некоторые инструменты добавляют какие-то еще свои дополнительные возможности, или есть готовые прикольные примеры, сделанные с их использованием, как например у d3.js, но нужны ли они лично вам - нельзя сказать, не зная задач. А инструменты должны выбираться исходя из этих самых задач, а не из моды. Здесь важно лишь понимать, что никакие библиотеки не расширяют сам формат SVG, не привносят никаких принципиально новых возможностей в него, они все больше про организацию скриптов.
    3. Еще есть SMIL. Это древнее зло из миров, далеких фронтенду. Есть хороший туториал на CSS-tricks. Это все "модно-нативно", но иногда сложно синхронизировать с остальными событиями на странице, и сложно отлаживать, т.к. нет адекватной привязки к инструментам разработчика в браузерах.


    Полезно еще познакомиться с вот этой статьей, там отмечены некоторые косяки, связанные с кроссбраузерностью. Да, SVG - это штука, которая вроде бы была с нами всегда, но в контексте анимирования wtf-моментов там все еще достаточно.

    И есть две популярные фишки, которые часто все используют в анимациях - это маски и пунктиры. Способ анимирования не важен, но знать про них полезно.

    Ну и полезно познакомиться с каким-нибудь векторным графическим редактором, чтобы уметь структурировать SVG перед анимированием, удалять мусор, адаптировать контуры для морфинга (не всегда дизайнер будет предоставлять полный набор нужных контуров).
    Ответ написан
    1 комментарий
  • Как исправить проблему со входом в админ панель wordpress?

    rassu
    @rassu
    системный администратор
    Помогает внесение таких строк в wp-config.php, лучше в начало файла, после конфигурации доступа к базе данных:
    define(‘WP_HOME’,’https://domain.com’);
    define(‘WP_SITEURL’,’https://domain.com’);
    define('FORCE_SSL_ADMIN', true);
    define('FORCE_SSL_LOGIN', true);
    if (isset($_SERVER['HTTP_X_FORWARDED_PROTO']) && $_SERVER['HTTP_X_FORWARDED_PROTO'] == 'https') {
    $_SERVER['HTTPS'] = 'on';
    $_SERVER['SERVER_PORT'] = 443;
    }
    Ответ написан
    5 комментариев
  • Отступы между элементами списка?

    barmaley_exe
    @barmaley_exe
    Если нужно сохранить читабельность кода, можно задать ul'у font-size:0 (и, может быть, что-нибудь еще из той же категории) и восстановить его для li.
    Ответ написан
    1 комментарий
  • Как сделать ответ от php в ajax до завершения выполнения php кода?

    @maddimas
    Есть асинхронный php, но мне так и не удалось его заставить работать. Вообще это от лукавого. Может вам делать два ajax запроса? Один на запись в бд а другой на отправку писем? И вообще я бы сделал все за один раз. Записал бы в базу, записал в другую таблицу, что надо отправить через 10 минут письмо и дал бы ответ юзеру. А крон задание запускающееся раз в 10 минут отправило бы письмо.
    Ответ написан
    Комментировать
  • Как сделать ответ от php в ajax до завершения выполнения php кода?

    Вы не можете заставлять сервер спать. Это чудовищная трата ресурсов. Первая и основная задача сервера, это "как можно скорее отдать ответ и быть готовым к приему следующего запроса". К тому же хостер не разрешит вам выполнять скрипт 10мин. По умолчанию на скрипт выдается 30 секунд.
    Что Вам мешает отправить почту, а потом вернуть ответ? Если, все же, Вы хотите отдать ответ, а потом отправить почту, тогда посмотрите в сторону cron задач.
    Ответ написан
    Комментировать
  • Как сделать ответ от php в ajax до завершения выполнения php кода?

    alex-1917
    @alex-1917
    Если ответ помог, отметь решением
    Коли у тебя свой плагин, что мешает использовать крон?
    1. Пишем данные в таблицу, колонка флаг по умолчанию ноль.
    2. Кроном пробегаем раз в 10 минут по таблице - ищем строки с флагом ноль, собираем с этих строк в массив емайлы, флаг ставим еденичку, массив отдаем скрипту почтовому.
    Ответ написан
    Комментировать