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

ELLE

  • Глобальный модератор
  • 4510
  • 893 / 0
Poznakomlus, в данном случае можно и через API, думаю разницы особой нет.

Но, чем мне еще нравится первый вариант $_SERVER['REQUEST_URI'] - можно задавать любые урлы, например, использую для вывода разного контента (или оставляю описание только на главной странице) в блоге, т.е. при переходе на вторую, третью и т.д. стр-цы пагинации у меня либо вообще нет описание или оно разное для всех этих страниц.

+ также можно сделать тайтлы (только я еще не пробовала) в зависимости от страницы ?limitstart=20 или ?limitstart=40 и т.д. можно сделать - "Каталог магазина - страница 2", "Каталог магазина - страница 3" - уже уникально будет, а если еще подумать, то их вообще можно сделать входными;и вместо того чтобы болтаться в "соплях", они нам еще и траф будут приносить ;)

Но это так - мысли в слух))
« Последнее редактирование: 12.08.2013, 16:38:33 от ELLE »
*

Fedor Vlasenko

  • Живу я здесь
  • 3845
  • 733 / 7
  • https://fedor-vlasenko.web.app
Варианты пагинации
« Ответ #1 : 19.08.2012, 01:31:07 »
Цитировать
+ также можно сделать тайтлы (только я еще не пробовала)
Где-то на форуме уже писал решение. Долго искал не нашел и за пару минут написал вновь
Код: php
<?php 
$limit =  JFactory::getApplication()->input->getInt('limitstart', 0);
if ($limit){
$document =  JFactory::getDocument();
$mytitle = $document->getTitle();
$desc = $document->getMetadata('description');
$numpage = $limit / 10; //Здесь колличество материалов на странице 10
$titletext =' - страница '.$numpage;
$document->setTitle($mytitle.$titletext);
$document->setMetadata('description', $desc.$titletext);
}
?>
Не проверял, но должно работать на уровне шаблона к примеру
*

ELLE

  • Глобальный модератор
  • 4510
  • 893 / 0
Варианты пагинации
« Ответ #2 : 19.08.2012, 01:41:53 »
ага, оно.

Но я больше склоняюсь к ручному варианту. Пример можно посмотреть на http://www.wildberries.ru/ если пройтись по пагинации какого-либо раздела. Может дополнение такое попросить у разработчиков, через админку все же удобнее.

Где-то на форуме уже писал решение. Долго искал не нашел и за пару минут написал вновь
Да уж...в конец за*рали форум, я только по +ам и ориентируюсь - где-какие решения даешь.
*

andrea2509

  • Захожу иногда
  • 108
  • 5 / 0
ELLE

а куда этот код вставить, подскажите пожалуйста непрограмисту

<?php if ($_SERVER['REQUEST_URI'] == '/katalog?start=24') { $document->setTitle('Мой тайтл');
*

ELLE

  • Глобальный модератор
  • 4510
  • 893 / 0
*

andrea2509

  • Захожу иногда
  • 108
  • 5 / 0
А этот тогда куда? :)

<?php $limit = JRequest::getInt('limitstart',0);if ($limit > 0){$document = & JFactory::getDocument();$mytitle = $document->getTitle();$desc = $document->getMetadata('description');$numpage = $limit / 10; //Здесь колличество материалов на странице 10$titletext =' - страница '.$numpage;$document->setTitle($mytitle.$titletext);$document->setMetadata('description', $desc.$titletext);}?>
*

ELLE

  • Глобальный модератор
  • 4510
  • 893 / 0
*

Vasiliy111

  • Захожу иногда
  • 248
  • 5 / 0
использовал первый код, все работает (к description и title прибавляется - страница 1). Но есть небольшое несоответствие, счет начинается с первой страницы в то время когда я нахожусь на второй, то есть нахожусь на странице 2 в  title пишет - страница 1, а нужно - страница 2.

пробовал менять в коде 0 на 1 не получилось решить.
*

dmitry_stas

  • Легенда
  • 13151
  • 1234 / 8
Тут дарят бакс просто за регистрацию! Успей получить!
Все советы на форуме раздаю бесплатно, то есть даром. Индивидуально бесплатно консультирую только по вопросам стоимости индивидуальных консультаций
*

Vasiliy111

  • Захожу иногда
  • 248
  • 5 / 0
Цитировать
$numpage = $limit / 10 + 1;
работает! ^-^
*

graf

  • Захожу иногда
  • 195
  • 0 / 0
<?php if ($_SERVER['REQUEST_URI'] == '/katalog?start=24') { $document->setTitle('Мой тайтл');}?>
а как правильно вставить в данный кусок код чтобы можно было прописать в ручную description и keywords? например  (...description('мое описание'))
*

graf

  • Захожу иногда
  • 195
  • 0 / 0
*

Fedor Vlasenko

  • Живу я здесь
  • 3845
  • 733 / 7
  • https://fedor-vlasenko.web.app
Код: php-brief
<?php
if ($_SERVER['REQUEST_URI'] == '/katalog?start=24')
{
$doc->setTitle('Мой тайтл');
$doc->setMetadata('keywords', 'Ключевые слова');
$doc->setMetadata('description', 'Описание');
}
?>
-----------------------------------------------------------------------------------------------
Так можно в блоге категории или категории прописать заголовки
Код: php-brief
<?php
$app = JFactory::getApplication();
$doc = JFactory::getDocument();
if ($app->input->getInt('limitstart',0))
 {
    $meTitle = $doc->getTitle().' / '.$this->pagination->getPagesCounter();
    $doc->setTitle($meTitle);
 }
?>
*

kurandin

  • Захожу иногда
  • 159
  • 5 / 0
Если бы это оформит плагином - цены бы не было!
*

ELLE

  • Глобальный модератор
  • 4510
  • 893 / 0
Если бы это оформит плагином - цены бы не было!
угу, кто бы еще оформил ))
аналоги есть, но все они больно тяжелые и имеют излишний функционал

если сохранять пользовательские значения title, то только в БД, а это значит что потребуется написание хоть и простенького, но компонента, + доп. нагрузка будет - запрос туда\сюда, обработка ну и все равно утяжелит
насчет плагина не уверена.
плагином можно только пронумеровать страницы - см. прим. #1
« Последнее редактирование: 10.05.2013, 00:35:12 от ELLE »
*

skyrec

  • Захожу иногда
  • 382
  • 10 / 0
  • Люблю я детей !!!
Может я чего то не понимаю, а вобщем то зачем все это ? Можно же указать в вебмастере страницы пагинации, они вроде все хорошо понимают.
*

Msvirin

  • Новичок
  • 1
  • 0 / 0
Доброго времени суток! Помоги пожалуйста, не могу разобраться куда именно вставлять приведенные коды, вставляю в шаблон главной страницы, сайт вырубается, напишите более подробно что куда вставлять  :'(, второй день ковыряю, нечего не получается :(, в программирование я не селен.
сайт: salon-keramiki.ru, Joomla! 2.5.9 Stable + JoomShopping 3.14.0
« Последнее редактирование: 07.06.2013, 13:31:59 от Msvirin »
*

zemelea

  • Осваиваюсь на форуме
  • 48
  • 0 / 0
После прочтения данной темы осуществил подобное, но пока что сделал чтоб описание категории было доступно только на первой странице, а начиная со второй к тайтлу добавляется " - Страница 2", " - Страница 3" и тд. В кейвордах и описании тоже самое. Минус в том, что если изменить количество выводов товаров на странице - то всё это поломается)). В планах сделать чтоб всё это регулировалось из админки и можно было для каждой страницы делать свое описание + свой тайтл и кейворды, и чтоб подсчет страниц автоматом осуществлялся ориентируясь на количество вывода товаров в определенной категории. Если доведу до конца, поделюсь наработками.
*

ELLE

  • Глобальный модератор
  • 4510
  • 893 / 0
Да, расширения и так есть готовые...взять тот же sh404, видела отдельные плагины на JED, которые делают " - Страница 2", " - Страница 3"
Поищите, зачем велосипедить

http://extensions.joomla.org/extensions/site-management/seo-a-metadata/title-management
« Последнее редактирование: 12.08.2013, 16:38:15 от ELLE »
*

gurkin

  • Осваиваюсь на форуме
  • 26
  • 4 / 0
Если пользователь меняет количество выводимого на страницу товара - вся арифметика ($numpage = $limit / 10 + 1;) вдребезги

Поэтому вытягиваем из настроек дж.шоппинга к-во товара и дальше по формуле

добавляем в list_products.php (именно добавляем в конец файла)

Код
<?php 
$limit = JRequest::getInt('limitstart',0);
if ($limit > 0){
$document = & JFactory::getDocument();
$mytitle = $document->getTitle();
$desc = $document->getMetadata('description');

$selector = $this->product_count;
preg_match('|"selected">(\d*)|sei', $selector, $arr);

$numpage =  $limit / $arr[1] +1;
$titletext =' *** - страница '.$numpage;

$document->setTitle($mytitle.$titletext);
$document->setMetadata('description', $desc.$titletext);

}?>
*

dmitry_stas

  • Легенда
  • 13151
  • 1234 / 8
ну это больше нужно поисковикам, а не пользователям. наврядли пользователь заметит при изменении кол-ва товаров на странице, что в заголовке стало страница 2.5 :) но в целом поправки конечно верные. единственное что, зачем такой изысканный способ выдергивания кол-ва товаров на странице? :)
Тут дарят бакс просто за регистрацию! Успей получить!
Все советы на форуме раздаю бесплатно, то есть даром. Индивидуально бесплатно консультирую только по вопросам стоимости индивидуальных консультаций
*

gurkin

  • Осваиваюсь на форуме
  • 26
  • 4 / 0
...единственное что, зачем такой изысканный способ выдергивания кол-ва товаров на странице? :)
буду рад, если научите, как сделать проще
*

dmitry_stas

  • Легенда
  • 13151
  • 1234 / 8
Код
print_r($this->pagination_obj)
Тут дарят бакс просто за регистрацию! Успей получить!
Все советы на форуме раздаю бесплатно, то есть даром. Индивидуально бесплатно консультирую только по вопросам стоимости индивидуальных консультаций
*

kurandin

  • Захожу иногда
  • 159
  • 5 / 0
Если пользователь меняет количество выводимого на страницу товара - вся арифметика ($numpage = $limit / 10 + 1;) вдребезги

Поэтому вытягиваем из настроек дж.шоппинга к-во товара и дальше по формуле

добавляем в list_products.php (именно добавляем в конец файла)

Код
<?php 
$limit = JRequest::getInt('limitstart',0);
if ($limit > 0){
$document = & JFactory::getDocument();
$mytitle = $document->getTitle();
$desc = $document->getMetadata('description');

$selector = $this->product_count;
preg_match('|"selected">(\d*)|sei', $selector, $arr);

$numpage =  $limit / $arr[1] +1;
$titletext =' *** - страница '.$numpage;

$document->setTitle($mytitle.$titletext);
$document->setMetadata('description', $desc.$titletext);

}?>

как это сделать и для keywords и description?
*

raskolbas

  • Новичок
  • 8
  • 0 / 0
в index.php шаблона Joomla можно
вставил строчку <?php if ($_SERVER['REQUEST_URI'] == '/katalog?start=24') { $document->setTitle('Мой тайтл');}?> в /templates/rt_fresco/index.php но получаю ошибку: Call to a member function setTitle() on a non-object in.
Я так понимаю что не может найти функцию setTitle(). Подскажите, пожалуйста, как исправить?
*

gurkin

  • Осваиваюсь на форуме
  • 26
  • 4 / 0
вставил строчку <?php if ($_SERVER['REQUEST_URI'] == '/katalog?start=24') { $document->setTitle('Мой тайтл');}?> в /templates/rt_fresco/index.php но получаю ошибку: Call to a member function setTitle() on a non-object in.
Я так понимаю что не может найти функцию setTitle(). Подскажите, пожалуйста, как исправить?

$doc->setTitle('Мой тайтл'); или $document->setTitle('Мой тайтл'); вот в чем вопрос
*

raskolbas

  • Новичок
  • 8
  • 0 / 0
$doc->setTitle('Мой тайтл'); или $document->setTitle('Мой тайтл'); вот в чем вопрос
не понял что сделать. у меня стоит $document->setTitle('Мой тайтл').
попробовал поменять на $doc->setTitle('Мой тайтл').
Ошибка та же:Call to a member function setTitle() on a non-object in...
*

raskolbas

  • Новичок
  • 8
  • 0 / 0
Надо вначале дописать  $document = JFactory::getDocument();
спасибо, помогло ошибка исчезла.
*

Sedoy

  • Давно я тут
  • 897
  • 87 / 10
  • Интересно,в какой кодировке пишут врачи?
а для вертуя это решение подойдет?
Что б правильно задать вопрос - нужно знать на него ответ!
FAQ по Joomla!
Где скачать шаблоны Joomla Статьи и обзоры Желаю Вам здоровья в личной жизни - живите долго и часто :)
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Увеличение страниц 404

Автор diana1975

Ответов: 2
Просмотров: 1437
Последний ответ 12.04.2021, 11:08:05
от Mick_20
Вопрос по оптимизации страниц магазина

Автор dron

Ответов: 6
Просмотров: 1494
Последний ответ 21.01.2020, 10:30:00
от dron
Вывод описания категории только на первой странице пагинации

Автор rmnk

Ответов: 10
Просмотров: 4534
Последний ответ 06.12.2018, 16:46:44
от effrit
Разные тайтлы в выдаче гуглом в одной категории

Автор buto

Ответов: 4
Просмотров: 1242
Последний ответ 13.03.2015, 12:15:46
от dmitry_stas
Глобальное изменение URL страниц

Автор neonox

Ответов: 8
Просмотров: 1438
Последний ответ 28.08.2014, 16:49:29
от dmitry_stas