joomix

Создание дополнительного телефона Опенкарт 2

Приветствуем вас на сайте StyleSites.

У начинающих веб разработчиков очень часто появляется необходимость вывода дополнительного телефона с админки интернет-магазина Опенкарт 2 в шапку или раздел контакты.

Сегодня мы рассмотрим этот вопрос, создав в настройках магазина во вкладке Магазин новое поле, где выведем дополнительный телефон.


Идем по пути: admin/view/template/setting и редактируем файл setting.tpl


1. включаем быстрый поиск (CTRL+F) вбиваем <?php echo $config_telephone; ?>
2. Находим, создаем копию блока
3. в элементе input в атрибуте "name" указываем config_telephone2, а в атрибуте "value" = <?php echo $config_telephone2; ?>

В итоге у нас получается вот такой блок


<div class="form-group">
    <label class="col-sm-2 control-label" for="input-telephone"><?php echo $entry_telephone; ?></label>
    <div class="col-sm-10">
     <input type="text" name="config_telephone2" value="<?php echo $config_telephone2; ?>" placeholder="<?php echo $entry_telephone; ?>" id="input-telephone2" class="form-control" />
     <?php if ($error_telephone) { ?>
     <div class="text-danger"><?php echo $error_telephone; ?></div>
     <?php } ?>
    </div>
</div>

Далее нужно объявить нашу переменную в контроллере, чтобы она заработала.

Идем в admin/controller/setting/ и редактируем файл setting.php

1. Находим блок:

        if (isset($this->error['telephone'])) {
            
$data['error_telephone'] = $this->error['telephone'];
        } else {
            
$data['error_telephone'] = '';
        }

После него вставляем следующий код:

        if (isset($this->error['telephone2'])) {
            
$data['error_telephone'] = $this->error['telephone2'];
        } else {
            
$data['error_telephone'] = '';
        }

2. Находим блок:

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

После него вставляем:

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

Все, с административной частью мы закончили, теперь давайте выведем наш дополнительный телефон на страницу контактов.

Идем в catalog/controller/information/ и редактируем файл contact.php


1. Врубаем поисковик, вбиваем $data['telephone'] = $this->config->get('config_telephone');
2. После этой строки добавляем $data['telephone2'] = $this->config->get('config_telephone2');

Идем catalog/view/theme/*/template/information/c и редактируем файл contact.tpl


В поисковике вбиваем <?php echo $telephone; ?><br />
и после этой строки добавляем <?php echo $telephone2; ?><br />

 

Для вывода телефона в шапке добавить в catalog/view/theme/default/template/common/header.tpl строку:

<li><a href="/<?php echo $contact; ?>"><i class="fa fa-phone"></i></a> <span class="hidden-xs hidden-sm hidden-md"><?php echo $telephone2; ?></span></li>

в catalog/controller/common/header.php строку:

$data['telephone2'] = $this->config->get('config_telephone2');

 

Иногда, что бы увидеть результат, нудно обновить кеш модификаторов.

Надеемся, у вас все вышло! 


Рейтинг статьи

Рейтинг: 100% - 5 голоса (-ов)

100%