• Foreach c второго элемента массива?

    miraage
    @miraage
    Старый прогер
    Исправил для зануд.

    $sliced = array_slice($array, 1); // можно использовать в нескольких местах
    foreach ($sliced as $k => $v) {
        // ....
    }
    Ответ написан
    6 комментариев
  • Как разместить элемент справа от картинки в окне fancybox?

    @tyzberd
    https://fancyapps.com/fancybox/3/docs/#options
    baseTpl : "ваш темплейт"
    Ответ написан
    Комментировать
  • Сервис или JS/PHP-код для A\B теста где взять?

    usdglander
    @usdglander Куратор тега PHP
    Yipee-ki-yay
    Ответ написан
    Комментировать
  • Как отправить в API Яндекс.Метрику данные о звонках?

    @marxxt
    понравился ответ - поставь ✔
    А, вы вынесли в отдельный вопрос)

    Вобщем, StaticCall,UserId - обязательные колонки

    Заголовки
    Content-Type: multipart/form-data; boundary=------------------------boundary
    Content-Length: 12345


    Тело
    --------------------------boundary\r\n
    Content-Disposition: form-data; name="file"; filename="file.csv"\r\n
    Content-Type: text/csv\r\n\r\n
    ДАННЫЕ\r\n\r
    --------------------------boundary--


    Пример(для curl все тоже самое)
    function request($url, $data, $headers){
      $opt = array(
        'http' => array(
          'method' => 'POST',
          'content' => $data,
          'header' => $headers
        )
      );
    
      $context = stream_context_create($opt);
    
      $response = @file_get_contents($url, FALSE, $context);
      
      return $response;
      
    }
    
    $oauth_token='xxx';
    $boundary = "7zDUQOAIAE9hEWoV";
    $filename = 'data.csv';
    
    $calls = "StaticCall,UserId,DateTime,Price,Currency,PhoneNumber,TalkDuration,HoldDuration,CallMissed,Tag,FirstTimeCaller,URL,CallTrackerURL".PHP_EOL;
    $calls .= "1,133591247640966458,1481714026,678.90,RUB,+71234567890,136,17,0,,1,https://test.com/,https://test.com/".PHP_EOL;
    $calls .= "1,579124169844706072,1481718066,123.45,RUB,+70987654321,17,23,0,,2,https://test.com/,https://test.com/".PHP_EOL;
    $calls .= "1,148059425477661429,1481718126,678.90,RUB,+71234509876,72,11,0,,0,https://test.com/,https://test.com/";
    
    $data = "--------------------------$boundary\x0D\x0A";
    $data .= "Content-Disposition: form-data; name=\"file\"; filename=\"$filename\"\x0D\x0A";
    $data .= "Content-Type: text/csv\x0D\x0A\x0D\x0A";
    $data .= $calls . "\x0A\x0D\x0A";
    $data .= "--------------------------$boundary--";
    
    
    $headers = array();
    $headers[] = "Content-Type: multipart/form-data; boundary=------------------------$boundary";
    $headers[] = 'Content-Length: '.strlen($data);
    $headers = implode(PHP_EOL, $headers);
    
    $url = "https://api-metrika.yandex.ru/management/v1/counter/39764535/offline_conversions/upload_calls?client_id_type=USER_ID&oauth_token=$oauth_token";
    
    $result = request($url, $data, $headers);
    
    var_dump($result);


    Для curl типа того
    CURLOPT_POSTFIELDS => $data
    CURLOPT_HTTPHEADER => array(
        "Content-Type: multipart/form-data; boundary=------------------------$boundary",
        "Content-Length: " . strlen($data)
    Ответ написан
  • Как работает call tracking?

    @marxxt
    понравился ответ - поставь ✔
    Я делал динамический коллтрекинг через Server sent events
    Номера покупал в voximplant, он поддерживает колбеки

    1. Человек заходит на сайт
    2. Сервер выдает свободный номер
    3. Если был звонок, vox вызывает колбек, который оповещает сервер о событии звонка
    4. Сервер отправляет указание браузеру пользователя(которому выдан конкретный номер) через механизм SSE выполнить цель(конверсия) reachGoal(JavaScript Metrika API)

    В пуле было номеров 5 примерно для сайта с посещаемостью человек 500 в сутки.
    То есть регистрировались все звонки, а сегментировал по источникам уже в метрике.
    Как-то так
    Ответ написан
    5 комментариев
  • На хостинге вирус-майнер xmrig и gcc грузят CPU на 100%. Как удалить с VDS?

    GavriKos
    @GavriKos
    И как вообще удалять вирусы на удаленном сервере?

    Так же как и локально.
    Ответ написан
    Комментировать
  • На хостинге вирус-майнер xmrig и gcc грузят CPU на 100%. Как удалить с VDS?

    Sanasol
    @Sanasol
    нельзя просто так взять и загуглить ошибку
    Ну так за что вы их убили, не посмотрели сначала где они находятся?

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

    И как вообще удалять вирусы на удаленном сервере? Выкачивать себе что ли?

    шта?
    Ответ написан
    6 комментариев
  • Как прокрутить индикаторы в слайдере bootstrap 4?

    https://getbootstrap.com/docs/4.1/components/carousel/
    Используя это slide.bs.carousel событие двигайте индикаторы на нужное расстояние, когда дошли до конца обнуляйте позицию индикаторов.
    Ответ написан
    2 комментария
  • Как принимать деньги для пожертвований?

    webinar
    @webinar Куратор тега Веб-разработка
    Учим yii: https://youtu.be/-WRMlGHLgRg
    Комментировать
  • Как принимать деньги для пожертвований?

    Olek1
    @Olek1
    Писали тут про лейку недавно https://leyka.te-st.ru/instruction/ сам лично не пробовал, там есть четыре шаблона https://leyka.te-st.ru/campaign/demo-kampaniya/ и отображение сколько собрано из скольки
    Ответ написан
    Комментировать
  • Как сделать скриншот страницы полностью?

    rdifb0
    @rdifb0
    Программист, реалист
    В Firefox Shift-F2 и вводим screenshot file.png --fullpage
    Ответ написан
    11 комментариев
  • Какая ссылка на все записи wordpress?

    seoperin
    @seoperin
    Full stack web developer. Laravel / Vue
    Создается любая страница с любым урлом и в настройках
    Настройки - Чтение
    Статическую страницу (выберите ниже)
    Страница записей - выбирается нужная страница
    Ответ написан
    Комментировать
  • Верстка с нуля: какие основные этапы работы?

    Vlad_IT
    @Vlad_IT Куратор тега Вёрстка
    Front-end разработчик
    Использую vscode+webpack+pug+scss+бэм. Из физических инструментов, основной моник: lg ultrawide 29um69g, рядом прикручен моник от ноутбука повешенный вертикально, подключенный через универсальный скаллер.

    0) Запускаю Spotify :-)

    1) Произвожу установку всех необходимых модулей для сборки. В моем случае у меня набор конфигураций для webpack (отдельные файлы для pug, scss, static и.т.д., выбираю что нужно).

    2) Запускаю avocode, загружаю в него макет. Определяю в нем переменные (в то же время записываю их, чтобы сразу кинуть в scss файл) для цветов, размеров шрифтов и.т.д. чтобы при получении кусочков кода из него, он сразу расставлял переменные.

    3) Запускаю VS Code, открываю нужную папку.

    4) Пишу размету на Pug. Пишу с БЭМ, если встречаю повторяющийся блок, то открываю файл _mixins.pug, в который пишу миксины для повторяющихся блоков, например товаров, пунктов меню, каких-то блоков и.т.д. Pug умеет делать циклы, это ускоряет сильно.

    5) Когда HTML готов, начинаю делать каркас. Если дизайн сделан по сетке, определяю контейнеры, колонки, строки в свои классы (не пишу в html тучи классов аля col-md-6, а пишу в SCSS инклуды в нужные мне блоки, типа @include make-col(2) и.т.д.).

    6) Экспортирую картинки из Avocode. Очень делается просто, указываю папку и просто кликаю экспорт и ввожу название файла и расширения. Преимущественно для иконок использую svg, если нет svg, то ищу эту иконку в интернете (дизайнеры редко рисуют иконки сами, но зато любят вставлять их не в векторе). Если иконка простая, могу сам ее в inkscape обвести, ну и если нет, то экспортирую png в размере (благо авокод это позволяет, если конечно дизайнер не вставил в исходном маленьком размере). Когда есть контакт с дизайнером, трясу его, ибо растр это плохо для иконок.

    7) Пишу стили блоков из страницы. На этом этапе можно на втором монике параллельно смотреть футураму или
    Арчера :-) Но чаще на широком монике слева браузер, справа VS Code, а на втором монике Avocode (может меняться местами с браузером). Мысленно нарезаю страницу на блоки. Для каждого блока (БЭМ) создаю отдельный scss файл (кто-то даже для элемента создает, но мне лень), из него сразу выписываю все селекторы. Иногда могу сначала выписать все селекторы со страницы (но так лучше не делать, т.к. во время работы может потребоваться изменить что-то в разметке), но чаще для одного блока выполняю этот пункт и за ним сразу выполняю пункт 8, потом для нового блока опять 7 и 8 и.т.д.

    8) Пишу css код вместе с Avocode, у него беру нужные мне параметры (а он уже подставил в них переменные), и вставляю в мой код. И параллельно сверяю со скрином макета используя вот это расширение https://chrome.google.com/webstore/detail/perfectp...

    9) Пишу адаптив. Я не могу привыкнуть к методологии mobile-first, поэтому пишу всегда сначала полную версию сайта. Я понимаю, что это чревато всякими проблемами и это типа не модно, но мне норм.

    10) Медиа-запросы пишу прямо в блоках, для каждого блока/элемента/модификатора может быть отдельный медиа-запрос. Но для начала определяю breakpoint'ы для разных экранов (чтобы их не было сотни разных), если использую Bootstrap, то беру его breakpoint'ы.

    11) Добавляю анимашки. Даже если заказчик не просил отдельно (и если не указал отдельно, что нельзя), он все равно будет доволен, а с animate.css+onscreen.js это вообще работа 10 минут. Сложные анимации обговариваю отдельно, чтобы не сделать ненужную работу.

    11) Все снова сверяю, пишу скрипты где надо. Для слайдеров в 99% случаев подходит slick (с доработками конечно, но там хорошее API), для других случаев могу написать свой.

    12) Сдаю заказчику и жду ответа сидя на тостере/пикабу.

    Это чисто мой опыт, опыт фрилансера, не знаю, как делают другие и не могу на 100% утверждать что это 100% правильный способ. Я так и не смог заставить свой конфиг webpack правильно вставлять спрайты svg.
    Надеюсь чем-то поможет мой ответ.
    Ответ написан
    7 комментариев
  • Сколько часов до конца дня?

    Vlad_IT
    @Vlad_IT Куратор тега JavaScript
    Front-end разработчик
    Нужно получить объект date следующего дня полночью.
    var deadline = new Date(); // Создаем объект даты с текущем временем
    deadline.setHours(0,0,0,0); // Обнуляем компоненты часа, минуты, секунды и миллисекунды, чтобы была полночь
    deadline.setDate(deadline.getDate() + 1); // Делаем следующий день

    И передать его в вашу функцию
    initializeClock('banner', deadline);
    Ответ написан
    Комментировать
  • Как сделать 301 редирект с домена www на домен без www (включая сотню поддоменов)?

    shambler81
    @shambler81 Куратор тега htaccess
    RewriteCond %{HTTP_HOST} ^www\.(.*) [NC]
    RewriteRule ^(.*)$ https://%1/$1 [R=301,L]
    Ответ написан
    Комментировать
  • Хочу настроить сервер для офиса с redmine. Какую ОС выбрать?

    Стоит попробовать установить Redmine, но на этот раз через штатный менеджер пакетов . Он сам доустановит и веб-сервер, СУБД и другие зависимости.
    По-моему таким образом всё установится в пару кликов и останется разве что изменить некоторые настройки типа сервер SMTP и др.
    8Гб оперативки? Хватит и 2-4.
    Ответ написан
    2 комментария
  • Как определить мастерство SEO-специалиста?

    gobananas
    @gobananas
    finishhim.ru
    Сколько проектов может вести один специалист среднего уровня?

    Сильно зависит от объёма работы по ним, от 1 до 10

    Стоит ли брать нубов, и прокачивать их самому (растить то есть), или лучше сразу брать с опытом?

    У специалиста с опытом уже сложились свои фишки, он может наставить что надо делать так, делать по-своему, с нубом микроменеджмента надо больше но зато он может делать в точности что вы ему скажете.

    Пишут ли seo-шники тексты (являются ли копирайтерами)

    Начинающие пишут иногда, опытные обычно нет, отдают на аутсорс

    Коды они не пишут, не верстают, не рисуют, и если не пишут тексты

    Анализируют конкурентов
    Ищут хорошие площадки для размещения ссылок
    Пишут админам, размещают ссылки
    Ставят ссылки в соцсетях, это тоже элемент SEO
    Смотрят стату по позициям сайта и её динамику
    Смотрят по каким запросам ещё нужно/можно войти
    Составляют контент-план, проверяют готовые тексты

    Что мне от них требовать?

    Там вы сами чем занимаетесь? То и требуйте ))

    Как обычно измеряется результативность специалиста?

    Трафик или позиции по запросам

    Оклад + премия?

    Оптимальный вариант

    МРОТ + оплата за результат?

    Здесь всё зависит от понятия результат

    Как оценивать чтобы все были довольны?

    Все довольны не бывают почти никогда, но стремиться к этому нужно ))
    Ответ написан
    Комментировать
  • Разумно ли делать посадочные страницы поддоменом или поддиректорией основного сайта?

    Maksclub
    @Maksclub Куратор тега Веб-разработка
    maksfedorov.ru
    Без разницы, для лендосов можно создать путь /promo/vasha-kakashka
    и все, зачем вы паритесь из-за этого?
    Ответ написан
    1 комментарий