Блог о PHP, MySQL, JavaScript, оптимизации сайта


Как подключиться к серверу с обычного мобильного телефона

Как подключиться к серверу с обычного мобильного телефона

Представьте ситуацию, когда Вы сделали работу по своему проекту, закоммитили все изменения, залили их на продакшен и уехали по своим делам (домой, на прогулку или куда-либо ещё). И тут вдруг Вы вспоминаете, что забыли включить в код одну важную функцию. Или вообще, Вы решили проверить по дороге свою работу, открываете Ваш проект с мобильного телефона и видите, что почему-то всё работает не ...

  • Денис Л.
  • |
  • 09-01-2019
  • |
  • Linux
  • |
Меняем заголовки h1 по UTM метке через PHP

Меняем заголовки h1 по UTM метке через PHP

Давайте представим, что у Вас есть общая посадочная страница, на которую Вы ведёте пользователей с рекламы в Яндекс.Директ или Google Adwords. И Вы хотите, чтобы для пользователей, пришедших на сайт с разных объявлений показывались разные заголовки. Например, клиент перешёл к Вам по объявлению: "Купить такой-то товар в Москве". При заходе на Ваш сайт клиенту будет показан заголовок: ...

  • Денис Л.
  • |
  • 26-12-2018
  • |
  • Seo
  • |
Как скопировать любой сайт целиком через wget и перевести его в html

Как скопировать любой сайт целиком через wget и перевести его в html

Материал данной статьи предназначен исключительно для личного использования с целью изучения стороннего кода, либо для целей offline чтения контента в условиях отсутствия Интернета. Также данный материал может быть полезен с целью изучения функции wget. Предупреждаю Вас, что копирование стороннего сайта и использование его в коммерческих целях запрещено ...

  • Денис Л.
  • |
  • 24-12-2018
  • |
  • Linux
  • |
Паблик Webtackles запустил агрегатор фриланс проектов

Паблик Webtackles запустил агрегатор фриланс проектов

Паблик Webtackles запустил сервис - Бесплатный агрегатор фриланс проектов. Сервис включает в себя два бота для VK (vk.me/webtackles) и Telegram (tg.webtackles.ru), а также сайт webtackles.ru с настройками и возможность управлять уведомлениями в этих ...

Как избежать скликивания рекламных средств на Яндекс.Директ

Как избежать скликивания рекламных средств на Яндекс.Директ

Пользуетесь Директом? Наверняка Вы будете переживать за быстрое списывание средств на счёте, особенно если списание средств будут провоцировать Ваши конкуренты путём регулярных кликов по Вашим объявлениям. Я написал скрипт, который определяет повторные клики на Ваше объявление с одного IP и в ту же секунду отправляет Вам уведомление по почте. Вы сможете тут же зайти в настройки рекламной ...

  • Денис Л.
  • |
  • 28-11-2018
  • |
  • Seo
  • |
Ставим надёжную защиту от спама на сайте своими силами

Ставим надёжную защиту от спама на сайте своими силами

Замучил спам? Я написал скрипт, который защитит Ваc от ненужных писем через формы обратной связи Вашего сайта. Раньше я пользовался reCAPTCHA от Google. Но после того, как посмотрел на его исходный код, а в частности его вес (314 Кб в несжатом виде для версии v3), а также количество инициируемых им запросов, я отказался от этой идеи и написал всё сам. Работа скрипта ...

  • Денис Л.
  • |
  • 07-11-2018
  • |
  • Php
  • |
Делаем свой счётчик просмотров, используя API Метрики

Делаем свой счётчик просмотров, используя API Метрики

Зачем может понадобиться свой счётчик просмотров? если у Вам блог на чистом коде, либо на своей CMS; если Вы пишете приложение, в котором требуется фиксировать и показывать количество просмотров; если у Вас стоит популярная CMS, но при этом Вы не хотите использовать сторонние плагины из-за рисков безопасности и прочего; если у Вас ...

Пишем функцию лайков для постов блога

Пишем функцию лайков для постов блога

Для чего нужна функция лайков? В первую очередь, чтобы пользователи могли оценить Вашу запись, а также видеть, как её оценивают другие. Как сделать самостоятельно такой функционал - я расскажу в данном посте. Если Вам понравится данный пост - поставьте лайк! :) Первым делом нам нужно создать таблицу в базе данных. Допустим, у нас сайт с базой данных MySQL. Если у Вас в проекте ...

Как подключить чат в поиске Яндекса + крутой онлайн чат для сайта

Как подключить чат в поиске Яндекса + крутой онлайн чат для сайта

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

Создаём свою таблицу в базе данных 1С-Битрикс

Создаём свою таблицу в базе данных 1С-Битрикс

На днях мне поставили задачу написать свой функционал для нашего сайта на Битрикс, который бы выводил данные из таблицы в базе данных сайта. Таблицу требовалось создать новую, со следующими полями: id category question answer Далее нужно было выводить на странице все ...

  • Денис Л.
  • |
  • 12-09-2018
  • |
  • Cms
  • |
Как делать ссылки, не передающие вес

Как делать ссылки, не передающие вес

Часто на сайте мы хотим сослаться на какой-либо сторонний ресурс. При этом, передавать ему вес совершенно не хочется. Например, Вы делаете на сайта ссылки на социальные сети. И хотели бы, чтобы ссылка не воспринималась поисковой системой в качестве ссылки. Есть несколько вариантов сделать это и я приведу основные способы. ❶ У всех ссылок на сторонние ресурсы ...

  • Денис Л.
  • |
  • 10-09-2018
  • |
  • Seo
  • |
Node.js: как рекурсивно сжать все изображения на сайте за 1 час

Node.js: как рекурсивно сжать все изображения на сайте за 1 час

Не так давно я начал работать с Node.js. Отличная штука, скажу я Вам! К примеру, освоив некоторые его основные функции и подключив нужные модули, Вы можете в автоматическом режиме сжимать стили на своём сайте, javascript, изображения и прочее. Сегодня я расскажу про то, как в течении 1 часа я сжал все изображения сайта на 1С-Битрикс, а именно 1215 штук. Все ...

Пишем свой css фреймворк на Sass

Пишем свой css фреймворк на Sass

Если Вы давно работаете в сфере web-разработок, то рано или поздно встанет вопрос о создании своего фреймворка для быстрой вёрстки. Например, Вы получили в работу новый проект. Вы понимаете, что использовать новые крупные библиотеки (bootstrap и тому подобные) на данном проекте нельзя, т.к. сразу поедет разметка всего сайта. А работу нужно выполнить быстро, причём задачи полностью переделать ...

Php скрипт, определяющий сколько лет организации

Php скрипт, определяющий сколько лет организации

Сегодня была поставлена задача поменять количество лет, которые исполнились нашей организации в слайдере на главной странице. В частности, в слайдере стояла фраза "22 года на рынке экспертных услуг". Следовательно, нужно было сделать 23. Как и любой уважающий себя программист, я очень люблю автоматизировать все рутинные процессы. А особенно те, которые можно забыть. Ведь не так просто помнить ...

  • Денис Л.
  • |
  • 28-08-2018
  • |
  • Php
  • |
Скорость загрузки сайта и как её увеличить

Скорость загрузки сайта и как её увеличить

Увеличение скорости загрузки сайта - задача любого уважающего себя веб-разработчика. Какой бы красивый и современный не был Ваш сайт, если он долго грузится - это сводит на нет все труды по его красоте оформления и функциональности. А если Ваш сайт не загружается более 5-ти секунд - то большинство пользователей просто закроют его и перейдут к другому. Способов оптимизации скорости ...

Защищаем JavaScript от копирования

Защищаем JavaScript от копирования

Не так давно я разработал JavaScript-калькулятор для расчёта стоимости услуг, с большим количеством взаимосвязанных параметров. Руководство поставило задачу защитить данный скрипт от копирования, чтобы конкуренты не смогли использовать его на своих сайтах. Искал различные решения, ничего подходящего не нашёл, поэтому начал писать собственное решение. Представляю его ниже. Обращаю ...

Форма на php с безопасной загрузкой файлов на сервер

Форма на php с безопасной загрузкой файлов на сервер

Недавно я делал форму обратной связи с возможностью загрузки файлов. При этом стояла задача сделать форму идеально безопасной, с "белым списком" файлов, а также на выходе формировать письмо клиентскому отделу с данными клиента и всеми его файлами. Поскольку файлы (согласно ТЗ) могут иметь большой размер (до 50 МБ каждый), никакой почтовый клиент не выдержит такого объёма информации, особенно ...

  • Денис Л.
  • |
  • 13-08-2018
  • |
  • Php
  • |
1С Битрикс: убираем из кода скрытые подпункты в меню

1С Битрикс: убираем из кода скрытые подпункты в меню

1С Битрикс - интересная CMS, с множеством ньюансов и "подводных камней". Не так давно в команду, где я работаю, пригласили seo-специалиста и он сказал, что у нас на сайте огромное количество внутренних ссылок. Около 350 на каждой странице. И это снижает вес других ссылок, которые он планировал использовать для перелинковки внутри нашего сайта. Я не сео-специалист, а веб-разработчик, поэтому, ...

  • Денис Л.
  • |
  • 26-07-2018
  • |
  • Cms
  • |
Prestashop 1.7: клонирование модуля

Prestashop 1.7: клонирование модуля

Недавно столкнулся с одной проблемой. Нужно было разместить несколько модулей с рекомендуемыми товарами в одном блоке сайта, в частности - "displayHome". Требовалось вывести на главной странице друг за другом 8 модулей с товарами из разных категорий. Решил воспользоваться модулем "Рекомендуемые товары", который идёт в комплекте с Prestashop 1.7. Один модуль в области "displayHome" разместился ...

  • Денис Л.
  • |
  • 25-07-2018
  • |
  • Cms
  • |
Автоматическая адаптация iframe на сайте

Автоматическая адаптация iframe на сайте

Когда мы размещаем видео с YouTube на своей странице, то сталкиваемся с тем, что YouTube всегда задаёт нам фиксированные размеры видео, указывая их в атрибутах width и height. А если мы хотим, чтобы видео было адаптивным? Чтобы оно всегда было на всю ширину родительского контейнера на всех типах устройств? Тогда нам приходится либо писать кучу стилей, либо мириться с тем, что на больших ...

Google PageSpeed Insights: автоматическая оптимизация изображений сайта

Google PageSpeed Insights: автоматическая оптимизация изображений сайта

Оптимизация сайта - дело непростое. Необходимо учитывать огромное количество факторов. Особенно долго можно переносить изображения, например, в таких системах как Wordpress или Битрикс, поскольку там каждое изображение находится в отдельной папке. И если таких папок более 100, а в интернет-магазинах и более 1000, то процесс копирования изображений может занять несколько дней рутинной ...