Новости Joomla

0 Пользователей и 1 Гость просматривают эту тему.
  • 8 Ответов
  • 2509 Просмотров
*

somick

  • Захожу иногда
  • 105
  • 8 / 0
Вопрос такой возник, без помощи зала че-т я не осилил. Имеем страницу, отображенную в виде блога. Допустим, это "Главная". Необходимо организовать навигацию по странице при помощи некоего модуля с меню. Получается, что материалы должны иметь некий якорь, на который можно сделать ссылку.

Способ, который пришел на ум мне: вставлять перед заголовком что-то типа <a name="$id_материала">, и переделать mod_latestnews, чтобы ссылки были вида <a href="$id_материала"></a>.

Но пошарившись по форумы в поисках ответа на вопрос "в какой переменной содержится ID и как его вызвать на странице", я понял, что это очень геморойный вариант. Может, есть какой-то более стандартный способ? Может, расширение какое-то...
« Последнее редактирование: 02.09.2010, 21:46:49 от 4webspot »
*

effrit

  • Легенда
  • 10132
  • 1118 / 13
  • effrit.com
*

somick

  • Захожу иногда
  • 105
  • 8 / 0
Re: Навигация по странице блога
« Ответ #2 : 23.05.2010, 16:17:38 »
не понял, чем не подходит ID статьи как уникальный якорь?
http://joomlaforum.ru/index.php/topic,95604.new.html
перекрываешь шаблон блога своим и модуль хакаешь
Дело в том, что для вызова ID статьи нужно иметь базовые знания в PHP, а я только синтаксис немного, не то чтобы понимаю, пугаться перестал недавно :) Темку я не видел, сейчас буду разбираться.

Пока что я нашел вот какой вариант для нешарящих в ПХП. Может, пригодится кому-то.  Есть в HTML папке шаблона  такой код (в соответствующем файле):
Код
		<a href="<?php echo $this->item->readmore_link; ?>" class="contentpagetitle<?php echo $this->escape($this->item->params->get( 'pageclass_sfx' )); ?>">
<?php echo $this->escape($this->item->title); ?></a>
<?php else : ?>
<?php echo $this->escape($this->item->title); ?>
Это он показывает заголовок страниц. Заменить на
Код
		<a href="<?php echo $this->item->readmore_link; ?>" class="contentpagetitle<?php echo $this->escape($this->item->params->get( 'pageclass_sfx' )); ?>">
<?php echo $this->escape($this->item->title); ?></a>
<?php else : ?>
<a name="<?php echo $this->escape($this->item->title); ?>"></a><?php echo $this->escape($this->item->title); ?>

Oстанется сделать ссылку в меню такого вида: #Заголовок. И не юзать в заголовках такие кавычки -".

Или, если меню не устраивает ковырнуть mod_latestnews в папке tmpl, файле default.php
Цитировать
<?php foreach ($list as $item) :  ?>
   <li class="latestnews<?php echo $params->get('moduleclass_sfx'); ?>">
      <a href="<?php echo $item->link; ?>" class="latestnews<?php echo $params->get('moduleclass_sfx'); ?>">
         <?php echo $item->text; ?></a>
   </li>
<?php endforeach; ?>
заменить на:
Цитировать
<?php foreach ($list as $item) :  ?>
   <li class="latestnews<?php echo $params->get('moduleclass_sfx'); ?>">
      <a href="#<?php echo $item->text; ?>" class="latestnews<?php echo $params->get('moduleclass_sfx'); ?>">
         <?php echo $item->text; ?></a>
   </li>
<?php endforeach; ?>
Тоже работает. И главное - никакого PHP знать не надо.

Пойду осиливать код. По ID все-таки элегантнее.  Спасибо.
« Последнее редактирование: 23.05.2010, 16:37:00 от somick »
*

effrit

  • Легенда
  • 10132
  • 1118 / 13
  • effrit.com
Re: Навигация по странице блога
« Ответ #3 : 23.05.2010, 16:46:29 »
ну тебе осталось в шаблон (blog_item.php) дописать в нужном месте вызов
<?php echo $this->item->id; ?>
и будет тебе уникальный номер
*

somick

  • Захожу иногда
  • 105
  • 8 / 0
Re: Навигация по странице блога
« Ответ #4 : 23.05.2010, 17:05:06 »
ну тебе осталось в шаблон (blog_item.php) дописать в нужном месте вызов
<?php echo $this->item->id; ?>
и будет тебе уникальный номер
Во! Вот именно это я и искал. Спасибо. +
Я-то по темности своей его через $id пытался везде вызвать :)
*

Igoritaly

  • Давно я тут
  • 659
  • 2 / 0
Re: Навигация по странице блога
« Ответ #5 : 02.09.2010, 21:35:02 »
ну тебе осталось в шаблон (blog_item.php) дописать в нужном месте вызов
<?php echo $this->item->id; ?>
и будет тебе уникальный номер

А какой уникальный номер прописывать? Если меню много? и в какое нужное место?
*

Igoritaly

  • Давно я тут
  • 659
  • 2 / 0
Re: Навигация по странице блога
« Ответ #6 : 02.09.2010, 21:42:44 »
Есть в HTML папке шаблона  такой код (в соответствующем файле):
Код
		<[quote author=somick link=topic=115108.msg632157#msg632157 date=1274617058]

В каком именно файле менять? Там три файла с таким же кодом:
components\com_content\views\category\tmpl\blog_item.php
components\com_content\views\section\tmpl\blog_item.php
components\com_content\views\fronypage\tmpl\default_item.php


[/quote]
*

effrit

  • Легенда
  • 10132
  • 1118 / 13
  • effrit.com
А какой уникальный номер прописывать? Если меню много? и в какое нужное место?
эти строки сами тебе выдадут уникальный номер СТАТЬИ (ID стаьи)
тебе его надо просто дооформить, чтобы якорь получился
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Как поменять положения баннера на странице?

Автор Lzrv

Ответов: 2
Просмотров: 4569
Последний ответ 12.12.2017, 12:22:55
от Lzrv
Вопрос по настройке новостной ленты на главной странице сайта

Автор jaff

Ответов: 13
Просмотров: 7710
Последний ответ 15.09.2017, 15:49:19
от sect
Нагрузка на сервер - РЕШЕНО

Автор se_demon

Ответов: 20
Просмотров: 7516
Последний ответ 13.08.2016, 13:55:25
от Escander
Как сделать на странице ссылку на скачивание файла с хостинга?

Автор lsd77777

Ответов: 19
Просмотров: 17993
Последний ответ 27.07.2016, 01:58:03
от SokoloWWW
Изменить ширину колонки на главной странице

Автор dmalexandrov

Ответов: 5
Просмотров: 2117
Последний ответ 18.11.2015, 13:17:29
от umbabaraumba