(☞ຈل͜ຈ)☞ Главная  Статьи  Загрузчик Домой

Ok!
Ok!
198
function setCookie(name,value,days) {
    var expires = "";
    if (days) {
        var date = new Date();
        date.setTime(date.getTime() + (days*24*60*60*1000));
        expires = "; expires=" + date.toUTCString();
    }
    document.cookie = name + "=" + (value || "")  + expires + "; path=/";
}
function getCookie(name) {
    var nameEQ = name + "=";
    var ca = document.cookie.split(';');
    for(var i=0;i < ca.length;i++) {
        var c = ca[i];
        while (c.charAt(0)==' ') c = c.substring(1,c.length);
        if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length,c.length);
    }
    return null;
}
function eraseCookie(name) {   
    document.cookie = name +'=; Path=/; Expires=Thu, 01 Jan 1970 00:00:01 GMT;';
}
куки, cookie120Постановка, уаделние кук Яваскрипт
215
function custom_rate($num, $id)
{
  $line = "<div class='item_rating' data-for='" . $id . "' data-rate='" . $num[0] . "'>";
  for ($i = 1; $i < 6; $i++) {

    if ($i <= $num[0]) {
      $line .= "<img src="/wp-content/uploads/2022/07/Orange_star.svg" width=24 height=24 alt="Рейтинг не менее " . $i . ""/>";
    } else {
      $line .= "<img src="/wp-content/uploads/2022/07/Orange_star_empty.svg" width=24 height=24 alt="Рейтинг менее " . $i . ""/>";
    }
  }

  return $line . "</div>";
}
stars, rating, WP, рейтинг, звездочки120Функция для Вордпресс рейтинг звездочек
220
// Перенаправляем пользователя на страницу оплаты
Header("Location: http://auth.robokassa.ru/Merchant/Index.aspx?MrchLogin=$mrh_login&OutSum=$out_summ&InvId=$inv_id".
              "&InvDesc=$inv_desc&SignatureValue=$crc".
              "&Culture=$culture&Encoding=$encoding&Email=$email");
header, location, php120Перенаправляем пользователя на страницу оплаты Header
240
document.addEventListener("DOMContentLoaded", function (event) {
    setTimeout(function() {
    
        let container = document.createElement("div");
        container.classList.add('g-recaptcha');
        container.setAttribute('id', 'g-recaptcha');
        container.dataset.sitekey = '6Lc-rR0nAAAAAApbMeAGotqehDQZrx7IeUrAajI2';
    
    
        let prev = document.querySelector('[name="form_hidden_45"]');
        prev.after(container);
    },0);
});
JS, javascript, captcha120Добавить блок Капча после поля формы Яваскрипт
151
-webkit-hyphens: auto;
hyphens: auto;
css, перенос, hyphens123Расстановка переносов в блоке css
15
$useragent=$_SERVER['HTTP_USER_AGENT'];
                $mob = 0;
                if(preg_match('/(android|bbd+|meego).+mobile|avantgo|bada/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|iris|kindle|lge |maemo|midp|mmp|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)/|plucker|pocket|psp|series(4|6)0|symbian|treo|up.(browser|link)|vodafone|wap|windows (ce|phone)|xda|xiino/i',$useragent)||preg_match('/1207|6310|6590|3gso|4thp|50[1-6]i|770s|802s|a wa|abac|ac(er|oo|s-)|ai(ko|rn)|al(av|ca|co)|amoi|an(ex|ny|yw)|aptu|ar(ch|go)|as(te|us)|attw|au(di|-m|r |s )|avan|be(ck|ll|nq)|bi(lb|rd)|bl(ac|az)|br(e|v)w|bumb|bw-(n|u)|c55/|capi|ccwa|cdm-|cell|chtm|cldc|cmd-|co(mp|nd)|craw|da(it|ll|ng)|dbte|dc-s|devi|dica|dmob|do(c|p)o|ds(12|-d)|el(49|ai)|em(l2|ul)|er(ic|k0)|esl8|ez([4-7]0|os|wa|ze)|fetc|fly(-|_)|g1 u|g560|gene|gf-5|g-mo|go(.w|od)|gr(ad|un)|haie|hcit|hd-(m|p|t)|hei-|hi(pt|ta)|hp( i|ip)|hs-c|ht(c(-| |_|a|g|p|s|t)|tp)|hu(aw|tc)|i-(20|go|ma)|i230|iac( |-|/)|ibro|idea|ig01|ikom|im1k|inno|ipaq|iris|ja(t|v)a|jbro|jemu|jigs|kddi|keji|kgt( |/)|klon|kpt |kwc-|kyo(c|k)|le(no|xi)|lg( g|/(k|l|u)|50|54|-[a-w])|libw|lynx|m1-w|m3ga|m50/|ma(te|ui|xo)|mc(01|21|ca)|m-cr|me(rc|ri)|mi(o8|oa|ts)|mmef|mo(01|02|bi|de|do|t(-| |o|v)|zz)|mt(50|p1|v )|mwbp|mywa|n10[0-2]|n20[2-3]|n30(0|2)|n50(0|2|5)|n7(0(0|1)|10)|ne((c|m)-|on|tf|wf|wg|wt)|nok(6|i)|nzph|o2im|op(ti|wv)|oran|owg1|p800|pan(a|d|t)|pdxg|pg(13|-([1-8]|c))|phil|pire|pl(ay|uc)|pn-2|po(ck|rt|se)|prox|psio|pt-g|qa-a|qc(07|12|21|32|60|-[2-7]|i-)|qtek|r380|r600|raks|rim9|ro(ve|zo)|s55/|sa(ge|ma|mm|ms|ny|va)|sc(01|h-|oo|p-)|sdk/|se(c(-|0|1)|47|mc|nd|ri)|sgh-|shar|sie(-|m)|sk-0|sl(45|id)|sm(al|ar|b3|it|t5)|so(ft|ny)|sp(01|h-|v-|v )|sy(01|mb)|t2(18|50)|t6(00|10|18)|ta(gt|lk)|tcl-|tdg-|tel(i|m)|tim-|t-mo|to(pl|sh)|ts(70|m-|m3|m5)|tx-9|up(.b|g1|si)|utst|v400|v750|veri|vi(rg|te)|vk(40|5[0-3]|-v)|vm40|voda|vulc|vx(52|53|60|61|70|80|81|83|85|98)|w3c(-| )|webc|whit|wi(g |nc|nw)|wmlb|wonu|x700|yas-|your|zeto|zte-/i',substr($useragent,0,4))){
                    $mob = 1;
                }
mobile detect, мобильные php, пхп мобильный129Код определения мобильных телефонов через PHP
97
<link rel="stylesheet" href="/animate.min.css" media="none" onload="if(media!='all')media='all'"><noscript><link rel="stylesheet" href="/animate.min.css"></noscript>
link, ускорение загрузки130Ускорение загрузки сайта уменьшением загрузки css
137
if ($('#phone_inp').val().length){
var ph = $('#phone_inp').val().replace(/[^0-9.]/g, "");
if(ph.length == 11) {
телефон, цифры, digits, phone number, js130Проверка телефона на число заполненных цифр
221
User-agent: *
Disallow: /

User-agent: Googlebot
User-agent: AdsBot-Google
Disallow: /
disallow all, robots130Запретить индексайцию всем роботам и рекламным ботам
258
SELECT
COUNT(SUM_PAID),
CASE
WHEN SUM_PAID > 10000 THEN 'more10'
WHEN SUM_PAID BETWEEN 5000 AND 10000 THEN '5to10'
ELSE 'less5'
END AS SaleLevel
FROM b_sale_order
GROUP BY SaleLevel;
sql, case140Запрос с условием SQL CASE
91
При ошибке 502 в импорте инфоблоков Битрикс
Заменить в файле
/bitrix/modules/iblock/admin/iblock_xml_import.php

if($obXMLFile->ReadXMLToDatabase($fp, $NS, $INTERVAL))
на
if($obXMLFile->ReadXMLToDatabase($fp, $NS, 10, $INTERVAL))
502, битрикс, инфоблок, ошибка импорта140Ошибка импорта инфоблока Битрикс 502
96
function resizeAndConvertImageWebP(
    $width,
    $height,
    $density,
    $originalFilepath,
    $resizedFilepath) {
  $newWidth = $width * $density;
  $newHeight = $height * $density;

  $image = new Imagick($originalFilepath);
  $origImageDimens = $image->getImageGeometry();
  $origImgWidth = $origImageDimens['width'];
  $origImgHeight = $origImageDimens['height'];

  if($newWidth == 0) {
    $ratioOfHeight = $newHeight / $origImgHeight;
    $newWidth = $origImgWidth * $ratioOfHeight;
  }

  if($newHeight == 0) {
    $ratioOfWidth = $newWidth / $origImgWidth;
    $newHeight = $origImgHeight * $ratioOfWidth;
  }

  $widthRatios = $origImgWidth / $newWidth;
  $heightRatios = $origImgHeight / $newHeight;

  if($widthRatios <= $heightRatios) {
    $cropWidth = $origImgWidth;
    $cropHeight = $newWidth * $widthRatios;
  } else {
    $cropWidth = $newHeight * $heightRatios;
    $cropHeight = $origImgHeight;
  }

  $cropX = ($origImgWidth - $cropWidth) / 2;
  $cropY = ($origImgHeight - $cropHeight) / 2;

  $image->stripImage();
  $image->cropImage($cropWidth, $cropHeight, $cropX, $cropY);
  $image->resizeImage($newWidth, $newHeight, imagick::FILTER_LANCZOS, 0.9);
  $image->setImageFormat('webp');
  $image->setImageAlphaChannel(imagick::ALPHACHANNEL_ACTIVATE);
  $image->setBackgroundColor(new ImagickPixel('transparent'));
  $image->writeImage($resizedFilepath);
}
webp,support,imagemagic140Конвертация картинки в webp в случае, если imageMagic поддрживает
144
$iterator = CIBlockElement::GetList(
   array(),
   array('IBLOCK_ID' => 2, '=AVAILABLE' => 'Y', '=TYPE' => 1, '>=PRICE' => 100, '<=PRICE' => 200, 'CURRENCY_FOR_SCALE' => 'USD'),
   false,
   false,
   array('ID', 'NAME', 'IBLOCK_ID')
);
итератор, iterator bitrix, iterator140Выборка элементов Битрикс из каталога или другого инфоблока. Итерация.
2
$text = iconv(mb_detect_encoding($det, mb_detect_order(), true), "UTF-8", $det);
encoding, кодировка, перекодировать, Конвертация150Конвертация из любой кодировки в utf-8
13
$was_id = intval($DB->LastID());
last id, последний id150Выбрать из базы последний добавленный ID при autoincrement
7
<input type="tel" name="phone" class="form-control form-block" placeholder="+7(999)999-99-99" pattern="[+]d{1}[(]d{3}[)]d{4}[-]d{2}[-]d{2}" value="">
html, phone, pattern, regex160Regex паттерн для проверки номера телефона. Пример html валидации
256
<IfModule mod_rewrite.c>
    RewriteEngine on
    RewriteBase /
    RewriteRule ^$ public/ [L]
    RewriteRule (.*) public/$1 [L]
</IfModule>
redirect, public190htaccess редирект из корня в папку public в корне
8
onclick="$('html, body').animate({scrollTop:6500}, 'slow');
jquery, scrollTop, скролл, плавный190Плавный скролл до точки, jQuery
11
$(document).ready(function(){
    /**function for slider change*/
    var sizeSl = $('.slq-wrap li.slide-q').length;
    var indexSl = 0;
    var fSlq = function(indexSl){
        $('.slq-wrap li.slide-q').removeClass('activ');
        $('.slq-wrap li.slide-q').eq(indexSl).addClass('activ');
        if ($('.slq-wrap li.slide-q').eq(indexSl).hasClass('video_sl')) {
            $('.paly-sl-q').show();
        } else {
            $('.paly-sl-q').hide();
        }
    }
    $('.left-c-sl').click(function(){
        clearTimeout(R);
        /*pause on left click*/
        var active_index = 0;
        window.Int;
        if (typeof(video)!='object'){
            var video = $('slide-q').length;
        }

        for(var i=0; i<video.length; i++){
            if($(".video_sl").eq(i).hasClass('activ')){
                active_index = i;

            }
        }
        var jVideo = document.getElementsByTagName('video');

        if(document.getElementsByTagName('video').length!=0){
            if (!jVideo[active_index].paused) {
                $('video').eq(active_index).trigger('pause');
                var button = $('.paly-sl-q.comm');
                button.removeClass('paused');
            }
        }

        if (indexSl == 0) {
            indexSl = sizeSl - 1;
        } else {
            indexSl = indexSl - 1;
        }

        fSlq(indexSl);
    });


    $('.right-c-sl').click(function(){
        /*pause on right click*/
        clearTimeout(R);
        var active_index = 0;
        window.Int;
        if (typeof(video)!='object'){
            var video = $('slide-q').length;
        }

        for(var i=0; i<video.length; i++){
            if($(".slide-q").eq(i).hasClass('activ')){
                active_index = i;
            }
        }
        var jVideo = document.getElementsByTagName('video');

        if(document.getElementsByTagName('video').length!=0){
            if (!jVideo[active_index].paused) {
                $('video').eq(active_index).trigger('pause');
                var button = $('.paly-sl-q.comm');
                button.removeClass('paused');
            }
        }
        // console.log(indexSl)
        if (indexSl == sizeSl - 1) {
            indexSl = 0;
        } else {
            indexSl = indexSl + 1;
        }
        fSlq(indexSl);
    });
});
видео, ютьюб, youtube, видео пауза190При переключении видео в Ютьюб в списке ставит прошлое на паузу
21
<img src="http://bit.ly/2heoc2H" alt="Simon's cat" width="200" height="200">

img {
  object-fit: cover; // magic goes here
}
картинка, по ширине, по высоте, подогнать картинку, вместо background-size, object-fit190Решение с изображением, чтобы отображалось без сжатия и не бэкграунд
1 2 3 4 5 6 7 8 9 10 11 12 13 14