Форум русской поддержки Joomla!® CMS
10.12.2016, 20:42:01 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
   
   Начало   Поиск Joomla 3.0 FAQ Joomla 2.5 FAQ Joomla 1.5 FAQ Правила форума Новости Joomla Реклама Войти Регистрация Помощь  
Страниц: [1]   Вниз
  Добавить закладку  |  Печать  
Автор

Шаблоны ONEPAGE на Joomla 3

 (Прочитано 783 раз)
0 Пользователей и 1 Гость смотрят эту тему.
apikron
Осваиваюсь на форуме
***

Репутация: +1/-0
Offline Offline

Сообщений: 92


« : 19.02.2015, 13:57:12 »

Установил один из шаблонов для Joomla 3 из разряда ONEPAGE, в данном случае LT Personal http://ltheme.com/project/lt-personal-free-onepage-portfolio-personal-joomla-template/
Демо шаблона http://demo2.ltheme.com/joomla-one-page-templates/lt-personal/

Народ! Подскажите, пожалуйста, как работать с меню?! Не понял как настраивать ссылки, чтобы при нажатии подгружался нужный материал (как я понимаю из нужной модульной позиции).
На простейшем застрял  Smiley Уже решил просто "Якорь" использовать, как вариант, но хочется реально понять как правильно работать с меню в шаблонах ONEPAGE.
Записан
apikron
Осваиваюсь на форуме
***

Репутация: +1/-0
Offline Offline

Сообщений: 92


« Ответ #1 : 19.02.2015, 14:22:09 »

Неужели "Якорями" и работает?!
Записан
vdm-m3
Осваиваюсь на форуме
***

Репутация: +1/-0
Offline Offline

Сообщений: 44


« Ответ #2 : 08.05.2015, 13:25:35 »

Вот здесь посмотрите: http://joomlaforum.ru/index.php/topic,297332.new.html
Но окончательно вопрос не решен как быть с пунктами меню и заголовками модулей на русском.
Если есть какая информация о решении проблемы, пожалуйста отпишитесь. Буду очень благодарен.
Записан
apikron
Осваиваюсь на форуме
***

Репутация: +1/-0
Offline Offline

Сообщений: 92


« Ответ #3 : 08.05.2015, 13:46:19 »

Если мы правильно друг-друга понимаем, то решил всё обычными якорями. Отключаю показ названия модуля, вписываю название модуля в тексте, ставлю <h>- тег, оформляю как надо средствами редактора. Потом соответственно ставлю якорь в название и прописываю якорь в необходимом пункте меню.
Записан
vdm-m3
Осваиваюсь на форуме
***

Репутация: +1/-0
Offline Offline

Сообщений: 44


« Ответ #4 : 08.05.2015, 16:34:12 »

Конечно и так тоже можно, но это можно просто сделать в модуле custom_html, а если в других модулях это делать, то уже посложнее...

Вот только что, на другом форуме очень помогли и предложили такое решение:

В файл modules.php добавляется транслитерация названий модулей. Русские символы переводятся в транслит.
Вот такой файл \public_html\templates\ja_onepage\html\modules.php  должен получиться:

Код:
<?php
function rus2translit($string)
{
    $converter = array(
        'а' => 'a',   'б' => 'b',   'в' => 'v',
        'г' => 'g',   'д' => 'd',   'е' => 'e',
        'ё' => 'e',   'ж' => 'zh',  'з' => 'z',
        'и' => 'i',   'й' => 'y',   'к' => 'k',
        'л' => 'l',   'м' => 'm',   'н' => 'n',
        'о' => 'o',   'п' => 'p',   'р' => 'r',
        'с' => 's',   'т' => 't',   'у' => 'u',
        'ф' => 'f',   'х' => 'h',   'ц' => 'c',
        'ч' => 'ch',  'ш' => 'sh',  'щ' => 'sch',
        'ь' => '',    'ы' => 'y',   'ъ' => '',
        'э' => 'e',   'ю' => 'yu',  'я' => 'ya',
        'А' => 'A',   'Б' => 'B',   'В' => 'V',
        'Г' => 'G',   'Д' => 'D',   'Е' => 'E',
        'Ё' => 'E',   'Ж' => 'Zh',  'З' => 'Z',
        'И' => 'I',   'Й' => 'Y',   'К' => 'K',
        'Л' => 'L',   'М' => 'M',   'Н' => 'N',
        'О' => 'O',   'П' => 'P',   'Р' => 'R',
        'С' => 'S',   'Т' => 'T',   'У' => 'U',
        'Ф' => 'F',   'Х' => 'H',   'Ц' => 'C',
        'Ч' => 'Ch',  'Ш' => 'Sh',  'Щ' => 'Sch',
        'Ь' => '',  'Ы' => 'Y',   'Ъ' => '',
        'Э' => 'E',   'Ю' => 'Yu',  'Я' => 'Ya',
        '?' => '',    '!' => '',    '.' => '',
        ',' => '',
    );
    return strtr($string, $converter);
}
?>
<?php


defined('_JEXEC') or die('Restricted access');

/**
* This is a file to add template specific chrome to module rendering.  To use it you would
* set the style attribute for the given module(s) include in your template to use the style
* for each given modChrome function.
*
* eg.  To render a module mod_test in the sliders style, you would use the following include:
* <jdoc:include type="module" name="test" style="slider" />
*
* This gives template designers ultimate control over how modules are rendered.
*
* NOTICE: All chrome wrapping methods should be named: modChrome_{STYLE} and take the same
* three arguments.
*/


/*
* Default Module Chrome that has sematic markup and has best SEO support
*/
function modChrome_JAxhtml($module, &$params, &$attribs)
{
  $badge = preg_match ('/badge/', $params->get('moduleclass_sfx'))?"<span class=\"badge\">&nbsp;</span>\n":"";
?>
  <div class="ja-module module<?php echo $params->get('moduleclass_sfx'); ?>" id="Mod<?php echo $module->id; ?>">
    <div class="module-inner">
      <?php echo $badge; ?>
      <?php if ($module->showtitle != 0) : ?>
      <h3 class="module-title"><span><?php echo $module->title; ?></span></h3>
      <?php endif; ?>
      <div class="module-ct">
      <?php echo $module->content; ?>
      </div>
    </div>
  </div>
  <?php
}

function modChrome_onepage($module, &$params, &$attribs)
{
  $key = strtoupper(str_replace (' ', '_', stripslashes($module->title)));
  $subtitlekey = 'TPL_SUBTITLE_'.$key;
  $subtitle = JText::_($subtitlekey);
  $menuid = strtolower(str_replace (' ', '_', stripslashes($module->title)));
?>
  <section class="section onepage<?php echo $params->get('moduleclass_sfx'); ?>" id="<?php echo rus2translit($menuid)?>">
    <div class="container">

      <?php if ($module->showtitle != 0) : ?>
        <div class="section-title" id="<?php echo rus2translit($menuid)?>">
          <h2><span><?php echo $module->title; ?></span></h2>
          <span class="section-subtitle"><?php echo $subtitle ?></span>
        </div>
      <?php endif; ?>   

      <div class="row-fluid">
        <?php echo $module->content; ?>
      </div>

    </div>

  </section>
  <?php
}

Таким образом у Вас названия модулей будут переведены в транслит и всё заработает. Названия же самих модулей останутся на русском.
см. как работает: http://tablo-dlya-azs.ru

Останется только зайти в редактирование пунктов меню и там сделать транслитерацию ссылок на модули в соответствии с транслитерацией в файле mudule.php

Обратите внимание также на то, что если название модуля начинается с заглавной буквы, то и в настройках адреса ссылки пункта меню тоже надо указывать с заглавной, например: Название модуля: Наша продукция, Адрес в пункте меню: index.php?Itemid=435#Nasha_produkciya
« Последнее редактирование: 08.05.2015, 16:39:10 от vdm-m3 » Записан
apikron
Осваиваюсь на форуме
***

Репутация: +1/-0
Offline Offline

Сообщений: 92


« Ответ #5 : 08.05.2015, 16:51:58 »

Да! Полезно! Спасибо за подсказку!
Записан
vdm-m3
Осваиваюсь на форуме
***

Репутация: +1/-0
Offline Offline

Сообщений: 44


« Ответ #6 : 08.05.2015, 16:57:47 »

Да не стоит благодарности. Мне тоже подскзали. Да это даже не "подсказали" Azn   Это уже готовое решение.  Grin
Записан
Страниц: [1]   Вверх
  Добавить закладку  |  Печать  
 
Перейти в:  

Powered by SMF 1.1.21 | SMF © 2006, Simple Machines

Joomlaforum.ru is not affiliated with or endorsed by the Joomla! Project or Open Source Matters.
The Joomla! name and logo is used under a limited license granted by Open Source Matters
the trademark holder in the United States and other countries.

LiveInternet