Ответить Новая тема Новый опрос 
 Повторяющиеся заголовки/title.Как добавить номер
Excursionist
Новичок
Сообщений: 21
Регистрация: 10-07-2015


14-07-2015 21:02
Повторяющиеся заголовки/title. Как добавить номер страницы «n»?

Суть в чем: есть страницы пагинации, например

страница-1
страница-2
страница-n

как сделать так, чтобы в мета-тегах для второй страницы title формировался "название страницы (2)"

для третьей
"название страницы (3)"

для четвертой:
"название страницы (4)"

для n-ой:
"название страницы (n)"

Как это сделать?
 
Вне форума
ПМ Отправить эл.сообщение 
Щелкните, и это сообщение будет добавлено в ваш ответ как цитата Цитировать этот ответ
Алекс


Администратор
Сообщений: 4516
Откуда: Красноярск
Регистрация: 29-05-2009


14-07-2015 21:41
Цитата:( Excursionist @ 14-07-2015 22:02 Смотреть сообщение )
Как добавить номер страницы «n»?
Это стандартный функционал на PrestaShop следующих версий: 1.4 и 1.5 и 1.6.

Изменить формат можно в файле /classes/Tools.php метод: getMetaTags
 
Вне форума
ПМ Отправить эл.сообщение 
Щелкните, и это сообщение будет добавлено в ваш ответ как цитата Цитировать этот ответ
Excursionist
Новичок
Сообщений: 21
Регистрация: 10-07-2015


14-07-2015 21:56
Да, у меня как раз версия 1.4.4, но на страницах типа

?p=2
?p=3
и так далее

все равно в meta-title указывается "название_старницы", а не "название_старницы (2)" и т.д.
 
Вне форума
ПМ Отправить эл.сообщение 
Щелкните, и это сообщение будет добавлено в ваш ответ как цитата Цитировать этот ответ
Алекс


Администратор
Сообщений: 4516
Откуда: Красноярск
Регистрация: 29-05-2009


14-07-2015 22:14
Цитата:( Excursionist @ 14-07-2015 22:56 Смотреть сообщение )
у меня как раз версия 1.4.4, но

Для prestashop 1.4.0.4 данный функционал не встроен:
Откройте файл /classes/Tools.php
Код:
elseif ($id_category = self::getValue('id_category'))
{
    $row = Db::getInstance(_PS_USE_SQL_SLAVE_)->getRow('
    SELECT `name`, `meta_title`, `meta_description`, `meta_keywords`, `description`
    FROM `'._DB_PREFIX_.'category_lang`
    WHERE id_lang = '.(int)($id_lang).' AND id_category = '.(int)($id_category));
    if ($row)
    {
        if (empty($row['meta_description']))
            $row['meta_description'] = strip_tags($row['description']);
        return self::completeMetaTags($row, $row['name']);
    }
}
замените на:
Код:
elseif ($id_category = self::getValue('id_category'))
{
    if (!empty($title))
        $title = ' - '.$title;
    $page_number = (int)self::getValue('p');
    $row = Db::getInstance(_PS_USE_SQL_SLAVE_)->getRow('
    SELECT `name`, `meta_title`, `meta_description`, `meta_keywords`, `description`
    FROM `'._DB_PREFIX_.'category_lang`
    WHERE id_lang = '.(int)$id_lang.' AND id_category = '.(int)$id_category);
    if ($row)
    {
        if (empty($row['meta_description']))
            $row['meta_description'] = strip_tags($row['description']);

        // Paginate title
        if (!empty($row['meta_title']))
            $row['meta_title'] = $title.$row['meta_title'].(!empty($page_number) ? ' ('.$page_number.')' : '').' - '.Configuration::get('PS_SHOP_NAME');
        else
            $row['meta_title'] = $row['name'].(!empty($page_number) ? ' ('.$page_number.')' : '').' - '.Configuration::get('PS_SHOP_NAME');

        if (!empty($title))
            $row['meta_title'] = $title.(!empty($page_number) ? ' ('.$page_number.')' : '').' - '.Configuration::get('PS_SHOP_NAME');

        return self::completeMetaTags($row, $row['name']);
    }
}
 
Вне форума
ПМ Отправить эл.сообщение 
Щелкните, и это сообщение будет добавлено в ваш ответ как цитата Цитировать этот ответ
Excursionist
Новичок
Сообщений: 21
Регистрация: 10-07-2015


14-07-2015 22:26
Алекс, да, вы как всегда правы).
Спасибо, все заработало.
 
Вне форума
ПМ Отправить эл.сообщение 
Щелкните, и это сообщение будет добавлено в ваш ответ как цитата Цитировать этот ответ
Ответить Новая тема Новый опрос