9 супер полезных PHP сниппетов


Содержание

9 супер полезных PHP сниппетов

Каждый веб-разработчик хранит полезные фрагменты кода в своей личной библиотеке, чтобы не «изобретать велосипед» каждый раз заново. В данной статье собраны наиболее интересные и полезные фрагменты PHP-кода, которые я добавил к своей личной библиотеке за последние 3 месяца.

Конвертация PDF-файлов в JPG с помощью PHP и Image Magick

Этот простой фрагмент PHP-кода конвертирует PDF-файл в изображение JPG. Это очень полезно, если вам нужно создать изображение для предварительного просмотра ваших файлов в формате PDF. Пожалуйста, обратите внимание, что у вас должно быть установлено расширение Image Magick на вашем сервере, чтобы использовать этот код.

$pdf_file = ‘./pdf/demo.pdf’ ;
$save_to = ‘./jpg/demo.jpg’ ; //Убедитесь, что Apache имеет разрешения на запись в эту папку! (частая проблема)

//выполните ImageMagick коммандой ‘convert’ и конвертируйте PDF в JPG с указанными настройками
exec ( ‘convert «‘ . $pdf_file . ‘» -colorspace RGB -resize 800 «‘ . $save_to . ‘»‘ , $output , $return_var ) ;
if ( $return_var == 0 ) <
//если конвертация прошла успешно
print «Conversion OK» ;
>
else print «Ошибка конвертации.
» . $output ;

Проверка записываемой информации в базу данных

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

function cleanInput ( $input ) <

$search = array (
‘@@si’ , // Удаляем javascript
‘@ ]*?>@si’ , // Удаляем HTML теги
‘@@siU’ , // Удаляем теги style
‘@ @’ // Удаляем многострочные комментарии
) ;

$output = preg_replace ( $search , » , $input ) ;
return $output ;
>

function sanitize ( $input ) <
if ( is_array ( $input ) ) <
foreach ( $input as $var => $val ) <
$output [ $var ] = sanitize ( $val ) ;
>
>
else <
if ( get_magic_quotes_gpc ( ) ) <
$input = stripslashes ( $input ) ;
>
$input = cleanInput ( $input ) ;
$output = mysql_real_escape_string ( $input ) ;
>
return $output ;
>

// Использование:
$bad_string = «Привет! Какой хороший сегодня день!» ;
$good_string = sanitize ( $bad_string ) ;
// $good_string вернет «Привет! Какой хороший сегодня день!»

// Также используйте для проверки POST/GET данных
$_POST = sanitize ( $_POST ) ;
$_GET = sanitize ( $_GET ) ;

Создание data URI изображения при помощи PHP

Вместо предоставления традиционного адреса изображения, вы можете использовать данные изображения в кодировке base64 и добавить их в атрибут src. Это экономит сетевые запросы для каждого изображения, и предотвращает попытки несанкционированного доступа к каталогам с изображениями. Обратите внимание, что в IE7 и ниже, это работать не будет.

// имя изображения
$image = ‘cricci.jpg’ ;

// кодируем изображение в base64
$imageData = base64_encode ( file_get_contents ( $image ) ) ;

// формат пути к изображению: data:;base64,;
$src = ‘data: ‘ . mime_content_type ( $image ) . ‘;base64,’ . $imageData ;

//Вывод изображения
echo ‘ , $src , ‘»>’ ;

Создание CSV-файла из массива PHP

Это простая, но эффективная функция для генерации CSV-файла из массива PHP. Функция принимает 3 параметра: данные, разделители полей CSV (по умолчанию это запятая) и ограничители полей CSV (по умолчанию — двойные кавычки).

Разархивирование файлов при помощи PHP

Эта функция принимает два параметра: zip-архив и папку, в которую нужно архив распаковать.

Определить местонахождение по IP

Этот полезный фрагмент кода поможет вам определить местоположения конкретного IP. Функция принимает один IP в качестве параметра, и возвращает местоположение. Если местоположение не найдено, возвращается UNKNOWN.

function detect_city ( $ip ) <

if ( ! is_string ( $ip ) || strlen ( $ip ) 1 || $ip == ‘127.0.0.1’ || $ip == ‘localhost’ )
$ip = ‘8.8.8.8’ ;

$curlopt_useragent = ‘Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.2) Gecko/20100115 Firefox/3.6 (.NET CLR 3.5.30729)’ ;

$url = ‘http://ipinfodb.com/ip_locator.php?ip=’ . urlencode ( $ip ) ;
$ch = curl_init ( ) ;

$curl_opt = array (
CURLOPT_FOLLOWLOCATION => 1 ,
CURLOPT_HEADER => 0 ,
CURLOPT_RETURNTRANSFER => 1 ,
CURLOPT_USERAGENT => $curlopt_useragent ,
CURLOPT_URL => $url ,
CURLOPT_TIMEOUT => 1 ,
CURLOPT_REFERER => ‘http://’ . a > $_SERVER [ ‘HTTP_HOST’ ] ,
) ;

if ( preg_match ( ‘<

  • City : ([^ , $content , $regs ) ) <
    $city = $regs [ 1 ] ;
    >
    if ( preg_match ( ‘<
  • State/Province : ([^ , $content , $regs ) ) <
    $state = $regs [ 1 ] ;
    >

    if ( $city != » & amp ;& amp ; $state != » ) <
    $location = $city . ‘, ‘ . $state ;
    return $location ;
    > else <
    return $default ;
    >

    Отсылаем логи ошибок себе на email

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

    Эта функция будет отсылать вам по электронной почте логи, как только ошибка произойдет на вашем сайте. Очень удобно, чтобы быть всегда в курсе проблем вашего сайта.

    Ошибка ( $number ) произошла в строке
    $line в файле: $file .

    $headers = ‘Content-type: text/html; charset=UTF-8’ . » \r \n » ;

    // Кому отсылаем email.
    error_log ( $email , 1 , span >= «cloakd6f846676f2a2b04a728ddfcd0e83521» > Этот адрес электронной почты защищён от спам — ботов . У вас должен быть включен JavaScript для просмотра . span > script type = ‘text/javascript’ >
    document . getElementBy >( ‘cloakd6f846676f2a2b04a728ddfcd0e83521’ ) . innerHTML = » ;
    var prefix = ‘ma’ + ‘il’ + ‘to’ ;
    var path = ‘hr’ + ‘ef’ + ‘=’ ;
    var addyd6f846676f2a2b04a728ddfcd0e83521 = »you’ + ‘@’ ;
    addyd6f846676f2a2b04a728ddfcd0e83521 = addyd6f846676f2a2b04a728ddfcd0e83521 + ‘youremail’ + ‘.’ + ‘com’ ;
    var addy_textd6f846676f2a2b04a728ddfcd0e83521 = »you’ + ‘@’ + ‘youremail’ + ‘.’ + ‘com’ ; document . getElementBy >( ‘cloakd6f846676f2a2b04a728ddfcd0e83521’ ) . innerHTML += ‘ + path + ‘\» + prefix + ‘:’ + addyd6f846676f2a2b04a728ddfcd0e83521 + ‘\’>’ + addy_textd6f846676f2a2b04a728ddfcd0e83521 + ‘ ‘ ;
    ‘, $headers);

    // Определитесь как реагировать на ошибки (на стороне пользователя)
    // Либо это сообщение об ошибке, или завершить работу скрипта .
    // Этот код прекращает работу скрипта, если ошибка была более чем просто уведомление.
    if ( ($number !== E_NOTICE) && ($number nettuts_error_handler ‘);

    // Trigger an error. (var doesn’ t exist )
    echo $somevarthatdoesnotexist ;

    Удаляем HTML-теги добавленные Microsoft Word

    Если вы работаете с визуальными редакторами, то, я думаю, вы уже имели множество проблем при вставке текста напрямую из Microsoft Word, это приводит к плохой разметки и различных проблем в коде.

    Следующая функция очищает от различного «мусора» код и возвращает чистый HTML, который можно безопасно использовать на сайте.

    function cleanHTML ( $html ) <
    $html = ereg_replace ( » ]*>» , «» , $html ) ;

    $html = ereg_replace ( » ]*)( > [ ^ «]*» | ‘[^’ ] * ‘|[^>]+)([^>]*)>»,» «,$html);
    $html = ereg_replace(» ]*)( |’ [ ^ ‘]*’ | [ ^ > ] + ) ( [ ^ > ] * ) > «,» \ 1 > «, $html );

    Автоматическое добавление водяных знаков на изображение

    Если вы выкладываете ваши собственные изображения на веб-сайтах, то есть вероятность, что вы не захотите видеть их везде в интернете на следующий день. Для предотвращения кражи изображений необходимо заявить о себе как создателе изображений, и добавление водяных знаков на них, как правило, хорошая идея. Эта функция позволяет автоматически добавлять водяные знаки на ваши изображения.

    Цукерберг рекомендует:  Помощь - Ищу наставника по JS

    function watermarkImage ( $SourceFile , $WaterMarkText , $DestinationFile ) <
    list ( $width , $height ) = getimagesize ( $SourceFile ) ;
    $image_p = imagecreatetruecolor ( $width , $height ) ;
    $image = imagecreatefromjpeg ( $SourceFile ) ;
    imagecopyresampled ( $image_p , $image , 0 , 0 , 0 , 0 , $width , $height , $width , $height ) ;
    $black = imagecolorallocate ( $image_p , 0 , 0 , 0 ) ;
    $font = ‘arial.ttf’ ;
    $font_size = 10 ;
    imagettftext ( $image_p , $font_size , 0 , 10 , 20 , $black , $font , $WaterMarkText ) ;
    if ( $DestinationFile <> » ) <
    imagejpeg ( $image_p , $DestinationFile , 100 ) ;
    > else <
    header ( ‘Content-Type: image/jpeg’ ) ;
    imagejpeg ( $image_p , null , 100 ) ;
    >
    imagedestroy ( $image ) ;
    imagedestroy ( $image_p ) ;
    >

    /******** использование **********/
    $SourceFile = ‘/home/user/www/images/image1.jpg’ ;
    $DestinationFile = ‘/home/user/www/images/image1-watermark.jpg’ ;
    $WaterMarkText = ‘Ваш копирайт’ ;
    watermarkImage ( $SourceFile , $WaterMarkText , $DestinationFile ) ;

    Автоматическое добавление ссылки для email-адресов

    Следующий код ищет адреса электронной почты в строке, и заменяет их на ссылку mailto. Довольно полезно на приватных приложений, но из-за спамеров я не рекомендую использовать это на сайте, в блоге или на форуме.

    $stringa = «This should format my email address cloakad84a03c7b3a465d49aa2a8ddf78d38d «>Этот адрес электронной почты защищён от спам-ботов. У вас должен быть включен JavaScript для просмотра. » ;

    $pattern = «/([a-z0-9][_a-z0-9.-]+@([0-9a-z][_0-9a-z-]+\.)+[a-z]<2,6>)/i» ;
    $replace = » \\ 1″ ;
    $text = preg_replace ( $pattern , $replace , $stringa ) ;
    echo htmlspecialchars ( $text ) ;

    Если у Вас возникли вопросы, то для скорейшего получения ответа рекомендуем воспользоваться нашим форумом


    10+ полезных jQuery сниппетов на каждый день

    Спустя годы библиотека jQuery стала неотъемлемой частью в работе каждого web-разработчика. Ведь она простая в использовании, быстрая и имеет очень широкие возможности. В этой статье я собрал список из более чем десяти сниппетов, которые вы можете свободно брать для использования. Их очень легко адаптировать под нужды ваших собственных проектов.

    Плавный скролл к верху страницы

    Давайте начнем этот список с очень популярного и полезного сниппета: эти 4 строки кода позволят вашим посетителям плавно проскролить страницу к верху простым нажатием ссылки (с id #top) расположенной внизу страницы.

    Дублирование thead в самый низ html таблицы

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

    Загрузка внешнего контента

    Вам нужно добавить определенный внешний контент в div? Так вот это очень просто сделать с jQuery, как показано в нижеприведенном примере.

    Колонки одинаковой высоты

    В случае использования колонок для отображения контента вашего сайта, определенно будет смотреться лучше, если у колонок будет одинаковая высота. Код ниже возьмет все div элементы с классом .col и установит их высоту по самому высокому элементу. Супер полезно!

    Табличные полосы (зебра)

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

    Частичное обновление страницы

    Если вам нужно обновить только часть страницы, то эти 3 строки кода точно помогут. В примере div с id #refresh автоматически обновляется каждые 10 секунд.

    Предзагрузка изображений

    jQuery упрощает предзагрузку изображений в фоне, так что посетителям не придется ждать целую вечность, когда появятся желаемые изображения. Код готов к использованию, просто отредактируйте список изоборажений в строке 8.

    Открытие внешних ссылок в новом окне или новой вкладке

    Аттрибут target=»_blank» позволяет вам открывать ссылки в новых окнах. Но это относится к открытию внешних ссылок, внутридоменные ссылки должны окрываться в том же окне.
    Этот код находит внешнюю ссылку и добавляет в найденный элемент аттрибут target=»_blank».

    Div по ширине/высоте вьюпорта

    Этот удобный фрагмент кода позволяет создавать растянутый по ширине/высоте вьюпорта div. Код также поддерживает изменение размеров окна. Прекрасное решение для модальных диалогов и popup-окон.

    Проверка сложности пароля

    Когда вы предоставляете пользователям самостоятельный выбор пароля, было бы неплохо показать насколько сложен их пароль. Код сниппета именно это и делает.

    Для начала создадим поля ввода:

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

    Изменение размеров изображения

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

    Автоматическая загрузка контента по скроллу

    Некоторые сайты, такие как Twitter загружают контент по скроллу. Это значит, что весь контент динамически подгружается на странице в процессе прокрутки вниз.
    Вот пример того, как вы можете сделать этот эффект на вашем сайте.

    Проверить, загрузилось ли изображение

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

    Сортировка списка в алфавитном порядке

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

    10 полезных хаков и сниппетов для WordPress

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

    1. Автоматическое добавление кнопки Google+ к вашим постам

    Google+ — это новый соц. сервис, разработанный интернет-гигантом, компанией Google. Если вы хотите к нему присоединиться и дать возможность своим читателям «плюсовать» ваши посты, то почему бы вам не добавить автоматически кнопку для Google+ ко всем вашим записям в блоге?

    Просто вставьте приведенный ниже код в файл functions.php. После того, как вы сохраните изменения в файле, кнопка Google+ автоматически будет отображаться рядом с вашими публикациями в блоге.

    2. Перенаправление RSS-лент в Feedburner

    Feedburner — хорошо известный сервис, позволяющий вам узнать, сколько людей подписалось на чтение вашего RSS-канала. Но вместо того, чтобы возиться с настройкой и модификацией вашей темы, чтобы заменить встроенные ссылки «фида» в WordPress, вам определенно стоит использовать этот хак, чтобы автоматически перенаправить все ваши фиды из wordpress в Feedburner.

    Отредактируйте строку 4 и замените адрес моего «фида» собственным. Сделав это, вставьте сниппет кода в ваш файл functions.php, сохраните изменения в нем — и все готово!

    3. Отслеживание просмотров постов без использования плагинов

    Вам наверняка интересно, сколько людей читают ваши посты. Есть несколько плагинов, которые считают число просмотров для каждого поста или всех публикаций блога, но есть и простой способ организовать такой подсчет самостоятельно, без всяких плагинов. Сначала надо создать функции. Вставьте приведенный далее код в ваш файл functions.php:

    А теперь добавьте код в файл single.php в цикле:

    И наконец, добавьте приведенный далее сниппет в любой участок шаблона, где вы хотите видеть число пользовательских просмотров конкретного поста:

    4. Отображение количества поклонников блога в Facebook в полном тексте

    Если вы завели страничку в Facebook для своего блога, вам наверняка захочется отображать в блоге число существующих у вас «поклонников» в данной соц. сети. Следующий сниппет поможет вам выводить на странице вашего блога число «фанов». Просто вставьте этот код в любой из файлов вашей темы там, где вам хочется отображать счетчик с числом читателей из соц. сети.

    5. Отображение поисковых терминов из поисковика Google

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

    И конечно же, этот сниппет можно также использовать для создания логов из поисковых запросов пользователя до того, как он попал к вам на сайт.

    6. Простое отображение внешних файлов при помощи шорт-кода

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

    Для начала откройте файл functions.php и вставьте следующий код:

    Сохранив изменения в вашем файле functions.php, вы сможете использовать этот шорт-код при помощи следующего синтаксиса:

    7. Отправка еmail-уведомлений соавторам блога после того, как их пост опубликован

    Если у вашего блога не один автор, а целая команда соавторов, то неплохо дать знать тем, кто публикует у вас посты, что именно их пост уже опубликован. Для этого стоит добавить следующий код в functions.php. Сделав это, вы получите отправку автоматических электронных писем всем вашим соавторам, когда их посты опубликованы:

    8. Отображение снимков внешних веб-сайтов при помощи шорт-кода


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

    Начнем с того, что добавим несколько функций в ваш файл functions.php:

    Закончив с этим, перейдем к использованию шорт-кода для создания снимков с сайтов при помощи вашего редактора постов WordPress, так, как это показано ниже:

    9. Составление списка сайтов из вашей сети

    Вот еще одна отличнейшая функция, при помощи которой можно управлять сетью сайтов, используя возможности CMS WordPress 3.+. Вам нужен полный список сайтов вашей сети? Его довольно просто создать и использовать при помощи приведенной далее функции. Для начала, как вы наверное догадываетесь, надо прописать функции в файле functions.php для вашей темы:

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

    10. Добавление класса публикации, если у поста есть thumbnail-картинка

    Оформляя стиль вашей темы, вы можете столкнуться с определенными трудностями в том случае, когда есть посты как с картинками-thumbnail, так и без них. Чтобы упростить работу с кодом и оформлением, воспользуйтесь следующим сниппетом, который добавляет класс has_thumb в css для класса публикаций. Просто вставьте приведенный ниже код в файл functions.php:

    Цукерберг рекомендует:  AR. Приложение дополненной реальности. Для мобильных устройств под iOS
    Источник: CatsWhoCode.com

    Насколько полезным был этот пост?

    Нажмите на звезду, чтобы оценить этот пост!

    Средний рейтинг: 5 / 5. Количество голосов: 16

    PHP Snippets

    Every PHP developer needs a good and reliable collection of code snippets. In this category, you will find 900+ copy and paste code snippets that will help in your next PHP project.

    Results via Envato Market

    PHP Syntax Highlighter

    PSH highlights and indents source code using highlight configuration files which are similar to Ultraedit highlighting files As such it currently supports C C Java Perl PHP Pascal Lisp Mumps

    Password Structure Validation

    This page will validate the structure of a string to your specifications This script will verify a password to make sure it contains a lower and upper case alpha character

    Poor Man’s ISQL (MySQL Style)

    Much like Yurko’s quot SQL Terminal quot above this lets you run raw SQL against the database using a web interface I use frames for this so standard editbox functions

    Integrating Ektron eWebEditPro in PHP

    Ektron eWebEditPro the leading multi-language browser-based WYSIWYG Web content authoring tool offers business users a familiar editing toolbar for authoring content without needing to know HTML — which broadens the

    Compensate for server and user to return local time

    When developing scripts that display time it can be tedious trying to manually compensate for the server as well as desired zone offset — especially when DST is an issue

    CSV Export

    Export your data to a csv and read with Excel

    Create and Delete tables in an existing database

    A very simple Create and Delete tables snippet. Requires some knowledge of mySQL.
    Tested with PHP 4.0.6.

    Easy dates

    A short piece of code to help move dates and times around Store the date and time in one column in mysql and use this to help display it however

    Whiteboard and Audio Video Modules for FlashChat

    This set of add-ons to lt a target blank href http www tufat com chat php gt FlashChat lt a gt include an MP player a web radio player a

    Access Style DLookup function for MySQL

    Small but handy function to emulate an Access-style DLookup function.

    Super Useful PHP Snippets

    When developing websites, apps, or blogs, code snippets can be a real time saver. Today, I’m sharing super useful PHP snippets that I’ve collected over the past months. Enjoy!

    Join the DZone community and get the full member experience.

    Create Data URI’s

    Data URI’s can be useful for embedding images into HTML/CSS/JS to save on HTTP requests and consequently enhance your site loading time. The following function will create a Data URI based on $file for easier embedding.

    Source: CSS Tricks

    Combine JavaScript and CSS files

    Another good tip to minimize HTTP requests and save on page loading time: combine your CSS and JS files. While I would recommend using a dedicated plugin to do so (such as minify), it’s still very easy to combine files using PHP. Let’s have a look:

    And, the usage would go like this:

    Source: Sanwebe

    Find Out if Your Email Has Been Read

    When sending emails, you might want to be able to find out if your email has been read. Here’s a very interesting snippet which logs the IP address which read your email, as well as the actual date and time.

    Extract Keywords from a Webpage

    The title said it all: a great code snippet to extract easily meta keywords from any webpage.

    Using the DOM, you can easily grab all links from any webpage. Here’s a working example:

    Source: Snipplr

    In WordPress, if you want to auto convert all URLs in your string into clickable hyperlinks, you can actually do it using the built-in function make_clickable() . If you need to do that outside of WordPress, you can refer to the function’s source code at wp-includes/formatting.php :

    Download & Save a Remote Image on Your Server

    Downloading an image on a remote server and saving it on your own server is useful when building websites, and it’s also very easy to do. These two lines of code below will do it for you.


    Source: Cats who code

    Detect Browser Language

    If your website is multilingual, it can be useful to detect the browser language to use this language as the default. The code below will return the language used by the client’s browser.

    10 простых и полезных CSS сниппетов

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

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

    1. Вертикальное выравнивание чего угодно

    Если вы работаете с CSS, то не раз задавались вопросом как выровнять текст или любой другой элемент вертикально внутри блока контейнера? Теперь, с использованием CSS3 трансформаций, можно решить эту задачу весьма элегантно.

    Используя эту технику, вертикально выровнять можно все, одну линию текста, несколько абзацев или блок с контентом. Это решение работает и поддерживается в разных браузерах. CSS3 Трансформации работают в Chrome4, Opera 10, Safari 3, Firefox 3, и Internet Explorer 9.

    2. Растянуть элемент на всю высоту окна. Элемент на 100% высоты окна.

    В некоторых случаях, вам может понадобится растянуть элемент по вертикали на всю высоту окна. Обычное изменение размера элемента — даст ему максимум высоту контейнера в котором он находится. Чтобы задать блоку высоту в 100% от всего окна, необходимо убедится что высота самых первых контейнеров html и body равна 100%, то есть высоте окна.

    Теперь применяем 100% высоту к нужному нам блоку, вот так:

    3. Разное оформление для разных ссылок — на файлы, почту, или разные типы файлов

    Иногда у вас есть несколько ссылок, которые вы хотите оформить непохожими на другие ссылки. Чтобы выизуально было лече их различать, какая ссылка ведет на внешний сайт, какая откроет email для отправки письма, а какая используется для скачивания файлов. Этот сниппет добавит иконку перед текстом ссылки, и иконка будет разная, в завсимости от того н что ссылается ссылка (на сайт, почту или файл).

    Вот как это будет выглядеть:

    4. Сделать изображения черно-белыми

    Обесцвечивание изображений в черно-белые цвета может помочь сделать ваш сайт более стильным и материалистичным. Это можно сделать применив черно-белый фильтр используя SVG. Вот что мы сделаем чтобы применить черно-белый тон:

    Чтобы сделать это решение кросс-браузерным, добавим CSS свойство filter :

    5. Градиентный фон и его анимация

    Одна из наиболее привлекательных возможностей в CSS это возможность анимации. Можно анимировать цвет фона, прозрачность, размер, но не градиентную заливку. Несмотря что напряму не поулучится задать анимацию градиенту, вам может помочь этот сниппет. Он двигает позицию фона, таким образом что жто будет выглядеть как анимация.

    6. Автоматическая ширина колонок в таблице с помощью CSS

    Таблицы это головная боль, особенно когда это касается ширины колонок. Однако, есть решение которое нам поможет. Добавив white-space: nowrap для каждой td ячейки мы легко поправим то как таблица оборачивает текст внутри .

    Посмотрите демо и сравните результат.

    7. Box Shadow только с одной или двух сторон

    Если нужно реализовать тень только с одной стороны, попробуйте исполльзовать этот код. Чтобы реализовать такое решение, сперва нужно определить контейнер с нужной шириной и высотой. Дать ему тень используя псевдо-элемент :after и немного поиграть с ним чтобы дать ему верное расположение. Пример кода ниже поможет сделать только нижнюю тень.

    8. Обертка для блока с длинным текстовым контентом

    Чтобы понять, зачем это нужно лучше срау посмотреть на пример. Допустим у нс есть кнтейнер, шириной в 200px. И в нем кроме обычных слов есть длинная ссылка на сайт. Наверняка вы знаете что длинные слова или в данном случае ссылка — не будут разбиваться на переносы. Таким образом контент вылезет за пределы блока.

    Исправить этот баг нам поможет простой CSS сниппет, который подгонит текст под размеры контейнера.

    Вот как теперь будет выглядеть данный текст в контейнере:

    9. Сделать «размытый» текст

    Хотиете добавить эффект размытия к тексту? Это можно достичь сделав текст прозрачным, и добавив к нему CSS свойство text-shadow вот так:

    «Размытый» текст готов!

    See the Pen Blurry Text by Yurij Rightblog.ru (@rightblog) on CodePen.18493

    10. Анимация для многоточия, используя только CSS анимацию

    Этот пример поможет сделать анимацию с многоточием, часто используется когда надо отобразить состояние загрузки или ожидания. Теперь вы сможете сделать это на CSS, не используя гиф изобрадения.

    Давайте посмотрим демо:

    Попробуйте эти приемы в действии, они обязательно пригодятся в верстке новых проектов.

    Плагин Code Snippets для вставки WordPress сниппетов и PHP кода без файла функций

    Про вставку PHP кода и специальных хаков в WordPress я уже публиковал две заметки, сегодня дополню их еще одним хорошим методом (модуль Code Snippets). При добавлении простых скриптов или вывода информации в сайдбаре можно установить специальный виджет PHP кода, для более сложных решений рекомендуется использовать файл functions.php WordPress темы. Большинство хаков для системы, которые вы найдете в интернете, реализуется именно вторым вариантом. В статье по ссылке выше я рассмотрел все нюансы по этой теме, однако новичкам может быть сложно копаться в файлах шаблона в поисках места размещения WordPress сниппетов. Для таких случаев могу посоветовать плагин Code Snippets. Кроме простоты работы, он обладает парочкой очень интересных плюсов!

    Цукерберг рекомендует:  Игры на java - Как сделать приложение в java видимым и писать в нем

    Основная функция модуля — интеграция в админку специального графического интерфейса для работы со сниппетами в вордпресс. Данный механизм аналогичен плагинам — вы можете добавлять и редактироватьразные PHP коды, а также активировать и деактивировать их. С технической точки зрения нет никакого отличия при выполнении скриптов, размещенных через плагин Code Snippets или functions.php. Однако пользователям проще и нагляднее править отдельные элементы нежели просматривать сотни строк в одном файле функций.

    Основные плюсы Code Snippets:

    • легкость вставки хаков в WordPress через графический интерфейс;
    • визуальный редактор с подсветкой синтаксиса;
    • сохранность скриптов при смене «темы» (т.к. они хранятся в базе данных);
    • возможность включать/выключать некоторые WordPress сниппеты;
    • настройка работы скриптов отдельно для бэкенда/фронтенда;
    • экспорт/импорт;

    Скачать модуль можете с официального репозитория с этой страницы либо установить его по названию Code Snippets из админки. На момент написания статьи актуальная версия плагина 2.8.0 имеет более 30 тысяч активаций и почти что максимальную оценку (4.8 из 5-ти, всего 90 голосов). Совместимость: от WP 3.6 до 4.7.

    Давайте детально рассмотрим как вставить PHP код в WordPress сайта с помощью данного модуля. После активации в админке появится новый раздел «Snippets»

    По умолчанию открывается пункт «All Snippets», где сможете просмотреть все созданные WordPress сниппеты. В каждой строке имеется описание, метки для быстрого поиска, а при наведении появляются ссылки редактирования и активации/деактивации. Для того чтобы вставить PHP код в WordPress, кликаете по кнопке «Добавить новый» или переходите в пункт меню «Add New». После увидите соответствующую страницу:

    Здесь вводите название элемента и вставляете сам PHP код скрипта. Внимание! При этом добавлять теги открытия и закрытия не нужно! Далее по желанию указываете краткое описание и метки. В самом низу есть настройка «Область» со значениями:

    • запускать сниппет везде (админка + сам сайт);
    • во фронтенде сайта;
    • only run in administration area — только внутри системы;

    Это полезно, поскольку некоторые сниппеты в WordPress предназначены только для админки или фронтенда, и опция позволит грузить скрипты лишь там, где они не нужны. После ввода всех данных кликаете по кнопке «Сохранить» либо «Сохранить и активировать». Кстати, в настройках «Settings» доступна автоматической активации хаков + есть многие другие параметры (в том числе и по внешнему виду редактора PHP кода).

    Что касается экспорта. Сохраняются скрипты для переноса в XML формате, вы можете экспортировать элементы по одному или выделить сразу несколько (как на картинке ниже):

    Импорт производится в одноименном пункте меню. После завершения процедуры переходите в All Snippets и активируете нужные WordPress сниппеты. Больше информации по Code Snippets ищите в FAQ на официальной странице модуля.

    Напоследок один важный момент. Если в процессе работы у вас возникли проблемы с сайтом, и тот перестал грузиться, можете активировать безопасный режим плагина. Для этого добавьте следующую строку в файл wp-config.php:

    Затем деактивируйте или удалите тот вордпресс сниппет, из-за которого и случилась ошибка. Еще раз повторюсь — чтобы вставить PHP код в WordPress сайт НЕ нужно добавлять открывающие и закрывающие теги в редакторе плагина. Если в найденном в интернете примере они есть, копируйте только код между ними. Разумеется, это не касается подобных тегов, когда они используются внутри хака для выделения HTML секций.

    В целом, Code Snippets — отличный модуль! Функция импорта может сэкономить массу времени — вы просто загружаете на новый сайт всю свою подборку заранее заготовленных WordPress сниппетов, а потом активируете нужные из них. Подсветка синтаксиса + применение только для бэкенда/фронтенда — тоже весьма полезны. Рекомендую.

    Если у вас есть что добавить про Code Snippets и по теме вставки PHP кода и WordPress, пишите в комментариях.


    9 супер полезных PHP сниппетов

    Примеры небольших, но часто крайне полезных php сниппетов для Битрикса.

    Php класс для постраничного деления (pogination)

    Преимущества класса:

    • Маленький по размерам.
    • Формирует не просто линейку из всех доступных страниц (1,2,3,4,5. 88,89,90), а можно указать сколько выводить (3,4,5,6,7).

      Недостатки
    • Пока формирование внешнего вида можно изменить только изменив класс кода или через наследование.
    • Нет «из коробки» стилей для визуального оформления.

    Php > 21.02.2020 09:24:08

    Простой но полезный класс для отправки писем с вложениями на php.

    Работа с XLSX через обновленную библиотеку (phpoffice/phpspreadsheet)

    Примеры работы с файлами эксель (excel) используя библиотеку phpspreadsheet

    Удобный пример использования cURL на php

    Код демонстрирует как передать данные а хэдере и теле запроса к серверу и обработать ответ.

    Генерация случайных данных используя Faker

    Иногда, для тестов или демонстрации, нужен массив разных красивых, но случайных данных.

    Например, нужно заполнить базу пользователь с именами, адресами, емейлами и т.д.

    Для таких целей и существует проект Faker , он позволяет генерировать как простые цифры/даты/имена/. так и целые предложения, адреса, телефоны и прочее.

    Как отправлять почту в битриксе через SMTP

    Как не странно, но из коробки в Битриксе нет возможности настроить отправку писем через SMTP. Есть несколько бесплатных расширений, но иногда удобнее настроить все руками.

    Сравнение способов скачивания файлов на php

    Основная идея была в сравнении скорости чтения/скачивания файлов через многопоточный cUrl (curl_multi_init) с однопаточными cUrl и copy / file_get_contents

    Запрос к ресурсу с HTTP авторизацией через curl на php

    Иногда запрос нужно сделать к старине, которая требует http авторизацию. Ниже пример на php.

    Топ 5 сниппетов для JQuery

    • 15-12-2020 •

    Часто бывает так, что приходиться использовать одни и те же скрипты, для одних и тех же проблем для своих сайтов. Для этого я приготовил 5 топовых скриптов, которые можно использовать почти каждый раз

    Топовые сниппеты для ваших сайтов

    See the Pen Top snippets by Aleksandrs (@CoolS2) on CodePen.0

    Все 5 сниппетов я добавил в codepen, чтобы вы могли наглядно посмотреть их работу, а теперь разберем их по порядку

    1. Прелоадер для сайта

    Самый топовый сниппет, который я всегда использую для своих сайтов!

    Сразу после тега body, вставляем наш блок с анимацией, который будет отображаться перед тем как сайт будет загружен

    Сделаем его фиксированным, чтобы при скролле был наш блок с анимацией и 100% на всю ширину и высоту с белым фоном

    Когда загрузиться наш js файл, мы запускаем функцию handlePreloader() в которой мы проверяем, есть ли такой блок с классом .preloader и если есть, убираем его через 200 мс с эффектом fadeOut

    2. Кнопка для прокрутки страницы вверх

    Кнопка, которая и правда часто используется на многих сайтов

    Добавим ссылку с классом топ

    По нажатию на нашу ссылку с классом топ, анимируем скролл со скоростью slow

    3. Сделать все ссылки с параметром Target=”_BLANK”

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

    4. Сделать все колонки одной высоты

    Если вы работаете с bootstrap, то наверно часто сталкивались с тем, что колонки из-за разной длины текста становились не красивыми. Ладно если вы сами пишите текста для сайта, а что если пишут другие люди? Вы же не будете говорить им сколько должно быть символов, иначе верстка развалится) Вот решение:

    В каждом блоке с классом .row, мы ищем наиболее высокий блок, записываем это в переменную и всем колонком, которые в этом блоке, задаем эту высоту.

    5. Легкая анимация на картинки

    Совсем не обязательный сниппет, но в своем роде красит сайт.

    Задаем всем картинкам в блоке .content прозрачность 0.8 и анимацию при наводке мышкой ( если навел, не прозрачная, а если убрал курсор, то снова прозрачность на 0.8

    Если остались вопросы, задавайте в комментариях, так же можете посмотреть Как сделать атоскролл к элементу

    Пачка полезных сниппетов для блога. Часть 38

    Опубликовано: ADv Дата 30.06.2015 в рубрике Код за плагин Комментировать

    Регистрация таксономии для своих страниц

    Это простой сниппет, который зарегистрирует произвольную таксономию для страниц. В примере кода мы зарегистрировали таксономию под названием things, но, конечно же вы вольны изменить ее на нужную вам. Больше подробностей о том, как зарегистрировать произвольную таксономию можно найти в Кодексе. Просто добавьте следующий код в файл functions.php вашей темы или в плагин для сайта WordPress и увидите новую таксономию в своей админке.

    Удаляем класс the_post_thumbnail

    Вам когда-нибудь приходилось использовать the_post_thumbnail( ‘thumbnail’ ); и при этом возникала необходимость убрать класс, который добавляется автоматически? Просто добавьте следующий код в файл functions.php вашей темы или в плагин для сайта WordPress, и класс автоматически удалится. Просто, но эффективно:

    Создаем произвольные термины в столбце админки

    Это простой и небольшой сниппет, который добавит ваши произвольные термы в столбце административной панели. Мы добавили и filter, и action для страниц и записей. Добавляя этот сниппет в файл functions.php своей темы, убедитесь, что вы изменили TERM_NAME в строке echo the_terms( $id, ‘TERM_NAME’, », ‘, ‘ ) на название своего термина. Вы увидите свои термы в таком же виде, как вы видите рубрики, отображаемые в админке.

    По всем вопросам и отзывам просьба писать в комментарии ниже.

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

  • Понравилась статья? Поделиться с друзьями:
    Все языки программирования для начинающих