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

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

j2.5 Заголовок модуля как ссылка

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

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

Сообщений: 74


« : 28.02.2012, 12:45:39 »

Знаю что избито, но нужно реализовать, а решение от 1.5 не подходит ((
Хотел это http://bigemot.ru/portfolio/6-coding/14--joomla- но файла уже нет в 2.5 нужного, да и в целом по-другому устроено в 2.5.
Подскажите пожалуйста.
« Последнее редактирование: 18.05.2012, 15:54:35 от maccamset » Записан
maccamset
Осваиваюсь на форуме
***

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

Сообщений: 74


« Ответ #1 : 28.02.2012, 17:53:20 »

решено. Уже мне помогли.
Записан
stus
Новичок
*

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

Сообщений: 9


« Ответ #2 : 30.04.2012, 00:22:39 »

2 maccamset, подскажите пожалуйста решение, так же возникла необходимость в аналогичном update для системы.
Записан
desss
Осваиваюсь на форуме
***

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

Сообщений: 26


« Ответ #3 : 02.05.2012, 08:56:24 »

добрый день всем, такая же проблема.. если будет какая нить информация, поделитесь пожалуйста..
Записан
stus
Новичок
*

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

Сообщений: 9


« Ответ #4 : 13.05.2012, 00:08:35 »

Коллеги, добрый вечер.

  Решил данную проблему следующим способом: в файле module.php (папка шаблона) добавил switch($id) сразу после формирования итогового заголовка. Зарубежные коллеги решают данную проблему совершенно аналогично используя конструкцию elseif($id==const) ссылка.
  Данную проблему можно решить и проще, добавив в заголовок модуля <a href=''>заголовок</a>, единственное что это придется сделать через phpmyadmin, так как стандартный интерфейс панели администратора режет теги.

   формирование заголовка модуля
Код
if ($title_template) {
$title = sprintf($title_template, $title);
}
 
  добавление ссылки к заголовку
Код:
switch ($id)
{
    case 140: $title =  "<a href='/opinion/russlan-kiss.html'>".$title."</a>";    
        break;
    ...
    case 147: $title =  "<a href='/opinion/custom.html'>".$title."</a>";  
        break;
}
« Последнее редактирование: 13.05.2012, 00:19:57 от stus » Записан
Ctrl_
Захожу иногда
**

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

Пол: Мужской
Сообщений: 12



« Ответ #5 : 16.05.2012, 10:43:18 »

Рабочий способ добавления ссылки для заголовка при редактировании модуля в админке:

1 Добавить поле `titleurl` в таблицу `#__modules`.
2 Добавить поле `titleurl` в /administrator/components/com_modules/models/forms/module.xml. Аналогично другим полям.
3 Добавить поле `titleurl` in line 40 в /administrator/components/com_modules/view/module/tpl/edit.php. Аналогично другим полям.
4.1 Добавить m.titleurl in line 313 в файле libraries/joomla/application/module/helper.php
4.2 Если используется шаблон с t3 framework, то добавить m.titleurl in line 340 в файле /public_html/plugins/system/jat3/jat3/core/joomla/modulehelper.php
5 Добавить вывод в templates/.../html/modules.php переменной $module->titleurl

Вроде ничего не забыл. Пробуйте. Комментируйте.

Цитировать
Stus: Зарубежные коллеги
наверно индусы ))
« Последнее редактирование: 31.08.2012, 17:34:39 от Ctrl_ » Записан
Apoca1ypto
Завсегдатай
*****

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

Пол: Мужской
Сообщений: 617



« Ответ #6 : 16.05.2012, 10:46:32 »

http://joomlaforum.ru/index.php/topic,182570.msg1079433.html#msg1079433
Записан
Dobreff
Давно я тут
****

Репутация: +8/-4
Offline Offline

Сообщений: 212


« Ответ #7 : 03.10.2012, 02:45:25 »


Вроде ничего не забыл. Пробуйте. Комментируйте.

В модуле появилось еще одно поле. Поставил в него урл, но на сайте название меню не кликабельно ((
« Последнее редактирование: 04.10.2012, 20:32:29 от Dobreff » Записан
atombg
Новичок
*

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

Сообщений: 8



« Ответ #8 : 21.01.2013, 21:03:51 »

Рабочий способ добавления ссылки для заголовка при редактировании модуля в админке:

1 Добавить поле `titleurl` в таблицу `#__modules`.
2 Добавить поле `titleurl` в /administrator/components/com_modules/models/forms/module.xml. Аналогично другим полям.
3 Добавить поле `titleurl` in line 40 в /administrator/components/com_modules/view/module/tpl/edit.php. Аналогично другим полям.
4.1 Добавить m.titleurl in line 313 в файле libraries/joomla/application/module/helper.php
4.2 Если используется шаблон с t3 framework, то добавить m.titleurl in line 340 в файле /public_html/plugins/system/jat3/jat3/core/joomla/modulehelper.php
5 Добавить вывод в templates/.../html/modules.php переменной $module->titleurl

Вроде ничего не забыл. Пробуйте. Комментируйте.
 наверно индусы ))

Спасибо, проработало.
Записан
nikonovdv
Новичок
*

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

Сообщений: 6


« Ответ #9 : 05.03.2013, 14:15:36 »

Спасибо конечно, но поля бы описали при добавлении в базу и XML. Чтобы понятнее стало.
Записан
nikonovdv
Новичок
*

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

Сообщений: 6


« Ответ #10 : 05.03.2013, 17:21:14 »

Сам разобрался напишу:

1. Добавить поле `titleurl` в таблицу `#__modules`.
## Делал через phpMyAdmin
Параметры полей такие : (Поле : titleurl Тип: varchar Длинна: 255 По умолчанию : Как определенно Сравнение : utf8_general_ci, остальные пустые)

2 Добавить поле `titleurl` в /administrator/components/com_modules/models/forms/module.xml. Аналогично другим полям.
## Добавил такие строчки
      <field name="titleurl" type="text"
         label="titleurl"
         description="TITLE_URL"
         maxlength="200"
         default="#"
         required="true"
         size="35"
      />

3 Добавить поле `titleurl` in line 40 в /administrator/components/com_modules/view/module/tpl/edit.php. Аналогично другим полям.
## Сюда добавил такие записи

         <li><?php echo $this->form->getLabel('titleurl'); ?>
         <?php echo $this->form->getInput('titleurl'); ?></li>

4.1 Добавить m.titleurl in line 313 в файле libraries/joomla/application/module/helper.php
## Стала такой
$query->select('m.id, m.title, m.titleurl, m.module, m.position, m.content, m.showtitle, m.params, mm.menuid');

4.2 Если используется шаблон с t3 framework, то добавить m.titleurl in line 340 в файле /public_html/plugins/system/jat3/jat3/core/joomla/modulehelper.php
## Нету

5 Добавить вывод в templates/.../html/modules.php переменной $module->titleurl
## Тут строка стала такого вида
         <h3><a href="<?php echo $module->titleurl ?>"><?php echo $module->title; ?></a></h3>

Записан
aniangeless
Осваиваюсь на форуме
***

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

Сообщений: 140



« Ответ #11 : 02.04.2013, 17:03:28 »

Сам разобрался напишу:

1. Добавить поле `titleurl` в таблицу `#__modules`.
## Делал через phpMyAdmin
Параметры полей такие : (Поле : titleurl Тип: varchar Длинна: 255 По умолчанию : Как определенно Сравнение : utf8_general_ci, остальные пустые)

2 Добавить поле `titleurl` в /administrator/components/com_modules/models/forms/module.xml. Аналогично другим полям.
## Добавил такие строчки
      <field name="titleurl" type="text"
         label="titleurl"
         description="TITLE_URL"
         maxlength="200"
         default="#"
         required="true"
         size="35"
      />

3 Добавить поле `titleurl` in line 40 в /administrator/components/com_modules/view/module/tpl/edit.php. Аналогично другим полям.
## Сюда добавил такие записи

         <li><?php echo $this->form->getLabel('titleurl'); ?>
         <?php echo $this->form->getInput('titleurl'); ?></li>

4.1 Добавить m.titleurl in line 313 в файле libraries/joomla/application/module/helper.php
## Стала такой
$query->select('m.id, m.title, m.titleurl, m.module, m.position, m.content, m.showtitle, m.params, mm.menuid');

4.2 Если используется шаблон с t3 framework, то добавить m.titleurl in line 340 в файле /public_html/plugins/system/jat3/jat3/core/joomla/modulehelper.php
## Нету

5 Добавить вывод в templates/.../html/modules.php переменной $module->titleurl
## Тут строка стала такого вида
         <h3><a href="<?php echo $module->titleurl ?>"><?php echo $module->title; ?></a></h3>



У меня нет такого файла. У меня Joomla 2.5.9. Где находится?
Записан
Red-Lolik
Новичок
*

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

Сообщений: 1


« Ответ #12 : 10.05.2013, 12:46:48 »

Рабочий способ добавления ссылки для заголовка при редактировании модуля в админке:

1 Добавить поле `titleurl` в таблицу `#__modules`.
2 Добавить поле `titleurl` в /administrator/components/com_modules/models/forms/module.xml. Аналогично другим полям.
3 Добавить поле `titleurl` in line 40 в /administrator/components/com_modules/view/module/tpl/edit.php. Аналогично другим полям.
4.1 Добавить m.titleurl in line 313 в файле libraries/joomla/application/module/helper.php
4.2 Если используется шаблон с t3 framework, то добавить m.titleurl in line 340 в файле /public_html/plugins/system/jat3/jat3/core/joomla/modulehelper.php
5 Добавить вывод в templates/.../html/modules.php переменной $module->titleurl

Вроде ничего не забыл. Пробуйте. Комментируйте.
 наверно индусы ))
На самом деле ваш способ тоже далек от идеала, т.к. вмешивается в стандартную структуру таблицы Joomla. Это значение надо передавать в имеющуюся колонку params.
Записан
jservice
Осваиваюсь на форуме
***

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

Пол: Мужской
Сообщений: 131


« Ответ #13 : 09.09.2013, 20:59:04 »

На самом деле ваш способ тоже далек от идеала, т.к. вмешивается в стандартную структуру таблицы Joomla. Это значение надо передавать в имеющуюся колонку params.
Все делаю так же не работает не как...
Записан
Xebot
Новичок
*

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

Сообщений: 8


« Ответ #14 : 12.09.2013, 22:50:32 »

что то не получается. проделал все шаги, остановился на последнем. может кто подскажет?
в файле templates/.../html/modules.php кусок кода ответственный за вывод заголовка выглядит немного подругому, не так как в примерах выше, а именно:
echo '<'.($params->get('header_tag', 'h3')).' class="header '.($params->get('header_class', '')).'">'  .$icon.$title.'</'.($params->get('header_tag', 'h3')).'>';

может кто подскажет как сюда вписать чтобы выводило заголовок как ссылку? все остальные шаги я проделал, остался только этот.
Записан
jservice
Осваиваюсь на форуме
***

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

Пол: Мужской
Сообщений: 131


« Ответ #15 : 13.09.2013, 10:08:05 »

Вот хорошее решение сам долго искал... Можно сделать заголовки ссылками путем вставки в заголовки редактор.

cartgen:
 Потребовалось сделать ссылку из заголовка модуля, а Joomla, как известно, чистит HTML тэги.

Решил заменой текстового поля в заголовках на поле редактора.

В файле administrator/components/com_modules/models/forms/module.xml

Заменить:

<field name="title" type="text"
         description="COM_MODULES_FIELD_TITLE_DESC"
         label="JGLOBAL_TITLE"
         maxlength="100"
         required="true"
         size="35"
      />


на:

<field name="title" type="editor" class="inputbox"
         label="JGLOBAL_TITLE" description="COM_MODULES_FIELD_TITLE_DESC"
         filter="JComponentHelper::filterText" buttons="true" />



Теперь можно вставлять любой HTML код.




Ссылка на мануал http://joomlaforum.ru/index.php?topic=255848.0;wap2
« Последнее редактирование: 13.09.2013, 10:25:27 от jservice » Записан
vordoom
Осваиваюсь на форуме
***

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

Сообщений: 26


« Ответ #16 : 29.11.2013, 23:45:43 »

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

В XML файле нужного модуля прописываю 2 поля (можно и одно только ссылку, заголовок брать из названия, но мне так удобнее, потому как название модуля у меня часто отличаются):

Код:
<field
name="add_title"
type="text"
default=""
label="Заголовок"
description="Заголовка модуля" />
<field
name="add_title_link"
type="text"
default=""
label="Ссылка"
description="Ссылка с заголовка модуля" />

Обычно вставляю в секцию advansed, но это опять кому как больше нравится.

И в шаблоне вывода модуля в начале вывода, перед первым Div'ом  следующие:
Код:
<?php if (($params->get('add_title_link'))) : ?>
<h3 class="module-title ">
<a href="<?php echo $params->get('add_title_link'); ?>"><span><?php echo $params->get('add_title'); ?></span></a>
</h3>
<?php endif; ?>
И теперь в модуле, в разделе дополнительные параметры появляются две строчки, "Заголовок" и "Ссылка заголовка".
В данном варианте, если ссылки нету, заголовок не выводится.

Если хотите чтобы заголовок выводился всегда из этой ячейки то заменяем на такой код:
Код:
<h3 class="module-title ">
<?php if (($params->get('add_title_link'))) : ?>

<a href="<?php echo $params->get('add_title_link'); ?>"><span><?php echo $params->get('add_title'); ?></span></a>
<?php else: ?>
        <span><?php echo $params->get('add_title'); ?></span>
<?php endif; ?>
</h3>

И это ни как не повредит движку.
Записан
mart-btl
Захожу иногда
**

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

Сообщений: 13



« Ответ #17 : 05.02.2014, 20:03:06 »

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

В XML файле нужного модуля прописываю 2 поля (можно и одно только ссылку, заголовок брать из названия, но мне так удобнее, потому как название модуля у меня часто отличаются):

Код:
<field
name="add_title"
type="text"
default=""
label="Заголовок"
description="Заголовка модуля" />
<field
name="add_title_link"
type="text"
default=""
label="Ссылка"
description="Ссылка с заголовка модуля" />

Обычно вставляю в секцию advansed, но это опять кому как больше нравится.

И в шаблоне вывода модуля в начале вывода, перед первым Div'ом  следующие:
Код:
<?php if (($params->get('add_title_link'))) : ?>
<h3 class="module-title ">
<a href="<?php echo $params->get('add_title_link'); ?>"><span><?php echo $params->get('add_title'); ?></span></a>
</h3>
<?php endif; ?>
И теперь в модуле, в разделе дополнительные параметры появляются две строчки, "Заголовок" и "Ссылка заголовка".
В данном варианте, если ссылки нету, заголовок не выводится.

Если хотите чтобы заголовок выводился всегда из этой ячейки то заменяем на такой код:
Код:
<h3 class="module-title ">
<?php if (($params->get('add_title_link'))) : ?>

<a href="<?php echo $params->get('add_title_link'); ?>"><span><?php echo $params->get('add_title'); ?></span></a>
<?php else: ?>
        <span><?php echo $params->get('add_title'); ?></span>
<?php endif; ?>
</h3>

И это ни как не повредит движку.


Здравствуйте!
Будьте дообры пропишите пути файлов куда записать Ваши кодики.
Заранее благодарен!
Записан
ArieZ
Осваиваюсь на форуме
***

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

Пол: Мужской
Сообщений: 48



« Ответ #18 : 01.05.2014, 12:36:44 »

А в J3.3.0 технология (от vordoom) та же или нет? Пробую по инструкции, но что-то не отображается((
Записан
vordoom
Осваиваюсь на форуме
***

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

Сообщений: 26


« Ответ #19 : 08.05.2014, 15:50:37 »

честно говоря 3.3. еще не юзал, если даш доступ к ftp то посмотрю, но отличий особо не должно быть. В личку можешь написать.
Записан
vordoom
Осваиваюсь на форуме
***

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

Сообщений: 26


« Ответ #20 : 08.05.2014, 15:55:38 »

mart-btl Все зависит от модуля, в каждом модуле есть свой XML файл он совпадает с название модуля. Шаблон лежит в папке tpl данного модуля, по умолчанию default.php
Записан
martini
Осваиваюсь на форуме
***

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

Сообщений: 92



« Ответ #21 : 17.03.2016, 00:05:31 »

vordoom лучший, идеальное и простое решение
Записан
IrochkaStep
Осваиваюсь на форуме
***

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

Пол: Женский
Сообщений: 188


Настроение супер! Чего и всем желаю!


« Ответ #22 : 24.03.2016, 13:09:18 »

Для Joomla 3 решение тоже подошло, спасибо,  vordoom!
Записан
pulmar
Захожу иногда
**

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

Сообщений: 14


« Ответ #23 : 05.06.2016, 16:04:08 »

Joomla 3.5 вставляю код в default.php перед первым Div, страница сайта перестает загружаться. Подскажите пожалуйста в чём может быть проблема? Sad
Записан
step-di
Осваиваюсь на форуме
***

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

Сообщений: 67


« Ответ #24 : 17.08.2016, 13:49:37 »

Joomla 3.5

Способ 1
В компоненте Advanced Module Manager - Настройки включаю Дополнительные параметры
Указываю какие дополнительные параметры мне для модулей нужны (можно указать до 5 шт.)
В файле html/modules.php lдобавляю функцию, например, modChrome_headerlink, в ней добавляю логику типа
Код:
if (isset(($params->get('extra1')) and $params->get('extra1')) { echo '<a href="'.$params->get('extra1').'">' ..... '</a>'; }
В каждом модуле появляются поля созданных параметров. При необходимости заполняю их. Согласно имени функции выбираю стиль модуля headerlink

Способ 2
в редакторе каждого модуля есть поля HTML до и HTML после. Можно в них вставить HTML-код.
« Последнее редактирование: 17.08.2016, 14:15:51 от step-di » Записан
Страниц: [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