Moushe.ru

Блог обо всём

OcStore 2.1 (OpenCart 2.1) выводим свой код



Недавно меня попросили сделать статью о создании в админке нового поля для заполнения и вывода его в шапку сайта, раз просили – делаю.

OpenCart-20

Список задач на сегодня:

1. Работаем с файлами админки

2. Работаем с файлами витрины

Приступим:

1. Откроем файл ../admin/view/template/setting/setting.tpl и после этих строк (195-200):

<div class="form-group">
<label class="col-sm-2 control-label" for="input-image"><span data-toggle="tooltip" data-container="#tab-general" title="<?php echo $help_image; ?>"><?php echo $entry_image; ?></span></label>
<div class="col-sm-10"><a href="" id="thumb-image" data-toggle="image" class="img-thumbnail"><img src="<?php echo $thumb; ?>" alt="" title="" data-placeholder="<?php echo $placeholder; ?>" /></a>
<input type="hidden" name="config_image" value="<?php echo $config_image; ?>" id="input-image" />
</div>
</div>

вставим эти:

<div class="form-group">
<label class="col-sm-2 control-label" for="input-contacts<?php echo $language['language_id']; ?>"><span data-toggle="tooltip" data-container="#tab-general" title="<?php echo $help_contacts; ?>"><?php echo $entry_contacts; ?></span></label>
<div class="col-sm-10">
<textarea name="config_contacts" rows="5" placeholder="<?php echo $entry_contacts; ?>" class="form-control"><?php echo $config_contacts; ?></textarea>
</div>
</div>

 

oc_store_ul_01

 

1.1. Откроем файл ../admin/controller/setting/setting.php и после этой строки (80):

$data['entry_image'] = $this->language->get('entry_image');

вставим эту:

$data['entry_contacts'] = $this->language->get('entry_contacts');

oc_store_ul_02

после этой строки (211):

$data['help_image'] = $this->language->get('help_image');

вставим эту:

$data['help_contacts'] = $this->language->get('help_contacts');

oc_store_ul_03

после этих строк (598-602):

if (isset($this->request->post['config_image'])) {
$data['config_image'] = $this->request->post['config_image'];
} else {
$data['config_image'] = $this->config->get('config_image');
}

вставим эти:

if (isset($this->request->post['config_contacts'])) {
$data['config_contacts'] = $this->request->post['config_contacts'];
} else {
$data['config_contacts'] = $this->config->get('config_contacts');
}

oc_store_ul_04

1.2. Откроем файл ../admin/language/russian/setting/setting.php и после этой строки (41):

$_['entry_image']                      = 'Изображение на странице обратной связи';

вставим эту:

$_['entry_contacts']                   = 'Контакты';

oc_store_ul_05

после этой строки (173):

$_['help_image']                       = 'Добавляет изображение на страницу обратной связи \'Связаться с нами\'. Это не логотип! Логотип выбирается во вкладке \'Изображения\'.';

вставим эту:

$_['help_contacts']                    = 'Блок Контакты отображается в шапке витрины (стандартный шаблон, поддерживается html код)';

oc_store_ul_06

1.3. Проверяем наш новый информационный блок:

Админка – Система – Настройки – Редактировать – Витрина – вводим любой текст который хотите видеть в шапке своего магазина (адрес магазина, почта или что-то иное) и жмём кнопку сохранить, после этого опять открываем эту вкладку и смотрим сохранился наш текст или html код или нет – если не сохранился проверьте свой код на ошибки.

oc_store_ul_07

2. Откроем файл ../catalog/view/theme/default/template/common/header.tpl и после этой строки (55):

<ul class="list-inline">

вставим эту:

<li><?php echo $contacts; ?></li>

oc_store_ul_08

2.1. Откроем файл ../catalog/controller/common/header.php и после этой строки (89):

$data['telephone'] = $this->config->get('config_telephone');

вставим эту:

$data['contacts'] =  html_entity_decode($this->config->get('config_contacts'), ENT_QUOTES, 'UTF-8');

oc_store_ul_09

Результат:

oc_store_ul_10 oc_store_ul_11

На сегодня всё, следите за нашими новостями и до новых встреч.

3 Комментария

  1. Добрый вечер! Большое спасибо за уроки и информацию. Есть несколько вопросов:
    — удалил поиск из шапки сайта и нужно в освободившийся div (col-sm-5), между лого и корзиной, поместить несколько строк информации. Как это правильнее сделать? Вроде бы если прописать все в header.tpl то нормально отображается на сайте, или все же нужно как то по хитрому?
    — можно ли использовать этот урок и сделать div (col-sm-5) редактируемым через админку, вставив в другое, нужное мне место кода?

    • Здравствуйте, можно вставить напрямую строки в header.tpl, а замороченные люди хотят вносить всё через админку — мол так фэйшуйнее — вносите как вам удобнее — если планируете часто менять текст — через админку, если редко то напрямую в tpl. Возникнут вопросы пишите лучше В контакте — там быстрее отвечу. 🙂

  2. ОК! Спасибо за оперативность!!!

Добавить комментарий

Your email address will not be published.

*

CAPTCHA image
*

© 2016 Moushe.ru При копировании материалов, ссылка на нас обязательна!

Вверх ↑



Яндекс.Метрика