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

hmarno

  • Осваиваюсь на форуме
  • 91
  • -1
Здравствуйте. В Joomla при переходе в блоге категории на страницы 1 2 3 4 и т.д., в url прописываются что то вроде http://site.ru/recepty?start=4 и у всех таких страниц одинаковый Title и Descriptions, что не есть хорошо для SEO.
Нашел в интернете вот такой код, который дописывает к основному title и descriptions - Страница 1, Страница 2 и т.д.

Код
<?php
$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 / $row_count + 1;
$this->setTitle( $title.' - '.'Страница '.$mpPageID);
$this->setMetaData( 'og:title', $title.' - '.'Страница '.$mpPageID );
if ($pageDescription) {
$this->setMetaData( 'description', $pageDescription.' - '.'Страница '.$mpPageID, true );
$this->setMetaData( 'og:description', $pageDescription.' - '.'Страница '.$mpPageID, true );
}
} ?>

но он в Joomla 3.4.8 выдает ошибку - Warning: Division by zero in C:\OpenServer\domains\recerty\templates\koolinar\index.php on line 19
Понимаю исходя из перевода, что связано как то с делением на 0, просто я не силен в php, подскажите что нужно подправить в коде, буду очень благодарен.
*

hmarno

  • Осваиваюсь на форуме
  • 91
  • -1
*

evgen777

  • Завсегдатай
  • 667
  • 60
Код
$row_count + 1;
$row_count = null скорее всего
Сделайте var_dump($row_count)
Разработка, доработка расширений для Joomla!
Рекомендую доступные VPS для Joomla
*

hmarno

  • Осваиваюсь на форуме
  • 91
  • -1
Код
$row_count + 1;
$row_count = null скорее всего
Сделайте var_dump($row_count)

Он по прежнему ругается на 19 строку:
Код
$mpPageID = $mpPageID / $row_count + 1;
*

hmarno

  • Осваиваюсь на форуме
  • 91
  • -1
Все, разобрался, нашел другое решение. Может кому пригодится. Работает на Joomla 3.4.8
Код
<?php 
$limit = JFactory::getApplication()->input->getInt('limitstart', 0);
if ($limit){
$document = JFactory::getDocument();
$mytitle = $document->getTitle();
$desc = $document->getMetadata('description');
$numpage = $limit / 10 + 1; //Здесь количество материалов на странице 10
$titletext =' - страница '.$numpage;
$document->setTitle($mytitle.$titletext);
$document->setMetadata('description', $desc.$titletext);
}
?>

Вставляем в index.php вашего шаблона.
*

prostoy

  • Давно я тут
  • 355
  • 4
  • Истина где то рядом.
Добрый день!
Подскажите куда конкретно надо вставить этот код?
До  </head>  ?
*

ice99

  • Осваиваюсь на форуме
  • 91
  • 2
Добрый день!
Подскажите куда конкретно надо вставить этот код?
До  </head>  ?

До
Код
<!DOCTYPE html>
я бы даже сказал.
А проблема деления на 0 - это проблема получения
Код
get('num_leading_articles');
Хотя в настройках блога это указано.
Решил проблему вручную прописав значение $row_count вручную.
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться