Форум русской поддержки Joomla!® CMS
09.12.2016, 07:49:49 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
   
   Начало   Поиск Joomla 3.0 FAQ Joomla 2.5 FAQ Joomla 1.5 FAQ Правила форума Новости Joomla Реклама Войти Регистрация Помощь  
Страниц: [1]   Вниз
  Добавить закладку  |  Печать  
Автор

Вопрос по работе плагинов с k2

 (Прочитано 104 раз)
0 Пользователей и 1 Гость смотрят эту тему.
Light_And_Dark
Осваиваюсь на форуме
***

Репутация: +0/-0
Offline Offline

Сообщений: 62


« : 05.10.2016, 01:21:15 »

Приборела плагин K2 page title content plugin, который позволяет прописывать для k2 отдельные тайтл. Но столкнулась с проблемой - в категориях он не учитывает пагинацию, что странно для плагина под SEO.
Разработчик поправил плагин, но не доконца и далее помогать отказался, объяснив, что и так потратил много времени. Осталась следующая проблема плагин научился прописывать на страницах пагинации Страница 1, 2, 3 и т.д., то только в случае если в переменную $limit, которая отвечает указание количества статей на 1 странице категории, вручную прописать значение по умолчанию $limit = JRequest::getVar('limit',22);. Если же задать $limit = JRequest::getVar('limit') без указания значения по умолчанию - то она остается пустая. У меня в разных категориях разное количество статей показывается на 1 странице и задание вручную данной перемеренной - это не совсем вариант. Кто то может подсказать в чем проблема может быть с подтягиванием переменной по выражению JRequest::getVar('limit')? При этом переменная $start = JRequest::getVar('start') без проблем подтягивается. Или может как-то по другому можно сделать нумерацию страниц для тайтла?

Код плагина следующий:
Код:
<?php
defined('_JEXEC') or die;

jimport('joomla.plugin.plugin');
class plgContentMyextPagetitleK2 extends JPlugin
{
function plgContentMyextPagetitleK2(&$subject, $config)
{
parent::__construct($subject, $config);
}

public function onK2CategoryDisplay($category, $params, $limitstart = ''){
$metadata = (array)json_decode($category->params);
$browser_title = isset($metadata['browser_title'])? $metadata['browser_title'] : '';
if(!empty($browser_title)){
$start = JRequest::getVar('start');
$limit = JRequest::getVar('limit');
$page = 1 + $start/$limit;
if($page > 1){
$browser_title .= ". Страница ".$page;
}
$doc = JFactory::getDocument();
$doc->_metaTags['standard']['browser_title'] = $browser_title;
}
}
}

?>
« Последнее редактирование: 05.10.2016, 01:41:37 от Light_And_Dark » Записан
Septdir
Живу я здесь
******

Репутация: +36/-3
Offline Offline

Пол: Мужской
Сообщений: 841


Skype: septdir


« Ответ #1 : 05.10.2016, 02:08:43 »

Ну во первых, в плагине этого геморно, по причинам.
1. onK2CategoryDisplay работает только когда выбрала 1 категория все передаваемый и в  параметры идут только из одной категории а не из пунтка меню.
2. Лимит не является.
3. Лимит это не одно чисто сумма нескольких.
4. Лимит не является параметром страницы разумеется вы не можете его получить через JRequest jinput ибо его просто нет. Он берется из базы.
5. А что есть нет JRequest::getVar('start')?

Ну если хотите вот вам код под плагин
Код
public function onK2CategoryDisplay($category, $params, $limitstart = ''){
$start = JRequest::getVar('start');
$categoryParams = json_decode($category->params);
$limit = $categoryParams->num_leading_items + $categoryParams->num_primary_items + $categoryParams->num_secondary_items + $categoryParams->num_links;
и не надо писать кириллицей в коде
Лично я давно себе написал решения для меты в k2 со всеми тэгами оно быстро пишется.
« Последнее редактирование: 05.10.2016, 02:18:49 от Septdir » Записан
kisBoss
Завсегдатай
*****

Репутация: +36/-0
Offline Offline

Пол: Мужской
Сообщений: 434


ник Tobol


« Ответ #2 : 05.10.2016, 07:07:40 »

Проще использовать компонент Easy Frontend SEO. Он для всего сайта подходит и не нагружает сайт
Записан
Septdir
Живу я здесь
******

Репутация: +36/-3
Offline Offline

Пол: Мужской
Сообщений: 841


Skype: septdir


« Ответ #3 : 05.10.2016, 11:57:29 »

Проще использовать компонент Easy Frontend SEO. Он для всего сайта подходит и не нагружает сайт
Если без нагрузки. Самое просто это вообще все что нужно вшивать в шаблон вывода. Там уже все что нужно есть ничего дополучать не надо.
Записан
Light_And_Dark
Осваиваюсь на форуме
***

Репутация: +0/-0
Offline Offline

Сообщений: 62


« Ответ #4 : 05.10.2016, 22:49:49 »

Проще использовать компонент Easy Frontend SEO. Он для всего сайта подходит и не нагружает сайт
От этого пришлось отказаться, так как плагин вычищает полностью opengraph а у меня контентный проект и потом в соц сетях статьи расширваются криво. Особенно Facebook
Записан
Light_And_Dark
Осваиваюсь на форуме
***

Репутация: +0/-0
Offline Offline

Сообщений: 62


« Ответ #5 : 05.10.2016, 23:04:01 »

Ну во первых, в плагине этого геморно, по причинам.
1. onK2CategoryDisplay работает только когда выбрала 1 категория все передаваемый и в  параметры идут только из одной категории а не из пунтка меню.
2. Лимит не является.
3. Лимит это не одно чисто сумма нескольких.
4. Лимит не является параметром страницы разумеется вы не можете его получить через JRequest jinput ибо его просто нет. Он берется из базы.
5. А что есть нет JRequest::getVar('start')?

Ну если хотите вот вам код под плагин
Код
public function onK2CategoryDisplay($category, $params, $limitstart = ''){
$start = JRequest::getVar('start');
$categoryParams = json_decode($category->params);
$limit = $categoryParams->num_leading_items + $categoryParams->num_primary_items + $categoryParams->num_secondary_items + $categoryParams->num_links;
и не надо писать кириллицей в коде
Лично я давно себе написал решения для меты в k2 со всеми тэгами оно быстро пишется.

Спасибо вам большое. Все заработало. Я правильно поняла, что вы допилили сам компонент k2?
Записан
Septdir
Живу я здесь
******

Репутация: +36/-3
Offline Offline

Пол: Мужской
Сообщений: 841


Skype: septdir


« Ответ #6 : 05.10.2016, 23:42:44 »

Спасибо вам большое. Все заработало. Я правильно поняла, что вы допилили сам компонент k2?
Нет. Сначала сделал в шаблоне потом убрал в модуль. Там у меня и ог и твиттрер. Тоже в основном для соц сетей делал. Если нужно заделюсь через личку. Есть ещё более серьёзное решение но нет времени доделать чтоб выставлять
Записан
Страниц: [1]   Вверх
  Добавить закладку  |  Печать  
 
Перейти в:  

Powered by SMF 1.1.21 | SMF © 2006, Simple Machines

Joomlaforum.ru is not affiliated with or endorsed by the Joomla! Project or Open Source Matters.
The Joomla! name and logo is used under a limited license granted by Open Source Matters
the trademark holder in the United States and other countries.

LiveInternet