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

nbserg

  • Осваиваюсь на форуме
  • 166
  • 0
как убрать ?limitstart=0
« : 12.11.2011, 02:01:14 »
подскажите как убрать ?limitstart=0
ну чтобы было не /video/fun.html?limitstart=0 а /video/fun.html
*

SAIUZ

  • Осваиваюсь на форуме
  • 31
  • 4
Re: как убрать ?limitstart=0
« Ответ #1 : 30.11.2011, 14:26:02 »
по моему, нужно допиливать router.php компонента.
*

nbserg

  • Осваиваюсь на форуме
  • 166
  • 0
Re: как убрать ?limitstart=0
« Ответ #2 : 07.12.2011, 21:53:24 »
нашел кусок кода но он в файле \libraries\joomla\html\pagination.php

Код
		// Set the start and previous data objects.
$data->start = new JPaginationObject(JText::_('JLIB_HTML_START'), $this->prefix);
$data->previous = new JPaginationObject(JText::_('JPREV'), $this->prefix);

if ($this->get('pages.current') > 1)
{
$page = ($this->get('pages.current') -2) * $this->limit;

// Set the empty for removal from route
//$page = $page == 0 ? '' : $page;

$data->start->base = '0';
$data->start->link = JRoute::_($params.'&'.$this->prefix.'limitstart=0');
$data->previous->base = $page;
$data->previous->link = JRoute::_($params.'&'.$this->prefix.'limitstart='.$page);
}
мусолил мусолил но всеравно не смог сделать так чтобы все 3 ссылки (В начало/Назад /1) были на /video/fun.html а не на /video/fun.html?limitstart=0
может кто подскажет?
*

SAIUZ

  • Осваиваюсь на форуме
  • 31
  • 4
Re: как убрать ?limitstart=0
« Ответ #3 : 28.12.2011, 16:25:46 »
в моем представлении, нужно в файл router.php компонента, в котором ты хочешь провернуть такую штуку, добавить правило удаляющее элемент массива $query['limitstart'] который формирует твою адресную строку.
Примерно так:
Код: php
function COMPONENTBuildRoute(&$query)
{
          ...
          if(isset($query['limitstart']))
{
                        if($query['limitstart'] == 0) {
       unset($query['limitstart']);
                              }
};
          return $segments;
         }
*

nbserg

  • Осваиваюсь на форуме
  • 166
  • 0
Re: как убрать ?limitstart=0
« Ответ #4 : 28.12.2011, 21:06:01 »
а можно чуток подробнее? убрать хочу с шаблон блога материала...
вернее подробнее - куда что вставить...
*

SAIUZ

  • Осваиваюсь на форуме
  • 31
  • 4
Re: как убрать ?limitstart=0
« Ответ #5 : 29.12.2011, 14:44:31 »
Если я правильно понял, то убрать limitstart нужно в стандартном компоненте com_content.
Если это так, то нужно зайти в файл /components/com_content/router.php и примерно в строке №172, перед return $segments;, добавить это правило:
Код: php
if(isset($query['limitstart']))
{
                        if($query['limitstart'] == 0) {
        unset($query['limitstart']);
                              }
};
*

nbserg

  • Осваиваюсь на форуме
  • 166
  • 0
Re: как убрать ?limitstart=0
« Ответ #6 : 30.12.2011, 00:02:10 »
всеравно генерит ссылку .html?limitstart=0
*

SAIUZ

  • Осваиваюсь на форуме
  • 31
  • 4
Re: как убрать ?limitstart=0
« Ответ #7 : 30.12.2011, 17:27:08 »
всеравно генерит ссылку .html?limitstart=0
Попробуй "0" в кавычки взять.
Код: php
if($query['limitstart'] == "0")
Или попробуй без этого условия, типа так:
Код: php
if(isset($query['limitstart']))
{
                    unset($query['limitstart']);
                };

Если не поможет, значит не в том компоненте делаешь, определи правильно компонент.
*

nbserg

  • Осваиваюсь на форуме
  • 166
  • 0
Re: как убрать ?limitstart=0
« Ответ #8 : 30.12.2011, 18:14:34 »
тоже не то...
ну ссылки в Шаблон блога материала... а где от него роутер я хз
*

Rival

  • Осваиваюсь на форуме
  • 189
  • 16
Re: как убрать ?limitstart=0
« Ответ #9 : 10.05.2012, 20:26:35 »
Странно что на форуме Joomla нет ответа на такой вопрос, как избавляетесь от дублей господа?
Я сделал редирект, написав в файле .htaccess
после RewriteEngine On
Код
RewriteCond %{QUERY_STRING} ^limitstart=0
RewriteRule ^(.*)$ /$1? [R=301,L]
« Последнее редактирование: 11.05.2012, 20:39:05 от Rival »
*

kurandin

  • Осваиваюсь на форуме
  • 159
  • 5
Re: Как убрать ?limitstart=0?
« Ответ #10 : 26.12.2012, 20:21:56 »
в файле .htaccess
после RewriteEngine On
Код
RewriteCond %{QUERY_STRING} ^limitstart=0
RewriteRule ^(.*)$ /$1? [R=301,L]
Меня этот код отправляет сразу на главную страницу ((

Думаю, надо править пагинацию
*

denn70

  • Осваиваюсь на форуме
  • 111
  • 2
Re: Как убрать ?limitstart=0?
« Ответ #11 : 29.12.2012, 17:49:53 »
На свою голову перевел 2 проекта на версию 2.5. Замучился перепиливать то, что на 1.5 работало как надо, включая вот этот косяк с limitstart. Хоть обратно переходи на 1.5
*

denn70

  • Осваиваюсь на форуме
  • 111
  • 2
Re: Как убрать ?limitstart=0?
« Ответ #12 : 30.12.2012, 13:53:32 »
Не помогло. У меня проблема с limitstart, из-за того, что sh404SEF под J2.5 не отображает главный пункт меню, как главную страницу, т.е должно быть www.адрес.ru, а у меня www.адрес.ru/kontent выдает на при нажатии на главный пункт меню, т.е получается дубль главной страницы. Можно либо через редирект перенаправить на главную, либо главный пункт меню опубликовать в отдельном меню, которое не размещать на сайте, а главную кнопку сделать просто ссылкой www.адрес.ru. Но в этом случае страницы пагинации вместо page-2.html отображаются как index.php?lang=en&limit=10&limitstart=10, т.е не переправляются в чпу по сути. Под J1.5 такого геморроя не было

Я уже 2 дня бьюсь с косяками J2.5 и компонентами по нее, которые на 1.5 версии работали в стабильной связке и решали те задачи, которые были необходимы
*

denn70

  • Осваиваюсь на форуме
  • 111
  • 2
Re: Как убрать ?limitstart=0?
« Ответ #13 : 30.12.2012, 15:22:08 »
Понятно, что кривое. Но сама Joomla по дефолту и seo вещи как бы не совместимы. Редактирование чпу и хотя бы тайтлов должно быть встроено в движок, например, как в Wordpress,  чтобы не приходилось сторонние компоненты использовать. Я спрашивал в теме для того, чтобы всего лишь понять, где косяк - в кривой работе sh404 под версию J2.5, в самой J2.5 или где-то в настройках.

Пока что напрашивается вывод, проще остаться пока на J1.5,  где все стабильно работало, и тот же sh404 отлично решал все проблемы с долбанными дублями Joomla и.т.д

А то что подломили J1.5 у вас, так у меня на хостинге соседние j2.5 подломили.
*

denn70

  • Осваиваюсь на форуме
  • 111
  • 2
Re: Как убрать ?limitstart=0?
« Ответ #14 : 30.12.2012, 15:29:56 »
Причем вы пишите что sh404 кривой. Но почему тогда при отключенном sh404, пункт меню, выбранный главным  и ведущий на категорию отображается как www.адрес.ru/index.php?option=com_content&view=category&layout=blog&id=13&Itemid=251,  а не как www.адрес.ru Понятно, что sh404 этот адрес всего лишь переправляет на www.адрес.ru/kontent. Так что косяк не в стороннем SEF

*

denn70

  • Осваиваюсь на форуме
  • 111
  • 2
Re: Как убрать ?limitstart=0?
« Ответ #15 : 30.12.2012, 15:35:46 »
Ну и по крайней мере этот дерьмо компонент, как вы выразились хоть как то помогает исправить косяки Joomla. Да хотя бы одинаковые тайтлы страниц пагинации он разбавляет подписями page-2,page-3 и.т.д. А то по дефолту 50 страниц пагинации, и все с одинаковым тайтлом. Может конечно все делают сайты для друзей, где такие моменты не важны, включая разработчиков Joomla, а не для поиска
*

denn70

  • Осваиваюсь на форуме
  • 111
  • 2
Re: Как убрать ?limitstart=0?
« Ответ #16 : 30.12.2012, 18:58:34 »
Ну первое место это замечательно, только там результатов по этому запросу всего 8 470,  а если бы запрос был конкурентным, типа 1000000 страниц в поиске, там и тайтл и правильный чпу, и оптимизация текста, и входящие ссылки, и все равно равно не факт что первое место.

А про title вы лучше  у Яндекса спросите, который страницы с одинаковыми title склеивает, оставляет одную в поиске, а 49 выкидывает. ТЕм более вы пишите плагин и все ок, а мне проще поставить сторонний компонент, и тоже все ок, по крайний мере полный контроль над чпу и титлами. По дефолту то в Joomla один фиг нету такого функционала, что так, что так, лишние телодвижения

Цитировать
Без понятия.. смотрите что вы кривого наставили из плагинов.. может оно дает! у меня такого никогда небыло! вы вообще в настройках сайта ЧПУ вкключали?

На J1.5  меня тоже не было. и дело здесь не в чпу,  а в том, что главный пункт меню не ведет на главную.

Цитировать
не выдумывайте у всех элементов разные тайтлы! 1, 2, 3, 4 ... не вижу разницы будет page-1, page-2 или просто 1,2!
Я и не выдумываю. Назначаем отображение в виде блога категории например по 10 результатов. Первые 10 на главной, - тайтл, например, "красные кирпичи", переходим на след. 10 результатов, т.е. на след страницу, которая тоже имеет тайтл красные кирпичи, что уже плохо, а  с sh404SEF он имел бы вид красные кирпичи | page-2

*

denn70

  • Осваиваюсь на форуме
  • 111
  • 2
Re: Как убрать ?limitstart=0?
« Ответ #17 : 30.12.2012, 19:50:37 »
Спасибо за совет, пригодиться! Я же просто написал, что мне проще сторонний компонент настроить. Перепиливать Joomla  у меня знаний не хватает. А время уходит на получение других знаний). На  J1.5 все четко с ним работало, я не парился. На J2.5 использовать расхотелось.
Да мне и J2.5 нафиг не нужна, просто как вспомню, как переносил сайты с Joostina на 1.5, решил уж за ранее на 2.5 хоть новые делать
*

wertik

  • Осваиваюсь на форуме
  • 27
  • 1
Re: Как убрать ?limitstart=0?
« Ответ #18 : 17.03.2014, 20:19:12 »
Цитировать
как убрать ?limitstart=0
Это же ведь большая проблема. Неужели никто ее не решил?
*

ast

  • Осваиваюсь на форуме
  • 61
  • 6
Re: Как убрать ?limitstart=0?
« Ответ #19 : 20.03.2014, 16:01:37 »
В основном, пытаются решить с помощью .htaccess, но такое решение не всегда корректно работает.
*

wertik

  • Осваиваюсь на форуме
  • 27
  • 1
Re: Как убрать ?limitstart=0?
« Ответ #20 : 20.03.2014, 17:47:36 »
Вы имеете в виду с помощью редиректа? Если так, то это совсем некорректно, ссылка же ведь сама не измениться
*

wertik

  • Осваиваюсь на форуме
  • 27
  • 1
Re: Как убрать ?limitstart=0?
« Ответ #21 : 20.03.2014, 17:48:17 »
В основном, пытаются решить с помощью .htaccess, но такое решение не всегда корректно работает.
Вы имеете в виду с помощью редиректа? Если так, то это совсем некорректно, ссылка же ведь сама не измениться
*

vorocha

  • Новичок
  • 1
  • 0
Re: Как убрать ?limitstart=0?
« Ответ #22 : 23.10.2014, 11:04:57 »
чпу стандартное
делал так в \libraries\joomla\html\pagination.php
раскомменторовать строчки:
//$page = $page == 0 ? '' : $page;
//$offset = $offset == 0 ? '' : $offset;
и удалить 'limitstart=0'
*

jimmychoo

  • Осваиваюсь на форуме
  • 43
  • 0
Re: Как убрать ?limitstart=0?
« Ответ #23 : 31.01.2015, 00:13:58 »
чпу стандартное
делал так в \libraries\joomla\html\pagination.php
раскомменторовать строчки:
//$page = $page == 0 ? '' : $page;
//$offset = $offset == 0 ? '' : $offset;
и удалить 'limitstart=0'

Удалить только 'limitstart=0' или всю строку $data->start->link = JRoute::_($params . '&' . $this->prefix . 'limitstart=0'); ?
*

Sgrey

  • Осваиваюсь на форуме
  • 28
  • 1
Re: Как убрать ?limitstart=0?
« Ответ #24 : 04.02.2015, 14:33:09 »
Только . 'limitstart=0'
*

Vasiliy111

  • Давно я тут
  • 206
  • 5
Re: Как убрать ?limitstart=0?
« Ответ #25 : 24.07.2015, 16:26:36 »
Дорогие друзья кто нибудь решил проблему как убрать 'limitstart=0', у меня при стандартном шаблоне beez3 способ который описан здесь результата не принес, не ужели ни кто не нашел выход из ситуации
*

Vasiliy111

  • Давно я тут
  • 206
  • 5
Re: Как убрать ?limitstart=0?
« Ответ #26 : 27.07.2015, 14:20:28 »
Нашел решение на этом ресурсе:
у меня работает

правим файл libraries/cms/pagination/pagination.php.

Здесь:

строчку
$data->start->link = JRoute::_($params . '&' . $this->prefix . 'limitstart=0');

заменяем на
$data->start->link = JRoute::_($params . '&' . $this->prefix);


далее строчку
$data->previous->link = JRoute::_($params . '&' . $this->prefix . 'limitstart=' . $page);

заменяем на
if ($page == 0) {
$data->previous->link = JRoute::_($params . '&' . $this->prefix);
} else {
$data->previous->link = JRoute::_($params . '&' . $this->prefix . 'limitstart=' . $page);
}

и далее, строчку
$data->pages[$i]->link = JRoute::_($params . '&' . $this->prefix . 'limitstart=' . $offset);

заменяем на:
if ($offset == 0) {
$data->pages[$i]->link = JRoute::_($params . '&' . $this->prefix);
} else {
$data->pages[$i]->link = JRoute::_($params . '&' . $this->prefix . 'limitstart=' . $offset);
}


имеет один недостаток — после обновления изменения не сохранятся
*

vorfey

  • Осваиваюсь на форуме
  • 60
  • 1
Re: как убрать ?limitstart=0?
« Ответ #27 : 11.12.2015, 16:26:58 »
Рабочее решение, на Joomla 3 тоже работает! Надо просто отмечать, что в коде правится, что бы после обновы можно было опять сделать.
И не забывайте после того как в коде уберете ?limitstart=0 поставить редирект 301. У меня эти страницы попали в индекс.
*

Alona de

  • Осваиваюсь на форуме
  • 34
  • 0
Re: как убрать ?limitstart=0?
« Ответ #28 : 28.01.2016, 17:12:39 »
Нашел решение на этом ресурсе:
у меня работает

правим файл libraries/cms/pagination/pagination.php.

Здесь:

строчку
$data->start->link = JRoute::_($params . '&' . $this->prefix . 'limitstart=0');

заменяем на
$data->start->link = JRoute::_($params . '&' . $this->prefix);


далее строчку
$data->previous->link = JRoute::_($params . '&' . $this->prefix . 'limitstart=' . $page);

заменяем на
if ($page == 0) {
$data->previous->link = JRoute::_($params . '&' . $this->prefix);
} else {
$data->previous->link = JRoute::_($params . '&' . $this->prefix . 'limitstart=' . $page);
}

и далее, строчку
$data->pages[$i]->link = JRoute::_($params . '&' . $this->prefix . 'limitstart=' . $offset);

заменяем на:
if ($offset == 0) {
$data->pages[$i]->link = JRoute::_($params . '&' . $this->prefix);
} else {
$data->pages[$i]->link = JRoute::_($params . '&' . $this->prefix . 'limitstart=' . $offset);
}


имеет один недостаток — после обновления изменения не сохранятся

Спасибо!
*

orsy

  • Давно я тут
  • 393
  • 21
  • Web-Factor Ukraine
Re: как убрать ?limitstart=0?
« Ответ #29 : 20.06.2017, 16:58:30 »
Решение для Joomla 3 смотрим тут: http://joomlaforum.ru/index.php/topic,339007.new.html
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Как убрать дубли страниц и от чего они появляются\?

Автор Ирина Поехали

Ответов: 0
Просмотров: 36
Последний ответ 13.09.2017, 09:05:12
от Ирина Поехали
Умный поиск, как убрать "текст для поиска"?

Автор planetaryi

Ответов: 7
Просмотров: 1688
Последний ответ 15.07.2017, 12:45:36
от vipiusss
[FAQ] Как убрать <meta name="generator" content="Joomla! 2.5 - Open Source Content Management" />

Автор neket

Ответов: 50
Просмотров: 93263
Последний ответ 22.05.2017, 17:44:49
от SeBun
Убрать заголовок материала

Автор swansea

Ответов: 16
Просмотров: 8521
Последний ответ 19.05.2017, 13:05:21
от darkghost
[FAQ] Как убрать ID из ссылок?

Автор Leshiy

Ответов: 126
Просмотров: 57106
Последний ответ 10.05.2017, 05:22:28
от leo78