Jump to content
Search In
  • More options...
Find results that contain...
Find results in...
  • Sign Up

Создание простых статей в верхнем меню


Recommended Posts

Доброго времени суток!

В деле построения сайтов я новичок, поэтому не судите строго...

Суть моей проблемы в следующем:

В верхнем горизонтальном меню помимо продукции и услуг я хочу добавить разнообразные разделы, которые будут заполнены не "товарами", а простыми статьями, новостями, контактами и т.д. и т.п. Так вот, через простое добавление в меню "категорий" эти разделы то появляются, но отображаются они в качестве "магазина", т.е. с выбором подкатегорий и надписью "в этой категории нет товаров" (для наглядности прикладываю скрин). Вобщем, как я могу закинуть простые статьи в верхнее горизонтальное меню??

Всем заранее спасибо!

post-31124-0-38576100-1364321617_thumb.jpg

Link to post
Share on other sites

Guest

в header.tpl добавте руками пункты...

  <?php if ($category['children']) { ?>
  <div>
	<?php for ($i = 0; $i < count($category['children']);)/> { ?>
	<ul>
	  <?php $j = $i + ceil(count($category['children']) / $category['column']); ?>
	  <?php for (; $i < $j; $i++) { ?>
	  <?php if (isset($category['children'][$i])) { ?>
	  <li><a href="<?php echo $category['children'][$i]['href']; ?>"><?php echo $category['children'][$i]['name']; ?></a></li>
	  <?php } ?>
	  <?php } ?>
	</ul>
	<?php } ?>
  </div>
  <?php } ?>
</li>
<?php } ?>
 </ul>
</div>
<?php } ?>

где то тут.. поищите на форуме..уже писали об этом

например тут https://opencartforum.com/topic/3864-как-сделать-горизонтальное-меню/

Edited by Guest
Link to post
Share on other sites
Guest

вот... читайте... первое, что попалось в гугле...

В файле /catalog/view/theme/ваша_тема/template/common/header.tpl

<?php if ($categories) { ?>
<div id="menu">
<ul>
<?php foreach ($categories as $category) { ?>
<li><?php if ($category['active']) { ?>
<a href="<?php echo $category['href']; ?>"><?php echo $category['name']; ?></a>
<?php } else { ?>
<a href="<?php echo $category['href']; ?>"><?php echo $category['name']; ?></a>
<?php } ?>
<?php if ($category['children']) { ?>
<div>
<?php for ($i = 0; $i < count($category['children']) { ?>
<ul>
<?php $j = $i + ceil(count($category['children']) / $category['column']); ?>
<?php for (; $i < $j; $i++) { ?>
<?php if (isset($category['children'][$i])) { ?>
<li><a href="<?php echo $category['children'][$i]['href']; ?>"><?php echo $category['children'][$i]['name']; ?></a></li>
<?php } ?>
<?php } ?>
</ul>
<?php } ?>
</div>
<?php } ?>
</li>
<?php } ?>
</ul>
</div>
<?php } ?>

В нем добавляете какие угодно ссылки. Необходимо понимать, что пункты расположены в тегах <li></li>, а подпункты почему-то в <div></div>

Например пункт с подпунктом нужно прописать так

<li>Пункт

<div> Подпункт

Подпункт

</div>

</li>

Если к примеру нужно в начале меню сделать ссылку на главную, а потом оставить категории каталога, пишите так

<?php if ($categories) { ?>
<div id="menu">
<ul>
<li><a href="/">Главная</a></li>
<?php foreach ($categories as $category) { ?>
<li><?php if ($category['active']) { ?>
<a href="<?php echo $category['href']; ?>"><?php echo $category['name']; ?></a>
<?php } else { ?>
<a href="<?php echo $category['href']; ?>"><?php echo $category['name']; ?></a>
<?php } ?>
<?php if ($category['children']) { ?>
<div>
<?php for ($i = 0; $i < count($category['children']) { ?>
<ul>
<?php $j = $i + ceil(count($category['children']) / $category['column']); ?>
<?php for (; $i < $j; $i++) { ?>
<?php if (isset($category['children'][$i])) { ?>
<li><a href="<?php echo $category['children'][$i]['href']; ?>"><?php echo $category['children'][$i]['name']; ?></a></li>
<?php } ?>
<?php } ?>
</ul>
<?php } ?>
</div>
<?php } ?>
</li>
<?php } ?>
</ul>
</div>
<?php } ?>

А чтобы русский текст в браузере отображался нормально, а не "крокозябрами", сохраните header.tpl в кодировке UTF-8 (без ВОМ)

(для Notepad++ - верхнее меню кодировка/UTF-8 (без ВОМ))

Link to post
Share on other sites
  • 2 months later...

Перерыл весь форум, пробовал и так и так, но при замене кола в файле хедер открывается пустая страница вместо файла, хотя пункт ГЛАВНАЯ получилось добавить, но хочется вместо категорий подтянуть в горизонтальное меню пункты из блока ИНФОРМАЦИЯ, а категорий достаточно и слева и в центре страницы, помоги добрый человек с кодом, вот мой код хедер:

<!DOCTYPE html>
<html dir="<?php echo $direction; ?>" lang="<?php echo $lang; ?>">
<head>
<meta charset="UTF-8" />
<title><?php echo $title; ?></title>
<base href="<?php echo $base; ?>" />
<?php if ($description) { ?>
<meta name="description" content="<?php echo $description; ?>" />
<?php } ?>
<?php if ($keywords) { ?>
<meta name="keywords" content="<?php echo $keywords; ?>" />
<?php } ?>
<?php if ($icon) { ?>
<link href="<?php echo $icon; ?>" rel="icon" />
<?php } ?>
<?php foreach ($links as $link) { ?>
<link href="<?php echo $link['href']; ?>" rel="<?php echo $link['rel']; ?>" />
<?php } ?>
<link rel="stylesheet" type="text/css" href="catalog/view/theme/magicgold/stylesheet/stylesheet.css" />
<?php foreach ($styles as $style) { ?>
<link rel="<?php echo $style['rel']; ?>" type="text/css" href="<?php echo $style['href']; ?>" media="<?php echo $style['media']; ?>" />
<?php } ?>
<script type="text/javascript" src="catalog/view/javascript/jquery/jquery-1.7.1.min.js"></script>
<script type="text/javascript" src="catalog/view/javascript/jquery/ui/jquery-ui-1.8.16.custom.min.js"></script>
<link rel="stylesheet" type="text/css" href="catalog/view/javascript/jquery/ui/themes/ui-lightness/jquery-ui-1.8.16.custom.css" />
<script type="text/javascript" src="catalog/view/javascript/quick_search.js"></script>
<script type="text/javascript" src="catalog/view/javascript/jquery/ui/external/jquery.cookie.js"></script>
<script type="text/javascript" src="catalog/view/javascript/jquery/colorbox/jquery.colorbox.js"></script>
<link rel="stylesheet" type="text/css" href="catalog/view/javascript/jquery/colorbox/colorbox.css" media="screen" />
<script type="text/javascript" src="catalog/view/javascript/jquery/tabs.js"></script>
<script type="text/javascript" src="catalog/view/javascript/common.js"></script>
<script type="text/javascript" src="catalog/view/javascript/jquery/zoom/zoom.js"></script>
<?php foreach ($scripts as $script) { ?>
<script type="text/javascript" src="<?php echo $script; ?>"></script>
<?php } ?>
<!--[if IE 8]>
<link rel="stylesheet" type="text/css" href="catalog/view/theme/magicgold/stylesheet/ie8.css" />
<![endif]-->
<!--[if IE 7]>
<link rel="stylesheet" type="text/css" href="catalog/view/theme/magicgold/stylesheet/ie7.css" />
<![endif]-->
<!--[if lt IE 7]>
<link rel="stylesheet" type="text/css" href="catalog/view/theme/magicgold/stylesheet/ie6.css" />
<script type="text/javascript" src="catalog/view/javascript/DD_belatedPNG_0.0.8a-min.js"></script>
<script type="text/javascript">
DD_belatedPNG.fix('#logo img');
</script>
<![endif]-->
<?php echo $google_analytics; ?>
</head>
<body ondragstart="return false;" onselectstart="return false;" oncontextmenu="return false;">
<div id="container">
<div id="header">
  <?php if ($logo) { ?>
  <div id="logo"><a href="<?php echo $home; ?>"><img src="<?php echo $logo; ?>" title="<?php echo $name; ?>" alt="<?php echo $name; ?>" /></a></div>
  <?php } ?>
  <?php echo $language; ?>
  <?php echo $currency; ?>
  <div class="informationpanel"><img src="/image/information.png" /></div>
  <div class="telefonimg"><img src="/image/telefon1.png" /></div>
  <div class="telefonnumber"><?php echo $storePhone; ?></div>
  <div class="cartimg"><img src="/catalog/view/theme/magicgold/image/cart-img.png" /></div>
  <?php echo $cart; ?>
  <div id="search">
    <div class="button-search"></div>
    <?php if ($filter_name) { ?>
    <input type="text" name="filter_name" value="<?php echo $filter_name; ?>" />
    <?php } else { ?>
    <input type="text" name="filter_name" value="<?php echo $text_search; ?>" onclick="this.value = '';" onkeydown="this.style.color = '';" />
    <?php } ?>
  </div>
  <div id="address-data">
    <?php if (($this->config->get('config_display_address') == 1) || ($this->config->get('config_display_telephone') == 1) || ($this->config->get('config_display_fax') == 1) || ($this->config->get('config_display_email') == 1)) { ?>
       <div class="address-data-header"><?php echo $address_data; ?></div>
    <?php } ?>
    <?php if ($this->config->get('config_display_address') == 1) { ?>
       <?php echo $address; ?><br />
    <?php } ?>
    <?php if ($this->config->get('config_display_telephone') == 1) { ?>
       <b><i><?php echo $text_telephone; ?></i></b>
       <?php echo $telephone; ?>
    <?php } ?>
    <?php if ($this->config->get('config_display_fax') == 1) { ?>
       <b><i><?php echo $text_fax; ?></i></b>
       <?php echo $fax; ?>
    <?php } ?>
    <?php if ($this->config->get('config_display_email') == 1) { ?>
       <br /><b><i><?php echo $text_email; ?></i></b>
       <?php echo $email; ?>
    <?php } ?>
  </div>
  <div class="links"><a href="<?php echo $home; ?>"><?php echo $text_home; ?></a><a href="<?php echo $account; ?>"><?php echo $text_account; ?></a><a href="<?php echo $wishlist; ?>" id="wishlist-total"><?php echo $text_wishlist; ?></a><a href="<?php echo $compare; ?>" id="compare-total-header"><?php echo $text_compare; ?></a><a href="<?php echo $shopping_cart; ?>"><?php echo $text_shopping_cart; ?></a><a href="<?php echo $checkout; ?>"><?php echo $text_checkout; ?></a></div>
</div>
<?php if ($main_menu == '1') { ?>
<div id="advanced_menu"><?php if ($advanced_categories) {  echo $advanced_categories; } ?></div>
<?php } else { ?>
<?php if ($categories) { ?>
<div id="menu">
  <ul>
  <li><a href="/">Главная</a></li>
    <?php foreach ($categories as $category) { ?>
    <li><?php if ($category['active']) { ?>
    <a href="<?php echo $category['href']; ?>" class="active"><?php echo $category['name']; ?></a>
    <?php } else { ?>
    <a href="<?php echo $category['href']; ?>"><?php echo $category['name']; ?></a>
    <?php } ?>
      <?php if ($category['children']) { ?>
      <div>
        <?php for ($i = 0; $i < count($category['children']);) { ?>
        <ul>
          <?php $j = $i + ceil(count($category['children']) / $category['column']); ?>
          <?php for (; $i < $j; $i++) { ?>
          <?php if (isset($category['children'][$i])) { ?>
          <li><a href="<?php echo $category['children'][$i]['href']; ?>"><?php echo $category['children'][$i]['name']; ?></a></li>
          <?php } ?>
          <?php } ?>
        </ul>
        <?php } ?>
      </div>
      <?php } ?>
    </li>
    <?php } ?>
    
  </ul>
</div>
<?php } ?>
<?php } ?>
<div id="notification"></div>

Что нужно убрать и что нужно добавить?

Edited by afwollis
**
Link to post
Share on other sites

  • 4 months later...

писал фак на форуме по всяческим переделкам меню навигации, но в связи с разгромным сообщением  в личку одного из модеров сего сайта удалил..теперь вот приходиться бегать по форуму и искать ссылки на сообщения, но думаю вот это вам подойдет...все ссылки на информационные страницы и никаких сообщений о отсутствующих товарах

https://opencartforum.com/topic/19559-kak-dobavit-ssylki-v-glavnoe-meniu-v-1541/?do=findComment&comment=195669

(можно удалить меню с категориями, но можно и интегрировать то что я описал в изначальное меню)

Link to post
Share on other sites

  • 1 year later...

Добавлять то добавляется пункт меню через код но если переключить магазин с русского на английский добавленный пункт меню тоже на русском остается, как быть?

Link to post
Share on other sites

Добавлять то добавляется пункт меню через код но если переключить магазин с русского на английский добавленный пункт меню тоже на русском остается, как быть?

а по ссылке ходили? что я указывал

продублирую:

Делайте так: 

в \catalog\controller\common

файл header.php

 

после: 

 

$this->children = array(
'module/language',
'module/currency',
'module/cart'
);

вставить

 

$this->load->model('catalog/information');
        $this->data['informations'] = array();
        foreach ($this->model_catalog_information->getInformations() as $result) {
            $this->data['informations'][] = array(
                'title' => $result['title'],
                'href'  => $this->url->link('information/information', 'information_id=' . $result['information_id'])
            );
        } 

в \catalog\view\theme\default\template\common

файл header.tpl

 

удалить

 

<?php if ($categories) { ?>
<div id="menu">
  <ul>
    <?php foreach ($categories as $category) { ?>
    <li><?php if ($category['active']) { ?>
<a href="<?php echo $category['href']; ?>" class="active"><?php echo $category['name']; ?></a>
<?php } else { ?>
<a href="<?php echo $category['href']; ?>"><?php echo $category['name']; ?></a>
<?php } ?>


      <?php if ($category['children']) { ?>
      <div>
        <?php for ($i = 0; $i < count($category['children']);) { ?>
        <ul>
          <?php $j = $i + ceil(count($category['children']) / $category['column']); ?>
          <?php for (; $i < $j; $i++) { ?>
          <?php if (isset($category['children'][$i])) { ?>
          <li><a href="<?php echo $category['children'][$i]['href']; ?>"><?php echo $category['children'][$i]['name']; ?></a></li>
          <?php } ?>
          <?php } ?>
        </ul>
        <?php } ?>
      </div>
      <?php } ?>
    </li>
    <?php } ?>
  </ul>
</div>
<?php } ?>

заменить на

 

<div id="menu">
 <ul>
<li class="home"><a  title="<?php echo $text_home; ?>" href="<?php echo $home; ?>"><span><?php echo $text_home; ?></span></a></li>
      <?php foreach ($informations as $information) { ?>
      <li><a href="<?php echo $information['href']; ?>"><?php echo $information['title']; ?></a></li>
      <?php } ?>
     </ul>
</div>

локализация неактуальна, так как название статей ты прописываешь сам на всех языках что есть

порядок расположения: вводом порядкового номера статьи

убрать ненужный пункт: порядковый номер статьи ; -1

 

 

локализация неактуальна, так как название статей ты прописываешь сам на всех языках что есть

 

или вам все еще костыли нужны?

Link to post
Share on other sites

"так как название статей ты прописываешь сам на всех языках что есть" - в каком файле прописывать статьи на всех языках??

Link to post
Share on other sites

"так как название статей ты прописываешь сам на всех языках что есть" - в каком файле прописывать статьи на всех языках??

зачем ерунду то спрашивать? 

http://joxi.ru/ZrJpPBjFNOgG2j

Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Recently Browsing   0 members

    No registered users viewing this page.

×
×
  • Create New...

Important Information

On our site, cookies are used and personal data is processed to improve the user interface. To find out what and what personal data we are processing, please go to the link. If you click "I agree," it means that you understand and accept all the conditions specified in this Privacy Notice.