• Должен ли фронтенд разработчик уметь верстать (css)?

    @strelok011
    Фронтэнд должен верстать лучше профессионального верстальщика??? Судя по всему мало кто понимает что такое проф верстка.

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

    Пренебрежительное отношение к верстке скорее всего из-за отношения к результату 'и так сойдет'.

    И если фронт не умеет в верстку - он будет костылить на js и писать чудовищную разметку, лишь бы работало.

    5 лет был чистым верстальщиком, сейчас второй год пишу на реакте (в основном).

    И да - качественный фронт лучше растить из верстака. Но такое встречается все реже и реже.
    Ответ написан
    1 комментарий
  • Как вы разрабатываете и поддерживаете сайты на Worpdress?

    HeadOnFire
    @HeadOnFire
    PHP, Laravel & WordPress Evangelist
    В целом все ок, разница всегда будет в каких-то нюансах. В зависимости от типа проекта, нюансов будет больше или меньше. У нас плюс-минус так:

    - Локальная разработка на macOS + Laravel/Valet (Nginx, PHP 7+, MariaDB, Redis/Memcached).
    -Staging/production могут быть как отдельными серверами, так и находиться на одном сервере, а также могут быть много сайтов на одном сервере, или это может быть не наш сервер, а какой-нибудь Kinsta или вообще клиентская инфраструктура к которой у нас доступа нет. Поэтому devops кухня вообще отделена. С нашей стороны только автодеплой из репы через CI/CD. Ветка develop -> staging, ветка master -> production.
    - WordPress, плагины, тема, и весь кастомный код являются зависимостями проекта, управляется с помощью Composer.
    - Работа с функциональностью WordPress строится полностью на командной строке с помощью WP-CLI. При необходимости пишутся свои команды для него.
    - Вся конфигурация проекта в .env (база, ключи, лицензии и прочее, что не попадает в git) и в папочке config в виде PHP-конфигураций (все что уже влияет на функциональность).
    - Медиа-файлы на локалке либо вообще не хранятся (Valet проксирует запросы на staging/production), либо синхронизируются со staging/production. Делается это с помощью отдельного cli-скрипта, который под капотом использует rsync.
    - Базы данных - отдельная история которая очень сильно зависит от специфики проекта. Где-то это простой push/pull с помощью WP Migrate DB, где-то тот же push/pull c помощью WP-CLI, где-то это целые миграции. В идеале надо стараться контент забирать с прода на стейдж и избегать публикации с dev/staging на продакшн. Но ситуации и проекты бывают разные, здесь нет одного правильного ответа.
    Ответ написан
    Комментировать
  • Wordpress меню активный класс для подменю?

    pLavrenov
    @pLavrenov
    Разработка сайтов
    Хуки меню почти на все случаи.

    wp_nav_menu([
        'theme_location' => 'top_left',
        'container'=> false,
        'items_wrap' => '<ul class="nav navbar-nav %2$s">%3$s</ul>',
        'menu_class' => '',
        'ul_class' => 'navbar-nav',
        'ul_child_class' => 'dropdown-menu',
        'li_class' => 'nav-item',
        'li_child_class' => 'nav-item',
        'a_class' => 'nav-link',
        'a_child_class' => 'nav-link',
    ]);


    ## Добавление стилей для стандартного меню
    add_filter('nav_menu_css_class', 'add_menu_list_item_class', 1, 3);
    function add_menu_list_item_class($classes, $item, $args) {
        if (property_exists($args, 'li_class') && !$item->menu_item_parent) {
            $classes[] = $args->li_class;
        }
        if (property_exists($args, 'li_child_class') && $item->menu_item_parent) {
            $classes[] = $args->li_child_class;
        }
        return $classes;
    }
    
    add_filter( 'nav_menu_link_attributes', 'add_menu_link_class', 1, 3 );
    function add_menu_link_class( $atts, $item, $args ) {
        if ( strpos( $atts['href'], home_url() ) === false ) {
            $atts['target'] = '_blank';
        }
        if (property_exists($args, 'a_class') && !$item->menu_item_parent) {
            $atts['class'] = $args->a_class;
        }
        if (property_exists($args, 'a_child_class') && $item->menu_item_parent) {
            $atts['class'] = $args->a_child_class;
        }
        return $atts;
    }
    
    add_filter( 'nav_menu_submenu_css_class', 'my_nav_menu_submenu_css_class', 1, 3);
    function my_nav_menu_submenu_css_class($classes, $args, $depth) {
        if (property_exists($args, 'ul_child_class')) {
            $classes[] = $args->ul_child_class;
        }
        return $classes;
    }
    Ответ написан
    Комментировать
  • Закрытие бесплатного G Suite (Workspace), куда мигрировать?

    @rrambo
    почему никто не рекомендует арендовать веб хостинг за пару баксов в мес, туда можно привязать домен и создать нужное колво почтовых аккаунтов
    Можно выбрать сервак в конкретной стране.. что бы не в Пахомии и не в Сша
    Самый простой же способ, не? к чему эти яндекс или мейлру для домена все
    Ответ написан
    6 комментариев
  • Закрытие бесплатного G Suite (Workspace), куда мигрировать?

    Zettabyte
    @Zettabyte
    Проф. восстановление данных ▪ Вопрос? См. профиль
    Внезапно вариантов не так много, при этом половина хоть и дешевле будущей стоимости, но тоже не бесплатные:
    • Zoho (на бесплатном нет pop/imap/smtp)
    • Yandex для бизнеса
    • Biz.Mail.ru (aka "for business")
    • Microsoft 365 (Office 365) (использование своего домена включено в планы Family и Personal)
    • inbox.eu
    • iCloud+
    • Amazon Simple Email
    Ответ написан
    Комментировать
  • Как сделать такую анимацию?

    Vlad_IT
    @Vlad_IT Куратор тега CSS
    Front-end разработчик
    Крайне простая анимация, делается на чистом CSS + JS (для обработки смены слайда и последовательного включения анимации, если потребуется). В этой анимации все можно решить при помощи transform и opacity. Присмотритесь к видео (лучше скачайте его, чтобы мотать покадрово), разбейте каждый переход по пунктам. Я вижу, что фон через скейл анимируется отдельно от контента, а в контенте каждая строчка анимируется с transform: translateY(100%) в translateY(0%), последние строки еще анимируют переход opacity: 1 в opacity: 0.
    Когда слайд закрывается, весь блок с слайдом анимируется в transform: scale (какое-нибудь число больше единицы).

    Готовый код вам никто не даст, т.к. анимация слишком уникальна. Да и как правило, легче самому сделать анимацию, чем подстраивать чужую под свои нужды/

    Чтобы анимация не получилась глючной, смотрите, какие css свойства вы анимируете, сверяйте с списком https://csstriggers.com/opacity желательно, чтобы ваши свойства в основных браузерах не влияли на геометрию (пункт layout), идеально, чтобы не влияли и на отрисовку (пункт paint).
    Ответ написан
    1 комментарий
  • Редирект на 404 спасает от фишинга?

    PageAuditRU
    @PageAuditRU
    Senior SEO Анализатор
    Решение будет работать. Поисковики будут оценивать самый последний HTTP-код.
    На некоторых сайтах (правда по другой причине) эксплуатирую аналогичную схему много лет. Ни с Яндексом, ни с Гуглом проблем нет, они отлично, практически моментально, отрабатывают редиректы и в конце цепочки получают 404/410.
    Но стоит заметить, чем короче цепочка, тем "кошернее" будет выглядеть реализация.
    Ответ написан
    1 комментарий
  • Что лучше табы или пробелы?

    @anton_myaso
    в Python, например либо то либо то. Предпочтительнее пробелы.
    Тут правильно выше написали:
    Есть официальные рекомендации к коду
    Есть сложившиеся в проекте устои.

    В случае с Python: Юзай, кодер, пробелы, но пришел работать в контору, где табы - юзай табы. В конечно итоге, все на хоткей можно настроить
    Ответ написан
    Комментировать
  • Что лучше табы или пробелы?

    Один таб, определенно. Лаконичнее, красивее и четче, чем засорять пространство пробельными символами (да и поставить 3 пробела вместо 4х гораздо легче, чем один таб вместо ни одного таба).
    Табы - для отступов, пробелы - для пробелов между словами. Семантика-с.

    А если табы воспринимаются не так, как кому-то хочется - вэлкам в настройки.

    P.S. А для соблюдения чьих-то стандартов достаточно установить правило замены таба на 4 пробела в сборщике проектов, и будет счастье.

    P.P.S. Сейчас, в 2к20, радикально изменил свое мнение - пробелы выигрывают по всем показателям. Скажу так, джуны любят табы, а сеньоры отдают должное пробелам.
    Ответ написан
    2 комментария
  • Что не так с UX/UI этого интерфейса?

    vabka
    @vabka
    Токсичный шарпист
    1. Какой-то нечитабельный текст в самом начале (просто не приятно его читать)
    2. Раз уж это сайт отеля, то где тут самое важное - бронирование номера?
    3. Какие-то странные иконки в преимуществах. Что означают эти цвета и почему в преимуществе о пляже нарисован геймпад?
    4. Какое-то контринтуитивное и странное содержимое подвала. Как я должен догадаться, что там есть поиск?
    5. Что за "Идеи"?
    6. Что мне даст кнопка "Войти"? Нигде не сказано о необходимости входа и преимуществах регистрации на сайте.
    7. Крайне посторонне выглядит блок с "парнёрами" - наталкивает о мысли о вирусно-рекламных, типа новостных сайтах.
    8. В целом сайт выглядит очень странно.

    Я ни разу не дизайнер. Оценивал с точки зрения пользователя.
    Ответ написан
    Комментировать
  • Macbook Pro M1 8гб или Air M1 16гб?

    fedorez
    @fedorez
    Хатуль мадан
    Долго думал на этим вопросом. Взял эйр и не жалею. Больше скажу - очень доволен.
    Вообще вопрос сформулирован с недостатком инфы - надо бы указать конкретику - зачем вам комп.
    Несколько личных мыслей.
    - Мы два месяца назад взяли в семью три Air 16-256. У нас в семье один фронтенд, один бэк и я - iOS-мобайл. Для всех этих трех сфер (плюс кино/проигрывание музыки/интернет/рисование иконок в пиксельматоре) этот компьютер просто шикарен. Я переезжал с MacBook Pro late 2013, остальные со свежих винтел буков. Все очень довольны.
    - Отсутствие карлсона внутри эйра считаю плюсом. Не надо обслуживать будет. лишних дырок нет. Плюс на ютьюбе есть ролики как человек поставил термопрокладку, и эйр стал охлаждаться лучше прошки.
    - По поводу яркости, которая у Эйр меньше чем у Про на 100 нит. Я бы не сказал что это проблема-проблема с моей точки зрения - на первых ретинах было 250-300 нит, на прошках 2015 дотянули до 400 - все кричали какие шикарные экраны - а теперь это видите-ли мало и тускло. Субъективно - я и на старой прошке 2013 года в основном работал на 60-70% яркости, и здесь так же.
    - Лично мне больше нравится корпус у прошки. Ну вот плашка равной толщины как-то солиднее чем клин Эйра. Но это дело вкуса.
    - 8 Гб памяти не берите. Памяти много не бывает.
    Ответ написан
    1 комментарий