• Как лаконичнее всего выбрать селекторы?

    @lagudal Автор вопроса
    Это я найду самостоятельно, спасибо, если типа регэкспами нельзя, то вопрос можно закрыть или удалить.
    Всем спасибо
    Написано
  • Как лаконичнее всего выбрать селекторы?

    @lagudal Автор вопроса
    Алексей Уколов,
    пожалуйста.
    <div id="A">
    .....content for A ....
    </div>
    <div id="B">
    .....content for B ....
    </div>
    <div id="C">
    .....content for C....
    </div>
    <div id="D">
    .....content for D ....
    </div>
    <div id="E">
    .....content for E ....
    </div>
    Написано
  • Как лаконичнее всего выбрать селекторы?

    @lagudal Автор вопроса
    это понятно, но там не очень хорошо всё - контент сгенерирован page builder, и там большинство родительских селекторов рандомно сгенерированы и после каждого деплоя и очистки кеша меняются.
    Первый родитель у каждого нужного элемента - div data-element="content", но это мне ничего не дает, так как на странице куча других таких элементов с таким родителем, но отличных от нужных мне.
    Думал может можно хитро как мы описываем регэкспами, с чего начинается или на что заканчивается.
    Написано
  • Как сделать обработку меню, закрывающего элемент, при переходе к нему по якорю?

    @lagudal Автор вопроса
    imko,
    спасибо, работает - если оформите ответом отмечу решением
    Написано
  • Как преобразовать svg radialGradient в css radial-gradient()?

    @lagudal
    Если нужно точно как в дизайне, я бы не заморачивался с расчетами а просто подставил бы целиком эту svg в url для background-image.

    background-image: url("data:image/svg+xml,%3Csvg width='65' height='65' viewBox='0 0 65 65' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Ccircle cx='32.601' cy='32.2966' r='32.0866' fill='url(%23paint0_radial_1_183)'/%3E%3Cdefs%3E%3CradialGradient id='paint0_radial_1_183'%3E%3Cstop offset='0%25' stop-color='%23FF0000'/%3E%3Cstop offset='100%25' stop-color='%23D9D9D9' stop-opacity='0'/%3E%3C/radialGradient%3E%3C/defs%3E%3C/svg%3E");
    Написано
  • Как пофиксить ошибку Incorrect TIMESTAMP value?

    @lagudal Автор вопроса
    Дмитрий,
    timestamp насколько я вижу
    Написано
  • Как поставить первый элемент вторым на мобильных?

    @lagudal Автор вопроса
    VolgaVolga,
    Блин, да , точно - спасибо - меняю местами первый со вторым и order для десктопа, а для мобильных order сбрасываю.
    Так получается!
    Написано
  • Как поставить первый элемент вторым на мобильных?

    @lagudal Автор вопроса
    historydev, вот так на десктопе

    64ef09088ef60593792139.png

    вот так на моб

    64ef093806fc5248003056.png

    я хочу на моб сдвинуть на один вправо, чтобы первый стал вторым - т.е. первым будет предыдущий а нужный будет стоять по центру.

    64ef09662fead708286878.png

    Пришло пока в голову только симулировать клик на прев баттон, если экран меньше заданного, но должно быть более правильное решение
    Написано
  • Как еще можно добавить PHP код в посты Wordpress?

    @lagudal Автор вопроса
    Дело в том, что определенная логика должна отработать внутри поста - поясню конкретно на моем примере.
    Пост в моем случае - краткое описание вакансии, при этом сама вакансия, с полным описанием и контактной формой находится на другом сайте. На этот сайт на эту конкретную вакансию юзер переходит по ссылке, ссылка добавлена к посту как кастомное поле - form_link.
    Поскольку постов с вакансиями может быть довольно много, редактор заполняет только краткое описание вакансии и url этой ссылки. Пост вакансии шаблонизирован, разбит на блоки, один из блоков как раз эта ссылка. Вот в коде этой ссылки и прописана логика, а именно в атрибут href вызывается значение поля -

    ....href="<?php the_field('form_link'); ?>"

    Вот этот код и был добавлен в сниппет с помощью Insert PHP Code Snippet, и добавляется он именно шорткодом. Проблема в том, что с новыми версиями WP плагин этот работает корректно только если шорткод прописан в классическом редакторе чистым текстом, а в моем случае, где все вокруг шаблоны гутенберга - нужно извернуться, чтобы сработало правильно. Если я просто добавляю в шаблон абзац с шорткодом, или Reusable Block c шорткодом, php-код не отрабатывает, выводится текстом шорткод и все.

    Я сейчас нашел временный выход, но понимаю, что надо конечно на уровне темы прописать, что то вроде такого:
    Если встречается ссылка с таким то css-классом, взять значение ссылки из поля form_link и использовать его как атрибут href.
    Но с php не очень, если мои рассуждения верны, подскажите как это правильно сделать?
    Написано
  • Как отравить почту на smtp от gmail?

    @lagudal Автор вопроса
    Нашел. Может, кому то еще пригодится.
    На странице безопасности действительно не видно. Даже если включена двухфакторная аутентификация.
    Идем в самый низ страницы, где написано "не нашли то, что искали?"
    И в поле поиска начинаем вводить "пароли приложений", по ходу ввода будут предложены ссылки, среди которых искомая. Жмем, вуаля. Можем создать новый пароль.
    645fbf50aa67b314405809.png
    Написано
  • Посоветуете простое решение для вывода альбомов google photos?

    @lagudal Автор вопроса
    вот тут в принципе тоже решение, но я никак не пойму, как получить API альбома. Почему и причем тут glitch?
    Написано
  • Посоветуете простое решение для вывода альбомов google photos?

    @lagudal Автор вопроса
    выглядит обнадеживающе, но к сожалению
    error An unexpected error occurred: "https://registry.yarnpkg.com/react-google-photos: Not found".
    Написано
  • Как добавить анимацию к простой карусели React?

    @lagudal Автор вопроса
    а нет. все работает - css забыл подключить, спасибо )
    Написано
  • Как добавить анимацию к простой карусели React?

    @lagudal Автор вопроса
    все глаза проглядел, почему в моем коде не работает?
    Код
    import React, { useState, useEffect, useRef } from 'react'
    import { BsChevronCompactLeft, BsChevronCompactRight, BsDot } from 'react-icons/bs'
    import Slide_1 from '../assets/slide1.jpg'
    import Slide_2 from '../assets/slide2.jpg'
    import Slide_3 from '../assets/slide3.jpg'
    import { SwitchTransition, CSSTransition } from 'react-transition-group'
    
    
    const slides = [
    
      {
        url: Slide_1
      },
      {
        url: Slide_2
      },
      {
        url: Slide_3
      },
    ];
    
    
    function Hero() {
    
      const [currentIndex, setCurrentIndex] = useState(0);
    
      const slideRef = useRef();
    
      const prevSlide = () => {
        const isFirstSlide = currentIndex === 0;
        const newIndex = isFirstSlide ? slides.length - 1 : currentIndex - 1;
        setCurrentIndex(newIndex);
      }
      const nextSlide = () => {
        const isLastSlide = currentIndex === slides.length - 1;
        const newIndex = isLastSlide ? 0 : currentIndex + 1;
        setCurrentIndex(newIndex);
      }
    
      const goToSlide = (slideIndex) => {
        setCurrentIndex(slideIndex);
      }
    
      useEffect(() => {
        const interval = setTimeout(nextSlide, 4000);
        return () => clearTimeout(interval);
      }, [currentIndex]);
    
      return (
        <div className='w-full h-auto mx-auto my-8'>
    
          <div className='w-full max-w-[1280px] h-auto mx-auto duration-500 relative group'>
            <SwitchTransition mode="out-in">
              <CSSTransition
                key={currentIndex}
                nodeRef={slideRef}
                addEndListener={done => slideRef.current.addEventListener('transitionend', done, false)}
                classNames="fade"
              >
                <div ref={slideRef}>
                  <img className='mx-auto border-gray-100 border-[10px]' src={slides[currentIndex].url} alt="" />
                </div>
              </CSSTransition>
            </SwitchTransition>
            {/* left arrow */}
            <div className='opacity-30 group-hover:opacity-100 absolute top-[50%] -translate-x-0 translaty-[-50%] left-5 text-2xl rounded-full p-2 bg-black/20 text-white cursor-pointer'>
              <BsChevronCompactLeft onClick={prevSlide} size={30} />
            </div>
    
            {/* right arrow */}
            <div className='opacity-30 group-hover:opacity-100 absolute top-[50%] -translate-x-0 translaty-[-50%] right-5 text-2xl rounded-full p-2 bg-black/20 text-white cursor-pointer'>
              <BsChevronCompactRight onClick={nextSlide} size={30} />
            </div>
          </div>
    
          <div className="flex top-4 justify-center py-2">
            {slides.map((slides, slideIndex) => (
              <div key={slideIndex} onClick={() => goToSlide(slideIndex)} className='text-2xl cursor-pointer'>
                <BsDot />
              </div>
            ))}
          </div >
        </div>
      )
    }
    
    export default Hero
    Написано
  • Как правильно прописать autoplay для карусели?

    @lagudal Автор вопроса
    а не подскажете, как добавить анимации - достаточно fade-in(out) в начале / конце каждого слайда.
    Нашел вот такое вроде решение, но то ли неправильно имплементирую, то ли что, ошибка в консоли
    in.242eb634b702bd9fbbc8.hot-update.js:39 Uncaught TypeError: Cannot read properties of undefined (reading 'id')

    Как то может можно попроще сделать?
    Написано
  • Как выделить селектор?

    @lagudal Автор вопроса
    понятно. Да, можно и так - но я пока сделал выборку из фрейма querySelectorAll('button') и первый элемент из массива. Чуть лаконичнее получается. Посмотрим, что будет надежнее то и буду использовать.
    Написано
  • Порекомендуете фотогалерею на реакте?

    @lagudal Автор вопроса
    Владимир Коротенко,
    спасибо, смысл понятен. Повникаю на досуге. Думал, может что готовое есть например в MENR стеке или в каком нибудь headless wordpress + Next.
    Просто в общей сложности порядка 1000 фотографий, нужно вывести их в 10 разных категориях, ручками конечно прописывать не очень.
    Написано
  • Порекомендуете фотогалерею на реакте?

    @lagudal Автор вопроса
    Алексей Дубровин,
    ну думал что весь массив файлов с соответствующими расширениями в директории переберется и по одному выводить.
    Написано