• Фильтр цены для WooCommerce?

    Zakonoposlushniy
    @Zakonoposlushniy Автор вопроса
    Ребят, спасибо за ответы.
    Кто ищет, тот всегда найдёт )
    Нашел бесплатный плагин, удовлетворяющий мои потребности.
    Вот он, если кому интересно : https://wordpress.org/plugins/themify-wc-product-f...
    Ответ написан
    Комментировать
  • Как добавить свои стили в админку Wordpress?

    Zakonoposlushniy
    @Zakonoposlushniy Автор вопроса
    Всем спасибо за ответы.
    Нашел простой бесплатный плагин, позволяющий реализовать поставленную задачу.
    Вот он : https://ru.wordpress.org/plugins/add-admin-css/
    Ответ написан
  • Какой путь развития в веб-дизайне лучше?

    Zakonoposlushniy
    @Zakonoposlushniy
    Как говорил Пабло Пикассо - "Un artista copia, un gran artista roba ".
    Хорошие художники копируют, великие художники воруют.
    Ответ написан
    Комментировать
  • Как сделать автообновление таймера при обновлении страницы?

    Zakonoposlushniy
    @Zakonoposlushniy Автор вопроса
    Решил проблему добавлением такого скрипта
    (function($) {
      var units = {
          en: ['Days', 'Hours', 'Minutes', 'Seconds'],
          ru: ['дней', 'часов', 'минут', 'секунд'],
          ua: ['днів', 'годин', 'хвилин', 'секунд'],
          kz: ['күн', 'сағат', 'минут', 'секунд'],
          sec: [86400, 3600, 60, 1]
        },
        defaults = {
          etType: 1,
          etDate: '0',
          etTitleText: '',
          etTitleSize: 14,
          etShowSign: 1,
          etSep: ':',
          etFontFamily: 'Arial',
          etTextColor: 'black',
          etPaddingTB: 0,
          etPaddingLR: 0,
          etBackground: 'transparent',
          etBorderSize: 0,
          etBorderRadius: 0,
          etBorderColor: 'transparent',
          etShadow: '',
          etLastUnit: 4,
          etNumberFontFamily: 'Arial',
          etNumberSize: 32,
          etNumberColor: 'black',
          etNumberPaddingTB: 0,
          etNumberPaddingLR: 0,
          etNumberBackground: 'transparent',
          etNumberBorderSize: 0,
          etNumberBorderRadius: 0,
          etNumberBorderColor: 'transparent',
          etNumberShadow: ''
        };
    
      $.fn.eTimer = function(options) {
        var config = $.extend({}, defaults, options);
    
        return this.each(function() {
          var element = $(this),
            date = config.etDate,
            dayNum = 2;
    
          element.date = function() {
            var now = new Date();
            if (config.etType == 1) {
              date = new Date(now.getFullYear(), now.getMonth(), now.getDate() + 1);
            } else if (config.etType == 2) {
              var day = now.getDay();
              if (day == 0) day = 7;
              date = new Date(now.getFullYear(), now.getMonth(), now.getDate() + 8 - day);
            } else if (config.etType == 3) {
              date = new Date(now.getFullYear(), now.getMonth() + 1, 1);
            } else {
              date = date.split('.');
              date = new Date(date[2], date[1] - 1, date[0], date[3], date[4]);
              if (Math.floor((date - now) / units.sec[0] / 1000) >= 100) dayNum = 3;
            }
          };
    
          element.layout = function() {
            var unit,
              elClass = element.attr('class').split(' ')[0];
            element.html('').addClass('eTimer').append('<div class="etTitle">' + config.etTitleText + '</div>');
            $.each(units.en, function(i) {
              if (i < config.etLastUnit) {
                unit = $('<div class="etUnit et' + this + '"></div>').appendTo(element).append('<div class="etNumber">0</div>').append('<div class="etNumber">0</div>').after('<div class="etSep">' + config.etSep + '</div>');
                if (i == 0 && dayNum == 3) unit.append('<div class="etNumber">0</div>');
                if (config.etShowSign == 1) unit.append('<div class="etSign">' + units.ru[i] + '</div>');
                if (config.etShowSign == 2) unit.append('<div class="etSign">' + units.en[i].toLowerCase() + '</div>');
                if (config.etShowSign == 3) unit.append('<div class="etSign">' + units.ua[i] + '</div>');
                if (config.etShowSign == 4) unit.append('<div class="etSign">' + units.kz[i] + '</div>');
              }
            });
            element.append('<style type="text/css">.' + elClass + ' {display: inline-block; line-height: normal; font-family: ' + config.etFontFamily + '; color: ' + config.etTextColor + '; padding: ' + config.etPaddingTB + 'px ' + config.etPaddingLR + 'px; background: ' + config.etBackground + '; border: ' + config.etBorderSize + 'px solid ' + config.etBorderColor + '; -webkit-border-radius: ' + config.etBorderRadius + 'px; -moz-border-radius: ' + config.etBorderRadius + 'px; border-radius: ' + config.etBorderRadius + 'px; -webkit-box-shadow: ' + config.etShadow + '; -moz-box-shadow: ' + config.etShadow + '; box-shadow: ' + config.etShadow + ';} .' + elClass + ' .etTitle {margin-bottom: 10px; font-size: ' + config.etTitleSize + 'px;} .' + elClass + ' .etUnit {display: inline-block;} .' + elClass + ' .etUnit .etNumber {display: inline-block; margin: 1px; text-align: center; font-family: ' + config.etNumberFontFamily + '; font-size: ' + config.etNumberSize + 'px; color: ' + config.etNumberColor + '; padding: ' + config.etNumberPaddingTB + 'px ' + config.etNumberPaddingLR + 'px; background: ' + config.etNumberBackground + '; border: ' + config.etNumberBorderSize + 'px solid ' + config.etNumberBorderColor + '; -webkit-border-radius: ' + config.etNumberBorderRadius + 'px; -moz-border-radius: ' + config.etNumberBorderRadius + 'px; border-radius: ' + config.etNumberBorderRadius + 'px; -webkit-box-shadow: ' + config.etNumberShadow + '; -moz-box-shadow: ' + config.etNumberShadow + '; box-shadow: ' + config.etNumberShadow + ';} .' + elClass + ' .etUnit .etSign {text-align: center; font-size: ' + (+config.etNumberSize / 2.5) + 'px;} .' + elClass + ' .etSep {display: inline-block; vertical-align: top; font-size: ' + config.etNumberSize + 'px; padding: ' + (+config.etNumberPaddingTB + +config.etNumberBorderSize) + 'px 5px;} .' + elClass + ' .etSep:last-of-type {display: none;}</style>').append('<style type="text/css">.' + elClass + ' .etUnit .etNumber {width: ' + $('.etNumber:visible').eq(0).css('width') + ';}</style>');
          };
    
          element.tick = function() {
            var timeLeft = Math.floor((date - new Date()) / 1000),
              unit;
            if (timeLeft < 0) clearInterval(element.data('interval'));
            else {
              $.each(units.en, function(i) {
                if (i < config.etLastUnit) {
                  unit = Math.floor(timeLeft / units.sec[i]);
                  timeLeft -= unit * units.sec[i];
                  if (i == 0 && dayNum == 3) {
                    element.find('.et' + this).find('.etNumber').eq(0).text(Math.floor(unit / 100) % 10);
                    element.find('.et' + this).find('.etNumber').eq(1).text(Math.floor(unit / 10) % 10);
                    element.find('.et' + this).find('.etNumber').eq(2).text(unit % 10);
                    if ((Math.floor(unit / 100) % 10) == 0) {
                      dayNum = 2;
                      element.find('.et' + this).find('.etNumber').eq(0).remove();
                    }
                  } else {
                    element.find('.et' + this).find('.etNumber').eq(0).text(Math.floor(unit / 10) % 10);
                    element.find('.et' + this).find('.etNumber').eq(1).text(unit % 10);
                  }
                }
              });
            }
          };
    
          clearInterval(element.data('interval'));
          element.date();
          element.layout();
          element.tick();
          element.data('interval', setInterval(function() {
            element.tick()
          }, 1000));
        });
      };
    })(jQuery);
    Ответ написан
    Комментировать
  • Как отключить отображение меню в Opencart?

    Zakonoposlushniy
    @Zakonoposlushniy Автор вопроса
    Человек на форуме подсказал решение, которое работает.

    В стили ( в конец ) нужно добавить вот это :

    @media (min-width: 768px){
    #menu {
        display:none;
      }
    }


    Возможно кому-то пригодится )

    P.S. Версия Opencart - тройка.
    Ответ написан
    Комментировать
  • Какие программы Adobe используют дизайнеры перед публикацией своих работ?

    Zakonoposlushniy
    @Zakonoposlushniy
    В данной работе использовались три продукта Адобе :
    - Adobe Illustrator ( для логотипов )
    - Adobe After Effects ( для создания анимации )
    - Adobe Photoshop ( для натяжки дизайна на мокапы, и создания общего вида работы )

    Мокапы можно сделать как и в фотошопе ( не сложные ), так и например с использованием 3D программ.

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

    Анимацию можно так же, при желании, сделать и в Photoshop и в Illustrator, но в After Effects - удобнее.
    Ответ написан
    Комментировать
  • Как предотвратить спам через форму обратной связи?

    Zakonoposlushniy
    @Zakonoposlushniy Автор вопроса
    Решил проблему таким способом :
    В форму добавил поле
    <input id="check" name="check" type="hidden" value="" />

    Потом в кнопку, через которую идёт отправка, добавил
    onclick="document.getElementById('check').value = 'secretcode';"

    Вышло что-то вроде этого
    <button onclick="document.getElementById('check').value = 'secretcode';" type="submit">Отправить</button>

    И в php-обработчике, добавил это
    if ($_POST['check'] != 'secretcode') exit('Spam decected');


    Возможно кому-то поможет.
    Удачи!
    Ответ написан
    9 комментариев
  • Как протестировать страницу на разрешениях 1366-1920?

    Zakonoposlushniy
    @Zakonoposlushniy
    Вот Screenfly
    Вводишь сайт и нажимаешь на кнопку Custom Screen Size
    Ответ написан
    Комментировать
  • Превышено время ожидания открытия сайта. Что делать?

    Zakonoposlushniy
    @Zakonoposlushniy Автор вопроса
    Решил почистить кеш и на вирусы проверить и обнаружил такую картину.
    17391c928edc4159920e33c885d99690.jpg
    В общем, всё удалил. Теперь всё работает нормально.
    Ответ написан
  • Размещение текста по центру экрана

    Zakonoposlushniy
    @Zakonoposlushniy
    Спасибо за варианты.
    Ответ написан
    Комментировать
  • Как вносить изменения или совсем убирать элементы в темах worpdress?

    Zakonoposlushniy
    @Zakonoposlushniy
    - Переходите на свой сайт ;
    - Нажимаете в верхней части экрана, кнопку " Настроить " ;
    - Далее нажимаете " Меню / Добавить меню " ;
    - Нажимаете "Добавить элементы". Здесь выбираете например нужные вам страницы ( которые уже заранее созданы ).
    - Где написано " Области для меню " выбираете " - Primary Menu
    - Нажимаете " Сохранить и опубликовать "
    Ответ написан
    Комментировать
  • Как расширить область для контента в WordPress?

    Zakonoposlushniy
    @Zakonoposlushniy Автор вопроса
    Проблему решил созданием отдельного шаблона для страницы, с новыми стилями. В общем, пока вроде нормально и косяков не замечаю )
    Ответ написан
    Комментировать
  • Не работает форма обратной связи. Что делать?

    Zakonoposlushniy
    @Zakonoposlushniy Автор вопроса
    Вот 3 файла формы :
    - Form-u388 - это походу основной
    - Form_throttle - я не знаю за что он отвечает
    - Form_check -я не знаю за что он отвечает

    Вот файл "Form - u388" :
    <?php 
    /* 	
    If you see this text in your browser, PHP is not configured correctly on this webhost. 
    Contact your hosting provider regarding PHP configuration for your site.
    */
    
    require_once('form_throttle.php');
    
    if ($_SERVER['REQUEST_METHOD'] == 'POST') 
    {
    	if (formthrottle_too_many_submissions($_SERVER["REMOTE_ADDR"]))
    	{
    		echo '{"MusePHPFormResponse": { "success": false,"error": "Too many recent submissions from this IP"}}';
    	} 
    	else 
    	{
    		emailFormSubmission();
    	}
    } 
    
    function emailFormSubmission()
    {
    	$to = 'caruza@catridge.xyz';
    	$subject = 'Отправка Форма Домашняя страница';
    	
    	$message = '<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/><title>' . htmlentities($subject,ENT_COMPAT,'UTF-8') . '</title></head>';
    	$message .= '<body style="background-color: #ffffff; color: #000000; font-style: normal; font-variant: normal; font-weight: normal; font-size: 12px; line-height: 18px; font-family: helvetica, arial, verdana, sans-serif;">';
    	$message .= '<h2 style="background-color: #eeeeee;">Отправка новой формы</h2><table cellspacing="0" cellpadding="0" width="100%" style="background-color: #ffffff;">'; 
    	$message .= '<tr><td valign="top" style="background-color: #ffffff;"><b>Имя:</b></td><td>' . htmlentities($_REQUEST["custom_U412"],ENT_COMPAT,'UTF-8') . '</td></tr>';
    	$message .= '<tr><td valign="top" style="background-color: #ffffff;"><b>Электронная почта:</b></td><td>' . htmlentities($_REQUEST["Email"],ENT_COMPAT,'UTF-8') . '</td></tr>';
    	$message .= '<tr><td valign="top" style="background-color: #ffffff;"><b>Сообщение:</b></td><td>' . htmlentities($_REQUEST["custom_U417"],ENT_COMPAT,'UTF-8') . '</td></tr>';
    
    	$message .= '</table><br/><br/>';
    	$message .= '<div style="background-color: #eeeeee; font-size: 10px; line-height: 11px;">Формы, отправленные с веб-сайта: ' . htmlentities($_SERVER["SERVER_NAME"],ENT_COMPAT,'UTF-8') . '</div>';
    	$message .= '<div style="background-color: #eeeeee; font-size: 10px; line-height: 11px;">IP-адрес посетителя: ' . htmlentities($_SERVER["REMOTE_ADDR"],ENT_COMPAT,'UTF-8') . '</div>';
    	$message .= '</body></html>';
    	$message = cleanupMessage($message);
    	
    	$formEmail = cleanupEmail($_REQUEST['Email']);
    	$headers = 'From:  caruza@catridge.xyz' . "\r\n" . 'Reply-To: ' . $formEmail .  "\r\n" .'X-Mailer: Adobe Muse 7.2.232 with PHP/' . phpversion() . "\r\n" . 'Content-type: text/html; charset=utf-8' . "\r\n";
    	
    	$sent = @mail($to, $subject, $message, $headers);
    	
    	if($sent)
    	{
    		echo '{"FormResponse": { "success": true}}';
    
    	}
    	else
    	{
    		echo '{"MusePHPFormResponse": { "success": false,"error": "Failed to send email"}}';
    	}
    }
    
    function cleanupEmail($email)
    {
    	$email = htmlentities($email,ENT_COMPAT,'UTF-8');
    	$email = preg_replace('=((<CR>|<LF>|0x0A/%0A|0x0D/%0D|\\n|\\r)\S).*=i', null, $email);
    	return $email;
    }
    
    function cleanupMessage($message)
    {
    	$message = wordwrap($message, 70, "\r\n");
    	return $message;
    }
    ?>
    Ответ написан
  • Какие вы знаете клёвые кириллические шрифты для логотипов?

    Zakonoposlushniy
    @Zakonoposlushniy
    B52
    Ответ написан
    Комментировать