Ответы пользователя по тегу HTML
  • Font Awesome. Почему осталась старая иконка или почему не очищается кэш шрифтов?

    IvanIlyasov
    @IvanIlyasov Автор вопроса
    Познаю мир
    На самом деле получилось так, что два раза подключался шрифт и во втором случае со старой версией.
    Ответ написан
    Комментировать
  • Как обойти проблему при переносе сайта с хоста на локалку?

    IvanIlyasov
    @IvanIlyasov
    Познаю мир
    Чтобы перенести Prestashop-сайт с хостинга на локалку. Надо сделать следующее:
    1) Очищаем кэш.
    Заходим в /prestashop/cache/smarty/cache и удаляем всё, кроме index.php и last_template_flush.
    Заходим в /prestashop/cache/smarty/cache/compile и удаляем всё, кроме index.php и last_flush.
    Заходим в /prestashop/themes/ваша_тема/cache и удаляем всё, кроме index.php.
    2) Меняем домен в БД.
    Меняем либо через текстовый редактор, либо заранее в phpMyAdmin.
    Таблица ps_shop_url колонки domain и domain_ssl. Меняете домен на localhost (без http:// и других лишних символов.)
    3) Меняем пути к БД в файле конфигурации.
    Открываем в текстовом редакторе /prestashop/config/settings.inc.php
    и меняем на следующее:
    define('_DB_SERVER_', 'localhost');
    define('_DB_NAME_', 'prestashop'); //название БД на локалке
    define('_DB_USER_', 'root'); //ваш логин к БД а локалке
    define('_DB_PASSWD_', '123'); //пароль к БД на локалке

    Если имя сервера отличается от localhost, то его нужно поменять на это значение.
    4) Загружаем на локальный сервер БД и и файлы сайта.
    5) Заходим в админку (в данном случае localhost/admin3200), вводим логин и пароль админа.
    6) Идем в Расширенные параметры >> Производительность, передергиваем Оптимизация Apache (выкл >> Сохранить, вкл >> Сохранить), тем самым обновляем .htaccess.
    Всё.

    Чтобы перенести обратно на хостинг, надо проделать всё тоже самое, только в конце еще один пункт:
    7) Идем в Настройки >> SEO и URL >> внизу страницы кнопка "Генерировать Robots.txt"
    Ответ написан
    Комментировать
  • Как правильно сделать редирект в Prestashop?

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

    Если всё-таки нужно сделать со слешем какую-то определенную статическую страницу, да так, чтобы не было дублей, то добавьте в .htaccess строку 301-ого (полного) редиректа для этой страницы:
    Redirect 301 /module /module/
    и чтобы эта запись не сбивалась при обновлении кеша, в файле ../ваш_сайт/classes/Tools.php
    найдите запись: fwrite($write_fd, "</IfModule>\n\n");(или подобную, примерно на 2500 строке).
    Ниже нее вставьте:
    fwrite($write_fd, "Redirect 301 /module /module/\n");


    Update:
    Придумал более глобальный и правильный вариант через mod_rewrite:
    в файле ../ваш_сайт/classes/Tools.php
    находим запись:
    fwrite($write_fd, 'RewriteRule ^api/(.*)$ %{ENV:REWRITEBASE}webservice/dispatcher.php?url=$1 [QSA,L]'."\n\n");

    после нее вставляем:
    fwrite($write_fd, "RewriteCond %{REQUEST_URI} ^/module$\n");
    fwrite($write_fd, "RewriteRule .+ ".(Configuration::get('PS_SSL_ENABLED') ? 'https://' : 'http://')."".$domain."/module/ [R=301,L]\n\n");

    Обновляем .htaccess передергиванием переключателя "Оптимизация Apache" в "Расширенные настройки >> Производительность"
    Ответ написан
    Комментировать
  • Как убрать из title название магазина?

    IvanIlyasov
    @IvanIlyasov
    Познаю мир
    classes/Meta.php

    строку:
    $ret['meta_title'] = (isset($metas['title']) && $metas['title']) ? $metas['title'].' - '.Configuration::get('PS_SHOP_NAME') : Configuration::get('PS_SHOP_NAME');

    заменить на:
    $ret['meta_title'] = (isset($metas['title']) && $metas['title']) ? $metas['title'] : '';

    Мета-тег generator обычно показывает с помощью чего был сделан сайт. Вот тут можно почитать подробнее.
    Удаляется в header.tpl в папке вашей темы, как уже ранее писал archelon
    Ответ написан
    1 комментарий
  • Как сделать адаптивный бэкграунд?

    IvanIlyasov
    @IvanIlyasov
    Познаю мир
    У меня:
    1. Стоит мететег в html-странице:
    <meta name="viewport" content="width=device-width, initial-scale=1" />

    2. В css стилях body прописано:
    body {
        background-image: url(images/background-photo.jpg);
        background-position: center;
        background-repeat: no-repeat;
        background-attachment: fixed;
        background-size: cover;
    }

    Это для больших экранов.

    Если экран шириной меньше 768px, то грузится картинка поменьше (чтобы меньше весило, скорость загрузки сайта на моб устройствах на 90% выше):
    @media only screen and (max-width: 767px) {
      body {
        background-image: url(images/background-photo-mobile-devices.jpg);
      }
    	}
    Ответ написан
    Комментировать