Перейти к содержимому


Фото
- - - - -

Мобильная версия


  • Чтобы отвечать, сперва войдите на форум
24 ответов в теме

#1 Nikolas

Nikolas
  • Пользователь
  • 77 сообщений
  • Дизайн, Программирование, Верстка, Заказчик
  • Версия CMS:1.x, 2.x
  • Откуда:Украина

Опубликовано 19.10.2014 - 20:23

Подскажите, как подключить мобильную версию на поддомен.
Чтоб на поддомене не разворачить еще один магазин

#2 mart

mart

    Дружу с Симплой

  • Фрилансер
  • 1 331 сообщений
  • Программирование
  • Версия CMS:1.x, 2.x
  • Откуда:Venlo

Опубликовано 19.10.2014 - 21:26

Не знаю зачем Вам поддомен - возможно достаточно будет http://simplashop.co...a-versiya-sajta

Касателньо поддомена - используете общую базу и пути к файлам в файле конфига верно пропишите.



#3 pringlesday

pringlesday
  • Пользователь
  • 15 сообщений
  • Откуда:Уфа

Опубликовано 23.10.2014 - 15:07

Подскажите, как подключить мобильную версию на поддомен.
Чтоб на поддомене не разворачить еще один магазин

Первый способ:

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

Плюсы и минусы

+ простая реализация, не нужно ничего думать, просто копируешь да вставляешь

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

- захламление хостинга

- при обновлении движка нужно обновлять его в обеих папках

- лишняя путаница с паролями, если не делать прямую привязку админки мобильной версии к основной версии

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

 

Второй способ:

Сегодня мобильные устройства вполне себе годно отображают сайты, потому (imho, конечно) лучше просто сделать адаптивный дизайн. То бишь в css прописать дополнительные условия отображения тех или иных элементов в зависимости от ширины экрана устройства, например, либо вообще подключать разные файлы style.css для разных устройств. На мой взгляд, лучше один раз сделать хорошую адаптивную вёрстку и не задумываться ни о каких поддоменах.



#4 Ogybil

Ogybil
  • Пользователь
  • 193 сообщений

Опубликовано 24.10.2014 - 08:10

Адаптивный дизайн однозначно!



#5 Nikolas

Nikolas
  • Пользователь
  • 77 сообщений
  • Дизайн, Программирование, Верстка, Заказчик
  • Версия CMS:1.x, 2.x
  • Откуда:Украина

Опубликовано 04.01.2016 - 14:13

Не знаю зачем Вам поддомен - возможно достаточно будет http://simplashop.co...a-versiya-sajta

Касателньо поддомена - используете общую базу и пути к файлам в файле конфига верно пропишите.

 

Сделал по инструкции - не работает....



#6 mishanya

mishanya
  • Фрилансер
  • 2 546 сообщений
  • Программирование, Верстка
  • Версия CMS:2.x
  • Откуда:Ukraine

Опубликовано 04.01.2016 - 14:19

Сделал по инструкции - не работает....

 

выдает ошибку? или что? епе проверяете?



#7 Nikolas

Nikolas
  • Пользователь
  • 77 сообщений
  • Дизайн, Программирование, Верстка, Заказчик
  • Версия CMS:1.x, 2.x
  • Откуда:Украина

Опубликовано 04.01.2016 - 14:20

Поля выбора шаблонов в настройках неактивные

 

Добавим в simpla/SettingsAdmin.php код вывода списка шаблонов на странице настроек. После кода (строка 14)

$this->design->assign('managers', $managers); 

У меня этой строки нет! Версия 2.2.1


Изменено: Nikolas, 04.01.2016 - 14:21


#8 mishanya

mishanya
  • Фрилансер
  • 2 546 сообщений
  • Программирование, Верстка
  • Версия CMS:2.x
  • Откуда:Ukraine

Опубликовано 04.01.2016 - 14:26

Поля выбора шаблонов в настройках неактивные

 

Добавим в simpla/SettingsAdmin.php код вывода списка шаблонов на странице настроек. После кода (строка 14)

$this->design->assign('managers', $managers); 

У меня этой строки нет! Версия 2.2.1

 

добавьте

$this->design->assign('themes',    $this->design->get_themes()); 

не после этого кода что выше, а ПЕРЕД

return $this->design->fetch('settings.tpl');

Изменено: mishanya, 04.01.2016 - 14:26


#9 Nikolas

Nikolas
  • Пользователь
  • 77 сообщений
  • Дизайн, Программирование, Верстка, Заказчик
  • Версия CMS:1.x, 2.x
  • Откуда:Украина

Опубликовано 04.01.2016 - 14:30

Так же не понятно с этим блоком...

 


Теперь заменим нашу ранее созданный метод get_theme в файле api/Design.php (строка 93)

 

public function get_theme() {
  if(!isset($_COOKIE['theme']) || !is_dir($this->config->root_dir.'/design/'.$_COOKIE['theme'].'/html')) {
      if($this->is_mobile_browser())
          $theme = $this->set_theme($this->settings->theme_mobile);
      else
          $theme = $this->set_theme($this->settings->theme_full);
  }
  else
      $theme = $_COOKIE['theme'];


  return $theme;
}
 

 

На что его нужно заменять?


Изменено: Nikolas, 04.01.2016 - 14:31


#10 Nikolas

Nikolas
  • Пользователь
  • 77 сообщений
  • Дизайн, Программирование, Верстка, Заказчик
  • Версия CMS:1.x, 2.x
  • Откуда:Украина

Опубликовано 04.01.2016 - 14:34

добавьте

$this->design->assign('themes',    $this->design->get_themes()); 

не после этого кода что выше, а ПЕРЕД

return $this->design->fetch('settings.tpl');

 

Fatal error: Call to undefined method Design::get_themes() in /home/andybob/sport-profit.com.ua/www/simpla/SettingsAdmin.php on line 94



#11 mishanya

mishanya
  • Фрилансер
  • 2 546 сообщений
  • Программирование, Верстка
  • Версия CMS:2.x
  • Откуда:Ukraine

Опубликовано 04.01.2016 - 14:36

вам нужно внимательно прочитать первые строки

Эта тема является продолжением другой статьи о переключении шаблонов, поэтому


#12 Nikolas

Nikolas
  • Пользователь
  • 77 сообщений
  • Дизайн, Программирование, Верстка, Заказчик
  • Версия CMS:1.x, 2.x
  • Откуда:Украина

Опубликовано 04.01.2016 - 15:49

Прочитал внимательнее - все получилось! Спасибо.



#13 gunner

gunner
  • Пользователь
  • 74 сообщений

Опубликовано 31.01.2016 - 22:03

День добрый! Помогите, пожалуйста.
 
делаю по мануалу:
 
но ..

И далее по коду - строку 63
 
63 $this->design->assign('settings', $this->settings);
 
на
 
63 $settings = $this->settings;
64 $settings->theme = $this->get_theme();
65 $this->design->assign('settings', $settings);

 

 
у меня:

 


63 public function fetch($template)
64 
66 {
66  // Передаем в дизайн то, что может понадобиться в нем
67  $this->assign('config',  $this->config);
68  $this->assign('settings', $this->settings);
69  return $this->smarty->fetch($template);
70 }
 

 


Изменено: gunner, 31.01.2016 - 22:36


#14 mishanya

mishanya
  • Фрилансер
  • 2 546 сообщений
  • Программирование, Верстка
  • Версия CMS:2.x
  • Откуда:Ukraine

Опубликовано 31.01.2016 - 22:50

День добрый! Помогите, пожалуйста.
 
делаю по мануалу:
 
но ..

 

меняете

$this->assign('settings', $this->settings);

на

$settings = $this->settings;
$settings->theme = $this->get_theme();
$this->assign('settings', $settings);

Изменено: mishanya, 31.01.2016 - 22:50


#15 gunner

gunner
  • Пользователь
  • 74 сообщений

Опубликовано 01.02.2016 - 01:18

Спасибо! Вручную переключение срабатывает, но автоматически нет( 
В админке задал для мобильной версии шаблон и для полной разные. 

Но фактически, какой бы я не задал для полной/мобильной шаблон версии не имеет значения, так как начиная с правок в api/Design.php перестает работать ручное переключение шаблона в админке. Т.е. я вообще не могу поменять какой будет шаблон, кликая на его название в менеджере шаблонов. Т.е. он как бы показывает, что переключается, но по факту остается всегда один и тот же. Если есть default, то это будет скорее всего он.

Могу изменить активный шаблон только поменяв соответствующее значение в ДБ


Изменено: gunner, 01.02.2016 - 01:46


#16 Kors

Kors
  • Фрилансер
  • 3 522 сообщений
  • Программирование
  • Версия CMS:1.x, 2.x
  • Откуда:Россия

Опубликовано 01.02.2016 - 10:32

Спасибо! Вручную переключение срабатывает, но автоматически нет(

Возможно, причина в следующем. 
 
Здесь рекомендуется выполнить действия, описанные в ДВУХ статьях:
С1. Simpla 2: переключатель пользовательского шаблона,
С2. Simpla 2: мобильная версия сайта.

Если выполнить все по порядку, и после установки С1 опробовать работу, то в куках останется непустое значение $_COOKIE['theme'].
Если затем провести установку С2, и проверять работу на том же браузере, то в новой функции public function get_theme() реально дело НЕ ДОЙДЕТ до проверки браузера - мобильный или нет. Соответственно, реального переключения не будет.

Этот момент возникает только у того, кто все это устанавливает. На пользовательских компьютерах должно работать верно. Разве что пользователь успеет походить по сайту в момент между установкой С1 и С2. Но это конечно, маловероятно...

#17 gunner

gunner
  • Пользователь
  • 74 сообщений

Опубликовано 01.02.2016 - 16:17

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

 

ну и момент, который сильно напрягает,  о котором писал выше:

 

http://simplashop.co...lskogo-shablona

 

 
Теперь, когда мы создали нужные нам методы, можно ими воспрользоваться. Заменим строку 32
 
32 $theme = $this->settings->theme;
на
32 $theme = $this->get_theme();

 

Вот после этой манипуляции уже не могу ничего сделать с выбором шаблона в админке. Только менять значение в БД.



#18 Gandalf

Gandalf
  • Пользователь
  • 123 сообщений
  • Заказчик, Пользователь
  • Версия CMS:2.x
  • Откуда:West

Опубликовано 02.03.2016 - 21:11

То же самое все работает, но в админке не переключается, только если в БД поменять значение



#19 Noxter

Noxter

    Simpla Developer

  • Фрилансер
  • 6 555 сообщений
  • Дизайн, Программирование, Верстка
  • Версия CMS:2.x
  • Откуда:Киев

Опубликовано 02.03.2016 - 21:44

То же самое все работает, но в админке не переключается, только если в БД поменять значение

По щучьему велению по моему хотению, всунуть код надеясь что само по себе заработает это глупо.
Механизм админки не рассчитан на переключение шаблонов.

#20 Kors

Kors
  • Фрилансер
  • 3 522 сообщений
  • Программирование
  • Версия CMS:1.x, 2.x
  • Откуда:Россия

Опубликовано 03.03.2016 - 10:17

То же самое все работает, но в админке не переключается, только если в БД поменять значение

Так и должно быть - все в соответствии с текущим API.

Вообще вопрос переключения шаблонов на ходу - совсем не так прост, как кажется. Довольно давно была тема
http://forum.simplac...ge-4#entry54281
В той теме два очень уважаемых специалиста прямо-таки кипели и исходили ругательствами, потому что никак не могли (или не хотели) понять очевидной ошибки в предлагавшемся там методе. Что-то дошло до них примерно через год. Позднее, когда еще один спец выложил новый метод (почти совсем хороший, но тоже не до конца правильный) никто из них почему-то не спросил, зачем придумывался новый метод, если и их способ хороший...
 






0 пользователей читают эту тему

0 пользователей, 0 гостей, 0 скрытых