Как остановить спам который льется из Contact Form 7 в WordPress

      1 мин чтения    4.5/5    Комментарии к записи Как остановить спам который льется из Contact Form 7 в WordPress отключены

Спам – огромная проблема с контактными формами на веб-сайтах WordPress – как веб-сайтах, которые мы разрабатываем, так и в глобальном масштабе. Contact Form 7 – это самый популярный бесплатный плагин для контактной формы WordPress. Отправка спама через контактную форму может быть огромной проблемой для веб-сайтов WordPress с высоким трафиком, получающих сотни спамовых писем каждый день. Это неудобно и затрудняет обнаружение подлинных сообщений среди спама. Комментарии могут быть огромным преимуществом для вашего блога, и есть несколько фантастических плагинов, которые улучшают функцию комментариев, встроенную в сам WordPress. Наши друзья из SoftwareFindr потратили время на изучение лучших конструкторов форм WordPress, это всеобъемлющий обзор, который стоит прочитать. Однако, независимо от того, насколько хороша ваша форма для комментариев, спам-комментарии могут заставить вас полностью отключить комментарии в своем блоге, что было бы позором. Например, один из наших клиентов веб-дизайна WordPress пожаловался на количество спама, которое они получали через контактную форму Contact Form 7. Мы протестировали ряд методов, чтобы найти лучшее решение,… Читать далее »

Почему Go — идеальный язык программирования для новичка в IT?

      1 мин чтения    4.5/5    Комментарии к записи Почему Go — идеальный язык программирования для новичка в IT? отключены

В современном мире информационных технологий, где все быстро меняется и развивается, выбор языка программирования для изучения может оказаться сложной задачей. Существует множество вариантов, но одним из лучших выборов для начинающего программиста является язык программирования Go. Go, разработанный в Google, обладает рядом преимуществ, которые делают его идеальным языком для новичков. Во-первых, его синтаксис прост и понятен, что облегчает изучение основ программирования. Отсутствие сложных конструкций и необходимости запоминать множество правил позволяет сконцентрироваться на основах и быстро приступить к решению задач. Во-вторых, Go стандартизирован, что означает, что код, написанный на одной машине, будет работать на других без дополнительных усилий. Это позволяет новичкам сосредоточиться на освоении языка, а не на борьбе с непредсказуемыми ошибками и нюансами среды выполнения программы. Кроме того, Go обладает мощным и простым в использовании набором инструментов для разработки. Он включает в себя компилятор, легко читаемый логировочный пакет, инструменты для создания тестов и многое другое. Это позволяет новичкам облегчить процесс разработки… Читать далее »

Через датчик освещенности можно следить за пользователями смартфонов, но эффективность этого метода ограничена

      1 мин чтения    4.5/5    Комментарии к записи Через датчик освещенности можно следить за пользователями смартфонов, но эффективность этого метода ограничена отключены

В современных смартфонах широко распространены датчики освещенности, которые регулируют яркость экрана в зависимости от окружающего уровня света. Однако, их возможности не ограничиваются только этой функцией. Исследователи выяснили, что датчик освещенности может быть использован для более сложных задач, включая отслеживание пользователей смартфонов. Основная идея заключается в том, что датчик освещенности может регистрировать изменения, связанные с движением и деятельностью пользователя. Например, при изменении положения смартфона или приложении, пользователь обычно покрывает датчик освещенности своим лицом или рукой, что вызывает изменение яркости экрана. Эти изменения могут быть использованы для определения активности пользователя, таких как чтение сообщений, просмотр видео или игра в игры. Однако, следует отметить, что использование датчика освещенности для отслеживания пользователей смартфонов не является эффективным методом. Первоначально, это связано с тем, что частота срабатывания датчика ограничена и не всегда может точно определить активность пользователя. Кроме того, существует множество других факторов, влияющих на яркость экрана, таких как автоматическая настройка яркости и наличие закрытого корпуса… Читать далее »

Как сделать — фиксированный/липкий заголовок

      1 мин чтения    4.5/5    Комментарии к записи Как сделать — фиксированный/липкий заголовок отключены

Как создать фиксированный заголовок при прокрутке Для удобства работы с сайтом часто разработчики используют фиксированную шапку сайта. Как сделать липки заголовок? достаточно просто, рассмотрим на примере: Шаг 1) добавить HTML: Пример <div class=»header» id=»myHeader»> <h2>My Header</h2> </div> Шаг 2) добавить CSS: Пример /* Style the header */ .header { padding: 10px 16px; background: #555; color: #f1f1f1; }/* Page content */ .content { padding: 16px; } /* The sticky class is added to the header with JS when it reaches its scroll position */ .sticky { position: fixed; top: 0; width: 100% } /* Add some top padding to the page content to prevent sudden quick movement (as the header gets a new position at the top of the page (position:fixed and top:0) */ .sticky + .content { padding-top: 102px; } Шаг 3) добавить JavaScript: Пример // When the user scrolls the page, execute myFunction window.onscroll = function() {myFunction()};// Get the header var header = document.getElementById(«myHeader»); // Get the offset position of the navbar var sticky = header.offsetTop; //… Читать далее »

Удаление и импорт данных в базу psql

      1 мин чтения    4.5/5    Комментарии к записи Удаление и импорт данных в базу psql отключены

Для создания дампа БД PostgreSQL следует использовать в консоли SSH команду следующего вида: pg_dump -h hostname -U username -F format -f dumpfile dbname где: hostname — имя сервера БД; username — имя пользователя БД (совпадает с именем базы данных); format — формат дампа (может быть одной из трех букв: ‘с’ (custom — архив .tar.gz), ‘t’ (tar — tar-файл), ‘p’ (plain — текстовый файл). В команде букву надо указывать без кавычек.); dumpfile — имя создаваемого файла дампа; dbname — имя базы данных. Для баз созданных до 16.09.2019 имя хоста будет выглядеть так: pg.sweb.ru; для баз данных, которые были созданы после 16.09.2019 имя хоста будет таким: pg2.sweb.ru. После завершения задачи файл с именем dumpfile будет размещен в директории, из которой запускалась команда. Пример создания дампа базы vh36sup в файл архива формата postgress. где custom — архив, в формате самого postgress. pg_dump -h pg2.sweb.ru -U vh36sup -F c -f dump.tar.gz vhsup ИМПОРТ ДАМПА БД POSTGRESQL Для импорта необходимо использовать команду вида: pg_restore -h hostname -U… Читать далее »

Сериализация QuerySets. Получить запрос в sql виде

      1 мин чтения    4.5/5    Комментарии к записи Сериализация QuerySets. Получить запрос в sql виде отключены

Используя pickle для QuerySet, будет выполнен запрос к базе данных что бы загрузить данные в память для сериализации. Сериализация обычно используется перед кэшированием QuerySet или загрузкой из кеша, необходимо что бы результат был доступен для использования сразу после загрузки (чтение с базы данных занимает некоторое время, что свело бы всю пользу кэширования к нулю). Это означает что после восстановления сериализованного QuerySet, он будет содержать результат на момент сериализации, а не тот, который хранится в базе данных на текущий момент. Если вам необходимо сохранить запрос выполняемый QuerySet, что бы получить данные позже, сериализируйте атрибут query QuerySet. Позже вы можете воссоздать первоначальный QuerySet (без загрузки результата) используя такой код: >>> import pickle >>> query = pickle.loads(s) >>> qs = MyModel.objects.all() >>> qs.query = query # Получить оригинальный ‘запрос’. Атрибут query не является частью публичного API, и является частью внутреннего механизма создания запросов. Однако, поддерживает использование pickle и unpickle как показано в примере выше. Сериализация QuerySets возможна только для версии Django, которая была использована при сохранении объекта. При сериализации объекта в версии… Читать далее »

Кэширование Django. Оптимизация производительности Django проектов (часть 3)

      5 мин чтения    4.5/5    Комментарии к записи Кэширование Django. Оптимизация производительности Django проектов (часть 3) отключены

В этой части серии мы рассмотрим важнейший подход к обеспечению высокой производительности — кэширование. Суть кэширования в том, чтобы размещать часто используемые данные в быстром хранилище для ускорения доступа к ним. Важно понять, что быстрое хранилище (например, оперативная память) часто имеет очень ограниченный объем и его нужно использовать для хранения только тех данных, которые с большой вероятностью будут запрошены. Кэш фреймворк Django Django предоставляет ряд средств для кэширования из коробки. Хранилище кэша настраивается при помощи словаря CACHES в settings.py: CACHES = { «default»: { «BACKEND»: «django.core.cache.backends.db.DatabaseCache», «LOCATION»: «my_cache_table», } } Django предоставляет несколько встроенных бекендов для кэша, рассмотрим некоторые из них: DummyCache — ничего не кэширует, используется при разработке/тестировании, если нужно временно отключить кэширование, DatabaseCache — хранит кэш в БД, не самый быстрый вариант, но может быть полезен для хранения результатов долгих вычислений или сложных SQL запросов, MemcachedCache — использует Memcached в качестве хранилища, для использования этого бекенда вам понадобится поднять сервер(ы) Memcached. Для использования в продакшене лучше… Читать далее »

Работа с базой данных. Оптимизация производительности Django проектов (часть 2)

      10 мин чтения    4.5/5    Комментарии к записи Работа с базой данных. Оптимизация производительности Django проектов (часть 2) отключены

Это продолжение серии статей про оптимизацию Django приложений. Первая часть доступна здесь и рассказывает о профилировании и настройках Django. В этой части мы рассмотрим оптимизацию работы с базой данных (модели Django). В этой части часто будет использоваться логирование SQL запросов и DDT, про которые написано в первом посте. Работа с базой данных во всех примерах будет использоваться PostgreSQL, но для пользователей других СУБД большая часть статьи также будет актуальна. Примеры в этой части будут основаны на простом приложении блога, которое мы будем разрабатывать и оптимизировать по ходу статьи. Начнем с следующих моделей: from django.db import models class Tag(models.Model): name = models.CharField(max_length=64) def __str__(self): return self.name class Author(models.Model): username = models.CharField(max_length=64) email = models.EmailField() bio = models.TextField() def __str__(self): return self.username class Article(models.Model): title = models.CharField(max_length=64) content = models.TextField() created_at = models.DateField() author = models.ForeignKey(Author) tags = models.ManyToManyField(Tag) def __str__(self): return self.title Весь код доступен на GitHub с разбивкой по тегам. Массовые изменения Массовая вставка Предположим,… Читать далее »

Получить все поля модели с его значениями Django

      1 мин чтения    4.5/5    Комментарии к записи Получить все поля модели с его значениями Django отключены

Для получения значений из модели Django и дальнейшего их использования и манипуляций с ними можно воспользоваться подобным простеньким скриптом. Я использовал его для создания формы фильтрации по всем полям и приводил типы к виду для html разметки: type_filter ={ ‘CharField’: ‘text’, ‘TextField’: ‘textarea’, ‘IntegerField’: ‘IntegerField’, ‘DateField’: ‘DateField’, ‘AutoField’: », ‘ForeignKey’: » } your_fields = Your_model._meta.local_fields filter = dict() for f in your_fields: if type_filter[f.get_internal_type()]: filter[f.name] = { ‘name’: f.verbose_name, ‘type’: type_filter[f.get_internal_type()] }

Как установить php5 и php7 на Ubuntu 18.04 LTS

      2 мин чтения    4.5/5    Комментарии к записи Как установить php5 и php7 на Ubuntu 18.04 LTS отключены

PHP — рекурсивная аббревиатура для гипертекстового процессора. Это язык сценариев общего назначения с открытым исходным кодом, который широко используется в веб-разработке благодаря его способности встраиваться в HTML. Язык сценариев используется для написания заранее написанных программ, которые впоследствии используются для автоматизации задач. PHP-скрипты обычно используются в Linux, Unix, Windows, Mac OS и других операционных системах. Когда вы используете PHP в веб-разработке, вы можете выбрать свой веб-сервер и основную операционную систему. В этой статье описана пошаговая процедура установки версий PHP 5.6 и 7.2 на Ubuntu. После установки двух версий мы также объясним, как можно отключить одну версию и включить в системе другую версию как версию по умолчанию. Мы запустили команды и процедуры, упомянутые в этой статье, в системе Ubuntu 18.06 LTS. В этой статье мы используем командную строку Ubuntu, Terminal, для установки и настройки PHP. Вы можете открыть приложение «Терминал» через системную черту или сочетание клавиш Ctrl + Alt + t. Официальный… Читать далее »