Новости Joomla

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

Serafon

  • Захожу иногда
  • 55
  • 5 / 0
Доброго времени суток уважаемые знатоки!
Как известно, поисковики не любят одинаковый title на разных страницах.
Но из-за пагинации на доске объявлений, один и тот же title повторяется не зависимо от страницы просмотра.

Может кто подскажет, как сделать автоматическое добавление номера страницы к title начиная с перехода на вторую страницу? Требуется что-то типа (пример):

первая страница: title: Услуги
вторая страница: title: Услуги - страница №2
третья страница: title: Услуги - страница №3
и т.д.

Подозреваю, что нужно добавить что-то в строчку, которая начинается с $document->setTitle ....... в файле view.html.php по пути Сайт/components/com_adsmanager/views/list/, вот только что?

Система: Joomla 2.5 + AdsManager 2.9.5 ( для уточнения)

Буду благодарен за помощь!  *DRINK*
« Последнее редактирование: 23.07.2014, 23:41:16 от Serafon »
*

max_1985

  • Давно я тут
  • 611
  • 56 / 0
Re: Добавление в title номера страницы
« Ответ #1 : 23.07.2014, 10:35:05 »
а по моему надо править index.php шаблона
*

Serafon

  • Захожу иногда
  • 55
  • 5 / 0
Re: Добавление в title номера страницы
« Ответ #2 : 23.07.2014, 16:00:45 »
а по моему надо править index.php шаблона
А не подскажешь, что именно править и как?)
Спасибо!
*

Serafon

  • Захожу иногда
  • 55
  • 5 / 0
Re: Добавление в title номера страницы
« Ответ #3 : 23.07.2014, 23:46:37 »
А не подскажешь, что именно править и как?)
Спасибо!
Разобрался! Тему можно закрывать!
*

Негодяй

  • Захожу иногда
  • 117
  • 9 / 1
Re: Добавление в title номера страницы
« Ответ #4 : 24.07.2014, 08:43:40 »
Как сделал?
*

Serafon

  • Захожу иногда
  • 55
  • 5 / 0
Re: Добавление в title номера страницы
« Ответ #5 : 24.07.2014, 14:17:19 »
Как сделал?

Писать много, но ладно, попытаюсь рассказать...

В общем max_1985 в очередной раз помог, за что ему огромное спасибо и дал мне код такого вида:

Код
<?php
defined('_JEXEC') or die;
$app = JFactory::getApplication();

$mpPageID          = JRequest::getInt( 'start' );

$componentParams = $app->getParams('com_content');
$row_count = $componentParams->get('num_leading_articles');

$title = $this->getTitle();
$pageDescription  = $this->getMetaData('description');

if ($mpPageID > 1)
{
$mpPageID = ($mpPageID / 20) + 1;
    $this->setTitle( $title.' - '.'страница '.$mpPageID);

    if ($pageDescription) {
         $this->setMetaData( 'description',  $pageDescription.' - '.'страница '.$mpPageID, true );
}
} ?>

Есть два варианта его использования:
Первый вариант - правильный (советую начинать с него): вставить его (этот код) между тэгами <body></body> в index.php вашего шаблона.

*У меня в index.php шаблона тэгов <body></body> вообще не оказалось. Я в самом верху данного документа создал эти тэги в ручную и вставил этот код. Код заработал и на сайте к тайтлу и дескрипшину при переходе на вторую страницу и дальше начало добавлять фразы "- Страница 2", "- Страница 3" и т.д. Но при этом у меня посыпался весь шаблон сайта (начало все криво отображаться), не знаю почему.
В общем, советую попробовать этот вариант, если не прокатит, то читать далее!


Не прокатило? Ну поехали танцевать с бубном! :))))

Второй вариант (постараюсь написать его очень подробно): как я и предполагал в своем вопросе, что менять нужно тут и потанцевав пол вечера с бубном у меня вышло... так вот, ищите строчку, которая начинается с $document->setTitle ....... в файле view.html.php по пути Сайт/components/com_adsmanager/views/list/
*Не пишу всю строчку целиком, так как это и есть тайтл, который будет формироваться в списке категорий и у меня она изменена по моему вкусу (я добавил туда еще автоматическое добавление название сайта) - у вас она выглядит по-своему, но начинается так, как я написал...
Дальше по пунктам:
1)Скопируйте эту строчку и вставьте на время, к примеру, в блокнот где-то на компе (она Вам понадобится дальше)...
2) Вместо нее вставьте код:
Код
defined('_JEXEC') or die;
$app = JFactory::getApplication();

$mpPageID          = JRequest::getInt( 'start' );

$componentParams = $app->getParams('com_content');
$row_count = $componentParams->get('num_leading_articles');
3) Скопируйте в блокноте ваш временно сохраненный тайтл и вставьте ниже этого кода (следующей строчкой)
4) Ниже (следующей строчкой) вставьте код:
Код
if ($mpPageID > 1) 
{
$mpPageID = ($mpPageID / 10) + 1;
P.S.: в строчке
Код
$mpPageID = ($mpPageID / [color=red]20[/color]) + 1;
цифру 20 замените на то значение, сколько  объявлений показывается у вас на одной странице (у меня - 10, поэтому я там 10 поставил).[/i]
5) Снова скопируйте в блокноте ваш временно сохраненный тайтл и вставьте ниже этого кода (следующей строчкой) и допишите к нему (в этой же строчке) код:
Код
(' - '.'страница № '.$mpPageID);
6) Ниже (следующей строчкой) вставьте код:
Код
}
*Опять же, не гарантирую, что в 5 пункте вы не ошибетесь, так как мой тайтл изменен и отличается от вашего и может быть, что вы пропишите немного неправильно... Даю ниже для примера свой тайтл (почти весь, убираю только название сайта, но и без него должно работать):
Код
$document->setTitle( JText::_(). JText::_($category->name). (' - '.'страница № '.$mpPageID);
- можете использовать его, но в таком случае у вас тайтл будет браться с названия категории и в нем не будет дописываться фраза "Объявления -" как было в стандартной версии... Но если будете брать данный тайтл, то в п.3 данной инструкции пишите не тот, что скопировали у себя, а этот:
Код
$document->setTitle( JText::_(). JText::_($category->name);

P.S.:
2) Слово "Страница" в коде, можете заменить на свое значение (к примеру, "Стр." или "Стр. №" - по вашему желанию).

В общем много букв, знаю... но попытался разжевать как мог... кстати, по моей инструкции работает только с тайтлом, а description остается неизменным на всех страницах, увы... удачи!  ;)
« Последнее редактирование: 24.07.2014, 14:49:54 от Serafon »
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Защита номера телефона от парсеров

Автор Mick_20

Ответов: 7
Просмотров: 2162
Последний ответ 31.05.2017, 13:44:43
от fsv
Скрыть часть номера телефона в объявлении

Автор djsante

Ответов: 3
Просмотров: 4060
Последний ответ 30.05.2017, 12:18:42
от SeBun
Модуль поиска - не сбрасываются результаты при переходе на другие страницы

Автор Ingener

Ответов: 9
Просмотров: 2090
Последний ответ 13.11.2016, 21:20:21
от moonaway
Как сделать обязательным полем добавление изображений в AdsManager?

Автор fishak87

Ответов: 1
Просмотров: 1285
Последний ответ 04.02.2016, 16:43:18
от gertruda
создание второй страницы с AdsManager

Автор SerGunSter

Ответов: 0
Просмотров: 1089
Последний ответ 14.01.2016, 16:42:23
от SerGunSter