Перейти к содержанию

Рекомендуемые сообщения

Всем привет! Подскажите, пожалуйста, что я делаю не так? Версия ocStore 2.3.0.2.3.

Мне нужно к родному слайдеру добавить две картинки с ссылками как на картинке:

1.thumb.png.70e2c038b725c1453c100f6e766ac30f.png

Как добавить с помощью html и css это понятно вот пример как сейчас:

<div id="slideshow_conteiner">

<div id="slideshow<?php echo $module; ?>" class="slider">

  <?php foreach ($banners as $banner) { ?>

  <div class="item">

    <?php if ($banner['link']) { ?>

    <a href="<?php echo $banner['link']; ?>"><img src="<?php echo $banner['image']; ?>" alt="<?php echo $banner['title']; ?>" class="img-responsive" /></a>

    <?php } else { ?>

    <img src="<?php echo $banner['image']; ?>" alt="<?php echo $banner['title']; ?>" class="img-responsive" />

    <?php } ?>

  </div>

  <?php } ?>

</div>

  <div class="static_picture">

  <a href="#"><img src="image/catalog/foto/banners/static_picture1.jpg" alt="static_picture1" class="static_img"></a>

  <a href="#"><img src="image/catalog/foto/banners/static_picture2.jpg" alt="static_picture2" class="static_img"></a>

  </div>

<div style="clear:both;"></div>

</div>

<script type="text/javascript">

$('#slideshow<?php echo $module; ?>').slider({

                items: 6,

                autoPlay: false,

                singleItem: true,

                navigation: true,

                navigationText: ['<i class="fa fa-chevron-left fa-5x"></i>', '<i class="fa fa-chevron-right fa-5x"></i>'],

                pagination: false

});

</script>

А вот как сделать, так что бы в админке там, где находиться слайдер по пути дизайн/баннеры была возможность добавлять эти картинки, а так же заголовки и ссылку к ним? А то так править данные можно только не посредственно залазив в код что не удобно для пользователя.

Вот бы чего хотелось видеть в админке в управлении слайдерам пример на картинке.

2.thumb.jpg.8ae3090fee53dfba764628512c77f547.jpg

 То есть должно быть по аналогии как стандартное управление слайдерам только для 2ух картинок.

Вот что я пробовал сделать, но пока нечего не выходит:

Я зашел в PHPMyAdmin и там нашел таблицу oc_banner_image и вней перешел в вкладку структура и там добавил к уже имеющимся столбцам таким как:

banner_image_id

banner_id

language_id

title

link

image

sort_order

Дабавил к ним вот эти:

Title2

Link2

Image2

После открыл файл banner.php и добавил в данный участок кода:

$data['banner_images'] = array();

 

                               foreach ($banner_images as $key => $value) {

                                               foreach ($value as $banner_image) {

                                                               if (is_file(DIR_IMAGE . $banner_image['image'])) {

                                                                              $image = $banner_image['image'];

                                                                              $thumb = $banner_image['image'];

                                                               } else {

                                                                              $image = '';

                                                                              $thumb = 'no_image.png';

                                                               }

                                                               $data['banner_images'][$key][] = array(

                                                                              'title'      => $banner_image['title'],

                                                                              'link'       => $banner_image['link'],

                                                                              'image'      => $image,

                                                                              'title2'      => $banner_image['title2'],

                                                                              'link2'       => $banner_image['link2'],

                                                                              'image2'      => $image,

                                                                              'thumb'      => $this->model_tool_image->resize($thumb, 100, 100),

                                                                              'sort_order' => $banner_image['sort_order']

                                                               );

                                               }

                               }

После открыл файл slideshow.php и там скопировал следующий участок кода и добавил в него по аналогии:

1)Часть кода для слайдера:

                                foreach ($results as $result) {

                                               if (is_file(DIR_IMAGE . $result['image'])) {

                                                               $data['banners'][] = array(

                                                                              'title' => $result['title'],

                                                                              'link'  => $result['link'],

                                                                              'image' => $this->model_tool_image->resize($result['image'], $setting['width'], $setting['height'])

                                                               );

                                               }

                               }

2) Часть кода для картинок с правой стороны от слайдера:

Это код который добавил:

foreach ($results as $result) {

                                               if (is_file(DIR_IMAGE . $result['image'])) {

                                                               $data['banners'][] = array(

                                                                              'title2' => $result['title2'],

                                                                              'link2'  => $result['link2'],

                                                                              'image2' => $this->model_tool_image->resize($result['image2'], $setting['width'], $setting['height'])

                                                               );

                                               }

                               }

После я открыл файл banner_form.tpl и нашел вот этот участок кода:

<?php if (isset($banner_images[$language['language_id']])) { ?>

                  <?php foreach ($banner_images[$language['language_id']] as $banner_image) { ?>

                  <tr id="image-row<?php echo $image_row; ?>">

                    <td class="text-left"><input type="text" name="banner_image[<?php echo $language['language_id']; ?>][<?php echo $image_row; ?>][title]" value="<?php echo $banner_image['title']; ?>" placeholder="<?php echo $entry_title; ?>" class="form-control" />

                      <?php if (isset($error_banner_image[$language['language_id']][$image_row])) { ?>

                      <div class="text-danger"><?php echo $error_banner_image[$language['language_id']][$image_row]; ?></div>

                      <?php } ?></td>

                    <td class="text-left" style="width: 30%;"><input type="text" name="banner_image[<?php echo $language['language_id']; ?>][<?php echo $image_row; ?>][link]" value="<?php echo $banner_image['link']; ?>" placeholder="<?php echo $entry_link; ?>" class="form-control" /></td>

                    <td class="text-center"><a href="" id="thumb-image-<?php echo $image_row; ?>" data-toggle="image" class="img-thumbnail"><img src="<?php echo $banner_image['thumb']; ?>" alt="" title="" data-placeholder="<?php echo $placeholder; ?>" /></a>

                      <input type="hidden" name="banner_image[<?php echo $language['language_id']; ?>][<?php echo $image_row; ?>][image]" value="<?php echo $banner_image['image']; ?>" id="input-image<?php echo $image_row; ?>" /></td>

                    <td class="text-right" style="width: 10%;"><input type="text" name="banner_image[<?php echo $language['language_id']; ?>][<?php echo $image_row; ?>][sort_order]" value="<?php echo $banner_image['sort_order']; ?>" placeholder="<?php echo $entry_sort_order; ?>" class="form-control" /></td>

                    <td class="text-left"><button type="button" onclick="$('#image-row<?php echo $image_row; ?>, .tooltip').remove();" data-toggle="tooltip" title="<?php echo $button_remove; ?>" class="btn btn-danger"><i class="fa fa-minus-circle"></i></button></td>

                  </tr>

                  <?php $image_row++; ?>

                  <?php } ?>

                  <?php } ?>

Скопировал его и поменял в нем:

$banner_image['title']; на $banner_image['title2'];

$banner_image['link']; на $banner_image[' link2'];

$banner_image['image']; на $banner_image[' image2'];

Далее открыл файл slideshow.tpl который был в самом начале обращения и добавил туда следующее:

      <?php if ($banner['link2']) { ?>

    <a href="<?php echo $banner['link2']; ?>"><img src="<?php echo $banner['image2']; ?>" alt="<?php echo $banner['title2']; ?>" class="img-responsive" /></a>

    <?php } else { ?>

    <img src="<?php echo $banner['image2']; ?>" alt="<?php echo $banner['title2']; ?>" class="img-responsive" />

    <?php } ?>

В итоге при добавлении

'title2'      => $banner_image['title2'],

'link2'       => $banner_image['link2'],

'image2'      => $image,

в banner.php в админке появились иероглифы и сообщение об ошибках, ссылающихся на эти три строчки.

При добавлении этих трек строк в slideshow.php ошибок нет и даже появляется в шаблоне картинка (которая ставиться автоматом, если нет изображения).

Но я с точностью уверен, что даже эти три строчки тоже не верны, так как если в данном участке кода:

foreach ($results as $result) {

                                               if (is_file(DIR_IMAGE . $result['image'])) {

                                                               $data['banners'][] = array(

 Вместо if (is_file(DIR_IMAGE . $result['image'])) { поставить if (is_file(DIR_IMAGE . $result['image2'])) { что логичней то при этом будет ошибка отображена в самом шаблоне на месте где должна быть картинка с уклонам на то что это строка неправильная.

Всю голову сломал, как это сделать, кому не сложно подскажите в правильном ли я направлении или нет, а кому не сложно подскажите, как это реализовать. А то я пока новичок и ни разу не работал с движками.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

вот так проще хоть 100500 слайдеров банеров и чего угодно куда угодно и как угодно

 

  • +1 1

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
5 минут назад, AWARO сказал:

вот так проще

Ну а все же как это можно сделать своими силами? Или может, как то можно допустим прикрутить к слайдеру обычный баннер стандартный? Только вот как не могу понять а примера в инете че то найти не могу(

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Проще не терять время (которое - деньги), а использовать готовое решение. Это выгоднее всего. Поверьте.
Круто, если вы додумаетесь - вы повысите свою квалификацию. Но... судя по тому что вы ищите примеры в инете, вы все равно не идете творческим путем...) Поэтому - лучше готовыми решениями пользоваться.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
В 29.09.2017 в 09:52, 9MiX сказал:

Всем привет! Подскажите, пожалуйста, что я делаю не так? Версия ocStore 2.3.0.2.3.

Мне нужно к родному слайдеру добавить две картинки с ссылками как на картинке:

 

1)оформляйте код

 

2) зачем такие извращения?

 

3) вот бесплатный модуль для создания новых позиций в макете https://www.opencart.com/index.php?route=marketplace/extension/info&extension_id=20569

 

выведите куда нужно, создайте новый баннер и прелипите его в макетах

 

делов на пять минут))

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
5 часов назад, ardashev06 сказал:

 

1)оформляйте код

 

2) зачем такие извращения?

 

3) вот бесплатный модуль для создания новых позиций в макете https://www.opencart.com/index.php?route=marketplace/extension/info&extension_id=20569

 

выведите куда нужно, создайте новый баннер и прелипите его в макетах

 

делов на пять минут))

этот мод через одно место сделан

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
18 минут назад, AWARO сказал:

этот мод через одно место сделан

а я и не спорю

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти

  • Последние посетители   0 пользователей онлайн

    Ни одного зарегистрированного пользователя не просматривает данную страницу

×

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

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