• Как проверить сайт на появление новых акций?

    kshnkvn
    @kshnkvn
    yay ✌️ t.me/kshnkvn
    У вас в тегах указан PHP. Берете его, идете в гугл и пишите примерно такие запросы "парсинг сайтов с php". Находите сотни, а то и тысячи статей на любой вкус, цвет, ОС, под каждый драйвер и даже ориентацию (смотрите robots.txt не нарушайте).
    Ответ написан
    2 комментария
  • Как сделать телеграм-бота совместимым с гугл таблицами?

    @majstar_Zubr
    C++, C#, gamedev
    Эмулировать работу базы данных можно с помощью https://www.google.com/script/start/ Google Apps Script, Google Drive API. Скрипты размещаются на самом Google Drive.

    Google Sheets API
    https://developers.google.com/sheets/api/
    позволяет практически всё, в т.ч. получить доступ программно:
    https://developers.google.com/sheets/api/quickstar...
    Ответ написан
    4 комментария
  • Создать тысячу страниц WP?

    @sergey_harchevnikov
    Web программист
    У меня был подобный случай.
    Надо было сделать заголовок мебель на балкон + город.
    А в тексте добавлять город в нужных местах.
    Я делал так:
    Пишем скрипт на php который брал список фраз которые надо вставить в текст и заголовок из .txt файла и через цикл foreach прогоняем эти фразы подставляя из в текст, записывая это всё в .csv

    А потом через плагин импорта, импортировал созданный .csv и создавал страницы.

    В общем не знаю как подробней объяснить.

    Короче вот код
    <?
    function getfile($cites){
         //Читаем полученный файл
         $res = file_get_contents($cites); 
         //Разбиваем на массив использую 
         //как разделитель символы переноса строки 
         $lines = explode(",", $res);
    
    return $lines; //Функция возвращает переменную с массивом городов
     } 
    
    $cites = getfile('cites.txt'); //предаём массив в переменную
    
    function getContent($cites){
       $fp = fopen('мебель на балкон.csv', 'w'); //Создаём csv файл для импорта
    
       $infile = array('title', 'content');
        fputcsv( $fp , $infile, ";");
        
        foreach($cites as $key => $city) {
           $title = 'Мебель на балкон и лоджию в ' . $city;
    
           $content = '
      
      <h2>Шкаф на балкон в '. $city .'</h2>
    
      <p>Шкафы от компании <a href="/">Московские балконы</a> стильные и в то же время практичные. </p>
      <p>Собственное производство от самых маленьких деталей и элементов до максимальных размеров позволяет нам сделать для Вас самую выгодную цену.</p>
      
    
      <div class="text-center m10">
      <a href="#callbackwidget" class="btn-sale">Получить скидку 20%</a>  
      </div>
      
      <h2>Тумба на балкон в '. $city .'</h2>
      
     <p>Тумбы для балкона или лоджии – это обычно небольшие шкафчики, которые занимают мало места. Как и вся наша мебель, они сделаны из влагостойкого материла. Это идеальное решение для маленького балкона или лоджии с ограниченным пространством.</p>  
    <p>Тумбу на балконе или лоджии можно установить как для хранения вещей, так и в качестве небольшого столика.</p>';	
    
    
        	echo $title . '<br>';
        	echo $content;
    
            $infile = array($title,  $content); 
            fputcsv( $fp , $infile, ";");
        
        }
       fclose($fp);
    
    }
    getContent($cites);
    
    
    ?>
    Ответ написан
    1 комментарий
  • Таблицы в кастомной верстке WP?

    Подключаю файл tinymce-table.js
    Дальше пользуюсь вот так как тут написано: https://placemark.ru/ability/tables
    Все удобно и просто, в код не лезу. Т.е. WP не захламляется, считайте, что его вообще нет.

    PS. Где взять файл и как подключить, много написано в Интернете, если сложность в поиске, пишите - тыкну пальцем.
    Ответ написан
    Комментировать
  • Почему в js получается время со сдвигом по часовому поясу?

    Rsa97
    @Rsa97
    Для правильного вопроса надо знать половину ответа
    Так если вы в одном месте запрашиваете время по Гринвичу (gmmktime), а в другом локальное (new Date), то что рассчитываете получить?
    Ответ написан
    5 комментариев
  • Таблицы в кастомной верстке WP?

    azerphoenix
    @azerphoenix
    Java Software Engineer
    Здравствуйте!
    Самые простые варианты:

    1) плагин tablePress (интегрирует datatables). Можно редактировать из админки
    2) плагин ACF + ACF Table Field (рекомендую)
    https://ru.wordpress.org/plugins/advanced-custom-f...
    Ответ написан
    1 комментарий
  • Как обезопасить себя от кидка с оплатой?

    @Kostik_1993
    Web Developer
    Чтобы обезопасить себя от такого рода проблем нужно соблюдать некоторые правила.

    1. Никогда не отдавать исходники до оплаты. Это также значит и то что никогда не работайте или не выгружайте на хостинг заказчика без оплаты.
    2. Из пункта выше следует - всегда ведите работу на своем dev сервере. И показывайте результаты тоже только на нем. Если заказчик не согласен - до свидания. Единственное что вы можете отдать практически бесплатно - это CSS и если он успеет то и верстку. Но это путь для не ленивых кидал. Всегда тестовый сервер защищен basic auth
    JS не забывайте минифицировать, причем не просто в строку, а с сокращением переменных и.т.д.
    3. Работайте только в своем Git репозитории
    4. Работайте через договор. Откройте ИП. 90% кидал отсеются при упоминании такого рода взаимоотношений
    5. Используйте безопасную сделку. Хотя и тут есть варианты быть кинутым

    P.S. Иногда бывают случаи когда у клиента много картинок, для этого можно использовать nginx proxy ;)
    Ответ написан
    Комментировать
  • Как обезопасить себя от кидка с оплатой?

    opium
    @opium
    Просто люблю качественно работать
    Работайте через гаранта
    Ответ написан
    Комментировать
  • Как обезопасить себя от кидка с оплатой?

    dollar
    @dollar
    Делай добро и бросай его в воду.
    В коде JS зашить бекдор или плановое устаревание, а сам код сильно обфусцировать. После оплаты предоставить клиенту бесплатное обновление без всего этого. Если клиент захочет исходники, то также только после оплаты. Универсальных рецептов нет.

    Но об этом надо думать заранее. А когда УЖЕ отдал готовый проект, то ситуация такая же, как если вы захотите сделать плохо любому другому незнакомому человеку. Сразу скажу, что это возможно. Но вам придется тратить СВОИ время и силы на то, чтобы сделать плохо. Это называется месть (а не справедливость, как вы сказали). В целом, месть - это не очень разумно, имхо. Но реально. Так что если хотите, можете заниматься этим. Для этого нужно будет изучить врага, что ему дорого, слабые места, и бить по ним. Например, затаскать по судам (тратить время клиента, даже если проиграете). Или бить по репутации, по отзывам и т.д. Можно, например, агрессивно продвигать сайт клиента за свой счет, чтобы в какой-то момент поисковики исключили его из выдачи. Ну хотя я не в курсе, сработает ли такое в наши дни. Но суть та же - это война. В общем, дорогое удовольствие. Не советую. Проще в будущем быть мудрее.
    Ответ написан
    2 комментария
  • Сортировка html блоков JS?

    sergiks
    @sergiks Куратор тега JavaScript
    ♬♬
    Собрать все блоки в словарь, где ключ - слово, значение - этот блок.
    Ключи отсортировать.
    Расставить блоки назад в родителя первого из них.
    код JavaScript
    function resort(selector) {
    	const nodeList = document.querySelectorAll(selector);
      const dict = {};
      const parent = nodeList[0].parentNode;
      nodeList.forEach(node => {
      	const key = node.querySelector('p').innerText;
        dict[key] = node;
        node.parentNode.removeChild(node);
      });
      const keys = Object.keys(dict);
      keys.sort().forEach(k => parent.appendChild(dict[k]));
    }
    
    resort('.slide');


    Работающий пример:
    Ответ написан
    1 комментарий
  • Сортировка html блоков JS?

    @dimuska139
    Backend developer
    Подключи любую библиотеку для парсинга HTML, распарси, полученные объекты отсортируй - и преврати их обратно в HTML, чтобы руками не тасовать.
    Ответ написан
    2 комментария
  • Сортировка html блоков JS?

    hzzzzl
    @hzzzzl
    как эти блоки появляются на странице, из базы данных то есть из массива?
    правильнее всего сначала сортировать этот массив, перед выводом в html на страницу
    Ответ написан
    3 комментария
  • Как отправить несколько вложений PHP mail?

    SagePtr
    @SagePtr
    Еда - это святое
    Повторять этот фрагмент кода несколько раз для каждого отдельного файла:
    $message_part .= "--$boundary\n"; 
      $message_part .= "Content-Type: application/octet-stream\n"; 
      $message_part .= "Content-Transfer-Encoding: base64\n"; 
      $message_part .= "Content-Disposition: attachment; filename = \"".$filename."\"\n\n"; 
      $message_part .= chunk_split(base64_encode($file))."\n";

    А ещё лучше - вынести в отдельную функцию. Ну или воспользоваться уже готовым PhpMailer, как выше посоветовали, и не изобретать свой велосипед.
    Ответ написан
    Комментировать
  • Как отправить несколько вложений PHP mail?

    FanatPHP
    @FanatPHP
    Чебуратор тега РНР
    Три простых шага для решения данной проблемы:

    1. Посмотреть на календарь и уточнить, какой сейчас век на дворе.
    2. Аккуратно выделить этот код, и нажать клавишу Del
    3. Скачать phpmailer
    4. Забыть все эти кустарные ковыряния как страшный сон.

    В итоге код должен получиться примерно таким:

    require 'PHPMailerAutoload.php';
    $mail = new PHPMailer;
    $mail->setFrom('from@example.com', 'First Last');
    $mail->addAddress('whoto@example.com', 'John Doe');
    $mail->Subject = 'PHPMailer file sender';
    $mail->msgHTML("My message body");
    // Attach uploaded files
    $mail->addAttachment($filename1);
    $mail->addAttachment($filename2);
    $r = $mail->send();

    следует понимать, что отправка почты - это не просто копирование в свой скрипт каких-то определенных сочетаний символов, которые случайно сработали в прошлом веке у автора какой-либо допотопной статьи. Это гораздо более сложный процесс, который включает множество нюансов. И поэтому отправку почты надо не лепить вручную на ходу из навоза и палок, а доверить проверенному и отлаженному решению.
    Ответ написан
    Комментировать
  • Доменая почта яндекс?

    @NewDevLab
    Если делаешь доменную почту на Яндексе, то и DNS надо к ним переносить.
    При чем тут reg.ru?
    В Яндексе и настраивай MX. Всё сразу обновится должно.
    Ответ написан
    Комментировать
  • Как запретить вывод экранной клавиатуры для текстового поля на мобильных устройствах?

    dimawar
    @dimawar
    сисадмин
    на поле input добавить аттрибут readonly и изменить тип курсора при наведении на это поле (по умолчанию поля readonly курсор выглядит недоступным) на курсор типа указателя pointer
    вот так у меня выглядит?
    <input autocomplete="off" id="start" value="{{ begin|date('d.m.Y') }}" class="form-control" name="start" type="text" readonly style="cursor: pointer;" />

    Тогда вызывается стандартный обработчик datapicker, а на мобилке клавиатура не вылазит.
    Ответ написан
    5 комментариев
  • Визуальный конструктор для записей WP?

    Kozack
    @Kozack Куратор тега WordPress
    Thinking about a11y
    https://visualcomposer.com/

    Ну, или тот же Gutenberg
    Ответ написан
    Комментировать