Перейти к публикации
Поиск в
  • Дополнительно...
Искать результаты, содержащие...
Искать результаты в...

Einshtein

Пользователи
  
  • Публикаций

    2 695
  • Зарегистрирован

  • Посещение

Все публикации пользователя Einshtein

  1. можно, если готовы оплатить стоимость верстки в тройном размере Даже учитывая что стоимость верстки минимальная $50/страница, то адаптивную верстку можно смело умножать на 3 Так же не стоит обманываться что "там же только стили поправить, а верстать не нужно". Нужно будет прописать параметры для разных разрешений экранов, учесть построение блоков, а в отдельных случаях, как например с каруселью - возможно и программировать js придется . Ну это так, размышления в слух...имхо - если у Вас не уникальный дизайн - не вижу смысла заморачиваться с адаптивностью
  2. изучаем тему, на 20й странице подробная инструкция
  3. Вам выше дали ссылку на модуль, его можно выводить на странице статей
  4. причем тут денвер...все вышеприведенные действия нужно проводить на хостинге, с денвера только вконце скопировать xml файлы
  5. в index.php и admin/index.php ищем вот такие строки // VirtualQMOD require_once('./vqmod/vqmod.php'); $vqmod = new VQMod(); // VQMODDED Startup require_once($vqmod->modCheck(DIR_SYSTEM . 'startup.php')); // Application Classes require_once($vqmod->modCheck(DIR_SYSTEM . 'library/customer.php')); require_once($vqmod->modCheck(DIR_SYSTEM . 'library/affiliate.php')); require_once($vqmod->modCheck(DIR_SYSTEM . 'library/currency.php')); require_once($vqmod->modCheck(DIR_SYSTEM . 'library/tax.php')); require_once($vqmod->modCheck(DIR_SYSTEM . 'library/weight.php')); require_once($vqmod->modCheck(DIR_SYSTEM . 'library/length.php')); require_once($vqmod->modCheck(DIR_SYSTEM . 'library/cart.php')); и заменяем их на аналоги без $vqmod (подсмотреть можно в чистом дистрибутиве) Выглядят они как-то так: if (!defined('HTTP_SERVER')) { header('Location: install/index.php'); exit; } // Startup require_once(DIR_SYSTEM . 'startup.php'); // Application Classes require_once(DIR_SYSTEM . 'library/customer.php'); require_once(DIR_SYSTEM . 'library/currency.php'); require_once(DIR_SYSTEM . 'library/tax.php'); require_once(DIR_SYSTEM . 'library/weight.php'); require_once(DIR_SYSTEM . 'library/measurement.php'); require_once(DIR_SYSTEM . 'library/cart.php'); удаляете vqmod, заливаете новый. На файлы index.php и admin/index.php ставите права на запись (можно 777 чтобы не промахнуться, потом не забудьте поменять обратно) , так же ставите права на запись и чтение на папку vqmod/vqcache , или чтобы не заморачиваться ставите права 777 на папку vqmod и все содержимое, а после установки поубираете лишние права. После всех этих действий - запускаете установку site.ru/vqmod/install Если все сделали правильно - то все будет работать и на сайте ошибок никаких не будет. Далее из папки vqmod/xml на денвере, копируете все файлы кроме vqmod_opencart.xml (Важно!) и заливаете на хостинг
  6. Einshtein

    Странные заказы

    а вот за эту идею отправляю жирный ментальный плюс...
  7. поиск по форуму работает не очень, имхо, а в гугле при правильном запросе можно найти почти все... Относительно рейтинга - я не скажу ничего удивительного, если скажу что мне было плевать на рейтинг до тех пор пока я не начал фрилансить и не увидел что многие обращаются только потому, что у меня якобы высокий уровень доверия. Хотя как я заметил, обычно количество рейтинга к количеству постов 1/4 и уровень познаний на него практически не влияет, достаточно вставлять свои 5 копеек в каждой новой теме. Так что да - рейтинг ничего не означает, но многие клиенты именно на него в первую очередь обращают внимание...это некая гарантия что ты будешь в первых рядах списка тех, к кому обратиться клиент при поиске исполнителя на форуме Но что больше всего меня прикалывало в рейтинге - это "квесты"....аля - "надо бы сделать ровно 1111 сообщений и 333 лайка" ...я наверное мудак, но это неплохо развлекало :) и в какой-то мере стимулировало отвечать на однообразные темки на форуме или пытаться разрулить чью-то ситуацию
  8. Einshtein

    Странные заказы

    скорее всего
  9. Einshtein

    OpenCart 2.0 Alpha Available Now!

    за то работа за верстку раза в 2-3 поднимется :)
  10. В стандартном шаблоне, на страницах типа поиска и категорий мы имеем всего 2 схемы вывода товара - Список/Сетка А что если необходимо добавить 3й? В сети информацию я не нашел, поэтому выкладываю свой способ Сразу отступлю, что языковые переменные мне было лень прописывать, поэтому кому нужно - сами разберутся. Открываем файл product/category.tpl , находим эту часть кода: <div class="display"><b><?php echo $text_display; ?></b> <?php echo $text_list; ?> <b>/</b> <a onclick="display('grid');"><?php echo $text_grid; ?></a></div> и заменяем на <div class="display"><b><?php echo $text_display; ?></b> <?php echo $text_list; ?> <b>/</b> <a onclick="display('grid');"><?php echo $text_grid; ?></a> <b>/</b> <a onclick="display('list1');">Новый</a></div> То есть добавляем кнопку для новой схемы <a onclick="display('list1');">Новый</a> , где list1 в моем случае - класс для новой схемы. Далее, в самом низу файла находим внушительный скрипт, отвечающий за переключение между схемами и выводом элементов для этих схем, выглядит он так: <script type="text/javascript"><!-- function display(view) { if (view == 'list') { $('.product-grid').attr('class', 'product-list'); $('.product-list > div').each(function(index, element) { html = '<div class="right">'; html += ' <div class="cart">' + $(element).find('.cart').html() + '</div>'; html += ' <div class="wishlist">' + $(element).find('.wishlist').html() + '</div>'; html += ' <div class="compare">' + $(element).find('.compare').html() + '</div>'; html += '</div>'; html += '<div class="left">'; var image = $(element).find('.image').html(); if (image != null) { html += '<div class="image">' + image + '</div>'; } var price = $(element).find('.price').html(); if (price != null) { html += '<div class="price">' + price + '</div>'; } html += ' <div class="name">' + $(element).find('.name').html() + '</div>'; html += ' <div class="description">' + $(element).find('.description').html() + '</div>'; var rating = $(element).find('.rating').html(); if (rating != null) { html += '<div class="rating">' + rating + '</div>'; } html += '</div>'; $(element).html(html); }); $('.display').html('<b><?php echo $text_display; ?></b> <?php echo $text_list; ?> <b>/</b> <a onclick="display(\'grid\');"><?php echo $text_grid; ?></a>'); $.totalStorage('display', 'list'); } else { $('.product-list').attr('class', 'product-grid'); $('.product-grid > div').each(function(index, element) { html = ''; var image = $(element).find('.image').html(); if (image != null) { html += '<div class="image">' + image + '</div>'; } html += '<div class="name">' + $(element).find('.name').html() + '</div>'; html += '<div class="description">' + $(element).find('.description').html() + '</div>'; var price = $(element).find('.price').html(); if (price != null) { html += '<div class="price">' + price + '</div>'; } var rating = $(element).find('.rating').html(); if (rating != null) { html += '<div class="rating">' + rating + '</div>'; } html += '<div class="cart">' + $(element).find('.cart').html() + '</div>'; html += '<div class="wishlist">' + $(element).find('.wishlist').html() + '</div>'; html += '<div class="compare">' + $(element).find('.compare').html() + '</div>'; $(element).html(html); }); $('.display').html('<b><?php echo $text_display; ?></b> <a onclick="display(\'list\');"><?php echo $text_list; ?></a> <b>/</b> <?php echo $text_grid; ?>'); $.totalStorage('display', 'grid'); } } view = $.totalStorage('display'); if (view) { display(view); } else { display('list'); } //--></script> Убираем у старого скрипта условие else, заменяя на if и по этой же схеме добавляем новое условие для новой схемы (за основу взял схему для списка) Проще говоря, заменяем вышеприведенный кусок кода, на этот: <script type="text/javascript"><!-- function display(view) { if (view == 'list') { $('.product-list1').attr('class', 'product-list'); $('.product-grid').attr('class', 'product-list'); $('.product-list > div').each(function(index, element) { html = '<div class="right">'; html += ' <div class="cart">' + $(element).find('.cart').html() + '</div>'; html += ' <div class="wishlist">' + $(element).find('.wishlist').html() + '</div>'; html += ' <div class="compare">' + $(element).find('.compare').html() + '</div>'; html += '</div>'; html += '<div class="left">'; var image = $(element).find('.image').html(); if (image != null) { html += '<div class="image">' + image + '</div>'; } var price = $(element).find('.price').html(); if (price != null) { html += '<div class="price">' + price + '</div>'; } html += ' <div class="name">' + $(element).find('.name').html() + '</div>'; html += ' <div class="description">' + $(element).find('.description').html() + '</div>'; var rating = $(element).find('.rating').html(); if (rating != null) { html += '<div class="rating">' + rating + '</div>'; } html += '</div>'; $(element).html(html); }); $('.display').html('<b><?php echo $text_display; ?></b> <?php echo $text_list; ?> <b>/</b> <a onclick="display(\'grid\');"><?php echo $text_grid; ?></a> <b>/</b> <a onclick="display(\'list1\');">Новый</a>'); $.totalStorage('display', 'list'); } if (view == 'grid'){ $('.product-list').attr('class', 'product-grid'); $('.product-list1').attr('class', 'product-grid'); $('.product-grid > div').each(function(index, element) { html = ''; var image = $(element).find('.image').html(); if (image != null) { html += '<div class="image">' + image + '</div>'; } html += '<div class="name">' + $(element).find('.name').html() + '</div>'; html += '<div class="description">' + $(element).find('.description').html() + '</div>'; var price = $(element).find('.price').html(); if (price != null) { html += '<div class="price">' + price + '</div>'; } var rating = $(element).find('.rating').html(); if (rating != null) { html += '<div class="rating">' + rating + '</div>'; } html += '<div class="cart">' + $(element).find('.cart').html() + '</div>'; html += '<div class="wishlist">' + $(element).find('.wishlist').html() + '</div>'; html += '<div class="compare">' + $(element).find('.compare').html() + '</div>'; $(element).html(html); }); $('.display').html('<b><?php echo $text_display; ?></b> <a onclick="display(\'list\');"><?php echo $text_list; ?></a> <b>/</b> <?php echo $text_grid; ?> <b>/</b> <a onclick="display(\'list1\');">Новый</a>'); $.totalStorage('display', 'grid'); } if (view == 'list1') { $('.product-grid').attr('class', 'product-list1'); $('.product-list').attr('class', 'product-list1'); $('.product-list1 > div').each(function(index, element) { html = '<div class="right">'; html += ' <div class="cart">' + $(element).find('.cart').html() + '</div>'; html += ' <div class="wishlist">' + $(element).find('.wishlist').html() + '</div>'; html += ' <div class="compare">' + $(element).find('.compare').html() + '</div>'; html += '</div>'; html += '<div class="left">'; var image = $(element).find('.image').html(); if (image != null) { html += '<div class="image">' + image + '</div>'; } var price = $(element).find('.price').html(); if (price != null) { html += '<div class="price">' + price + '</div>'; } html += ' <div class="name">' + $(element).find('.name').html() + '</div>'; html += ' <div class="description">' + $(element).find('.description').html() + '</div>'; var rating = $(element).find('.rating').html(); if (rating != null) { html += '<div class="rating">' + rating + '</div>'; } html += '</div>'; $(element).html(html); }); $('.display').html('<b><?php echo $text_display; ?></b> <a onclick="display(\'list\');"><?php echo $text_list; ?></a> <b>/</b> <a onclick="display(\'grid\');"><?php echo $text_grid; ?></a> <b>/</b> Новый'); $.totalStorage('display', 'list1'); } } view = $.totalStorage('display'); if (view) { display(view); } else { display('list'); } //--></script> Будут вопросы по скрипту - задавайте, расписывать все подробно - скучно и непонятно Дальше дело за малым - в условии if (view == 'list1') { добавляем/убираем ненужные элементы (типа блока с описанием, рейтинг и т.д.) и добавляем в файл stylesheet.css класс product-list1 со своими стилями (за основу можно взять product-list и подправить стили под себя).
  11. Вы пробовали проверять в сервисе pagespeed мобильную версию сайта (адпативную бустрап)? Там такой бред гугл рекомендует, что хочется выстрелить в того, кто это писал. Например выезжающее из-за границы экрана меню - учитывается как не валидная верстка. Такое ощущение что сервис был написан и не апдейтился где-то с начала 2000х когда о попапах и каруселях никто не слышал..
  12. заходил глянуть на новинку, просто чтобы быть в курсе событий и завис... Отличный шаблон. Даже понимая что демо - захотелось купить демо товар :) Сразу бросилось в глаза пару клевых эфектов, вроде баян, но стилизованы так, что сайт сразу становится живым. Респект в общем, так держать!
  13. со старого редиректит на новый, просто поисковик еще не переиндексировал его
  14. проще будет модуль адаптировать (если это вообще необходимо)
  15. Einshtein

    сайт- визитка, возможно ли?

    если речь идет об обычной визитке с информацией о компании и максимум что обновляется - это расценки и акции, то есть смысл вложить бабки в нормальный макет и верстку и сделать это все на html Я несколько лет назад сделал такую штуку для своих друзей, сайт в топе по всем нужным запросам и никако-го дискомфорта нет раз в 3 месяца зайти и отредактирвать пару символов с акцией или контактами и раз в год добавить новый раздел. И обошлось это не в 500 баксов, а в 500грн
  16. Einshtein

    Роль разработчика в проэкте...

    я часто повторяю заказчикам всем знакомую фразу "одной попой на всех стульях не усесться", соответственно у меня есть перечень услуг которые я выполняю, а за другие я просто не берусь в связи с тем, что это по моим понятиям либо не рентабельно, либо не увлекательно. И как правильно сказал Вася - предлагаю обратиться либо на форум, либо к специалистам с которыми договорился о том что буду отправлять к ним клиентов которые просят сделать то или иное. Это же касается и работы с различными СМS...я знаю ряд различных движков, но выбрал один для работы с ним, чтобы не распыляться. А если мы говорим о разработчике как едином лице который поднимает проект с 0 - то тут все зависит от личных договоренностей с заказчиком. Есть заказы в которых мое участие ограничивается установкой модулей и шаблона, а есть проэкты в которых заказчик ставит условие что если мы начинаем работу, то он категорически отказывается обращаться к другим специалистам и ему важно чтобы проэкт вел только один человек. В таких случаях приходится принимать ответственное решение - стоит ли этот проект таких рисков, так как для меня крайне важно чтобы работа была интересной, а совершенно не хотелось бы рисковать репутацией и личным моральным здоровьем взявшись за работу - которая не приносит удовольствие...в чем собсно и вся прелесть фриланса.
  17. Террасная доска в коде мы видим следующее <div class="title">Террасная доска</div> <h1 class="title2"><span>Террасная доска</span></h1> но что самое любопытное - h1 в видимой части Вы не найдете, там выводится вот этот кусок <div class="title">Террасная доска</div> А H1 который сразу под ним - непонятно где...по-моему под фильтром и его не видно Это что касается h1 А вот то что нет описаний у товаров + почти идентичные названия товаров = вероятный корень вашей проблемы (как и сказал Snastik)
  18. Сайт сами клепали? Если так, то не удивительно, ибо такой кошмар может приснится только в страшном сне...Я не о внешнем виде, а о начинке... за 2 минуты исследования вот что я увидел: Код написан абы как, с мета-тегами полная белеберда, особенно с h1 - он вроде как есть, но его вроде как и нет. Но последнее что меня заставило упать патстол - это скачанный файл с какой-то недоконфигурацией index.php по адресу site.ru/sitemap.xml , благо в роботсе прописан адекватный адрес , хотя при беглом осмотреть карты - тоже было бы неплохо её допилить. Ну о хлебных крошках, всяких ссылках, сниппетах думаю можно не говорить Я еще описание товаров на уникальность не проверял и вхождение по словосочетаниям в тайтлах А вообще - 70% успеха индексации - уникальные тексты
  19. Einshtein

    сайт- визитка, возможно ли?

    это все равно что купить айфон бабушке
  20. Einshtein

    сайт- визитка, возможно ли?

    возможно, но не целесообразно (если конечно у Вас не предполагается онлайн покупка/заказ товара) Используйте Wordpress
  21. не обратил внимание что в index.php еще и знак вопроса стоит. Не понял откуда у Вас вылазит этот дубль? при переходе по какой ссылке? в ОС не обрабатываются редиректом урлы со знаком вопроса. Это вроде как служебная ссылка, вроде фильтра. Если у Вас нет перехода на неё по внутренним ссылкам - рекомендую не заморачиваться и просто добавить в исключения в Robots.txt

×
×
  • Создать...

Важная информация

На нашем сайте используются файлы cookie и происходит обработка некоторых персональных данных пользователей, чтобы улучшить пользовательский интерфейс. Чтобы узнать для чего и какие персональные данные мы обрабатываем перейдите по ссылке. Если Вы нажмете «Я даю согласие», это означает, что Вы понимаете и принимаете все условия, указанные в этом Уведомлении о Конфиденциальности.