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

Sulpher

  • Живу я здесь
  • 2121
  • 401 / 16
  • Шаблоны и расширения Joomla
Создаём router для AdsManager
« : 05.03.2010, 20:04:51 »
Итак, создаём роутер для AdsManager (Joomla 1.5 legacy mode). Создайте пустой файл com_adsmanager.php и положите его сюда:
/components/com_adsmanager/sef_ext (нужно создать папку sef_ext)
в созданный файл вставьте следующий код:

Код: php
<?php

// Security check to ensure this file is being included by a parent file.
if (!defined('_VALID_MOS')) die('Direct Access to this location is not allowed.');

// ------------------ standard plugin initialize function - don't change -------------------
global $sh_LANG, $sefConfig ;
$shLangName = '';;
$shLangIso = '';
$title = array();
$shItemidString = '';
$dosef = shInitializePlugin( $lang, $shLangName, $shLangIso, $option);
// ------------------ standard plugin initialize function - don't change -----------------

// remove common URL from GET vars list, so that they don't show up as query string in the URL
shRemoveFromGETVarsList('option');
shRemoveFromGETVarsList('lang');
if (!empty($Itemid))
shRemoveFromGETVarsList('Itemid');
if (!empty($limit))
shRemoveFromGETVarsList('limit');
if (isset($limitstart))
shRemoveFromGETVarsList('limitstart');

if (file_exists($GLOBALS['mosConfig_absolute_path'] .'/components/com_adsmanager/lang/lang_' . $GLOBALS['mosConfig_lang'] . '.php')){
include_once($GLOBALS['mosConfig_absolute_path'] .'/components/com_adsmanager/lang/lang_' . $GLOBALS['mosConfig_lang'] . '.php');
}
else
include_once( $GLOBALS['mosConfig_absolute_path'] .'/components/com_adsmanager/lang/lang_english.php' );

$title[] = ADSMANAGER_SEF_ADS;

if (isset($adid)) {
$database->setQuery("SELECT category, ad_headline FROM #__adsmanager_ads WHERE id=$adid");
$rows = $database->loadObjectList();
if ($database->getErrorNum()) {
echo $database->stderr();
return false;
}
$ad_text = substr($rows[0]->ad_headline, 0, 40)."-".$adid;
shRemoveFromGETVarsList('adid');
$catid = $rows[0]->category;
}
if (isset($catid)) {
$database->setQuery("SELECT c.* FROM #__adsmanager_categories as c WHERE c.published = 1 ORDER BY c.parent,c.ordering");
$rows = $database->loadObjectList();
if ($database->getErrorNum()) {
echo $database->stderr();
return false;
}

// establish the hierarchy of the menu
$orderlist = array();
$current_list = array();
// first pass - collect children
foreach ($rows as $v ) {
$orderlist[$v->id] = $v;
}

$current = $catid;
while($orderlist[$current]->id != 0)
{
$current_list[] = $orderlist[$current]->name;
$current = $orderlist[$current]->parent;
}

for($i = count($current_list)-1; $i>=0; $i--)
{
$title[] = $current_list[$i];
}
shRemoveFromGETVarsList('catid');
}
if (isset($ad_text)) {
$title[] = $ad_text;
}

switch ($page) {

case 'show_profile':
$title[] = ADSMANAGER_SEF_PROFILE.$userid."/".ADSMANAGER_SEF_EDIT;
break;

case 'save_profile':
$title[] = ADSMANAGER_SEF_PROFILE.$userid."/".ADSMANAGER_SEF_SAVE;
break;

case 'show_user':
if (isset($userid)) $title[] = ADSMANAGER_SEF_USER."-".$userid;
else $title[] = ADSMANAGER_SEF_MY_ADS;
break;

case 'show_category':
break;

case 'show_rules':
$title[] = ADSMANAGER_RULES;
break;

case 'show_ad':
break;

case 'write_ad':
if (!isset($adid)) $title[] = ADSMANAGER_SEF_WRITE_AD;
else $title[] = ADSMANAGER_SEF_UPDATE;
break;

case 'save_ad':
if (!isset($adid)) $title[] = ADSMANAGER_SEF_SAVE_AD;
else $title[] = ADSMANAGER_SEF_SAVE;
break;

case 'delete_ad':
if (!isset($adid)) $title[] = ADSMANAGER_SEF_DELETE_AD;
else $title[] = ADSMANAGER_SEF_DELETE;
break;

case 'show_all':
$title[] = ADSMANAGER_SEF_ALL_ADS;
break;

case 'show_search':
$title[] = ADSMANAGER_SEF_SHOW_SEARCH;
break;

case 'show_result':
$title[] = ADSMANAGER_SEF_SHOW_RESULT;
break;

case 'show_message_form':
$title[] = 'Nachricht schreiben';
break;

default:
$title[] = $page;
break;
}
shRemoveFromGETVarsList('page');

if (isset($expand) && !$expand) shRemoveFromGETVarsList('expand');
if (isset($order) && !$order) shRemoveFromGETVarsList('order');
if (isset($text_search) && !$text_search) shRemoveFromGETVarsList('text_search');


// ------------------ standard plugin finalize function - don't change ---------------------------

if ($dosef){
$string = shFinalizePlugin( $string, $title, $shAppendString, $shItemidString,
(isset($limit)? @$limit : null), (isset($limitstart)? @$limitstart : null),
(isset($shLangName)? @$shLangName : null));
}
// ------------------ standard plugin finalize function - don't change ---------------------------

?>


Демо
Источник

P.S. от себя замечу, что делюсь найденным решением по просьбе форумчанина, на рабочем примере не пробовал, поэтому отписываемся о результатах.
*

bargakuzzo

  • Осваиваюсь на форуме
  • 46
  • 3 / 0
Re: Создаём router для AdsManager
« Ответ #1 : 07.03.2010, 20:55:16 »
Этот пробывал, точно не помню, кажется на ads 2.5 он не пашет. Я ниже привел ссылку темы, в ней я прикреплял плагин под ads 2.5 Joomla 1.5 - он точно рабочий. Говорю заранее: этот и мой (конечно же не моя разработка  ^-^) плагины я не сравнивал, поэтому о работоспособности этого ничего не скажу. ^-^
Плагина com_adsmanager.php для sh404SEF под ads 2.5 (файл com_adsmanager.php). Ссылка темы - http://joomlaforum.ru/index.php/topic,100429.new.html
Длину url можно корректировать в строке 40 (по умолчанию стоит 40 символов), можно поставить 0 - будет только id объявления ( например .../ads/125 ).
« Последнее редактирование: 07.03.2010, 20:58:47 от bargakuzzo »
*

ecs23

  • Захожу иногда
  • 76
  • 1 / 0
Re: Создаём router для AdsManager
« Ответ #2 : 14.03.2010, 03:31:45 »
Помогите пожалуйста!
После установки данного плагина появилось в конце адреса %20class= если его удалить ссылка работает
*

haword

  • Захожу иногда
  • 124
  • 25 / 0
Re: Создаём router для AdsManager
« Ответ #3 : 22.06.2010, 20:24:29 »
попробуйте этот роутер, вариант тестовый, Joomla 1.5 AdsManager 2.5
« Последнее редактирование: 26.11.2010, 17:05:50 от haword »
*

valerka28

  • Осваиваюсь на форуме
  • 30
  • 0 / 0
Re: Создаём router для AdsManager
« Ответ #4 : 02.08.2010, 16:35:19 »
Спасибо, пока полностью не тестировал, но вроде работает...
*

haword

  • Захожу иногда
  • 124
  • 25 / 0
Re: Создаём router для AdsManager
« Ответ #5 : 05.08.2010, 15:43:22 »
немного исправленная версия, раз хоть кто то использует решил выложить.
« Последнее редактирование: 26.11.2010, 17:05:59 от haword »
*

aanvale

  • Захожу иногда
  • 68
  • 0 / 0
Re: Создаём router для AdsManager
« Ответ #6 : 31.08.2010, 09:40:26 »
Что это роутер делает? Сайт с демкой не работает
*

rustava

  • Осваиваюсь на форуме
  • 12
  • 2 / 0
Re: Создаём router для AdsManager
« Ответ #7 : 21.10.2010, 19:19:58 »
haword - спасиба
aanvale - роутер делает ссылки "прямыми"
*

fad-dmitrij

  • Осваиваюсь на форуме
  • 39
  • 0 / 0
Re: Создаём router для AdsManager
« Ответ #8 : 07.11.2010, 16:03:39 »
А куда необходимо положить этот роутер?
*

denmos

  • Захожу иногда
  • 96
  • 7 / 0
  • SINTEZ2 + мафон "легенда"
Re: Создаём router для AdsManager
« Ответ #9 : 10.11.2010, 14:46:40 »
А куда необходимо положить этот роутер?
/components/com_adsmanager/
*

GraD

  • Захожу иногда
  • 92
  • 3 / 0
Re: Создаём router для AdsManager
« Ответ #10 : 11.11.2010, 08:10:07 »
а для 2,6 он подходит?
*

GlooM

  • Давно я тут
  • 558
  • 91 / 0
  • AdsManager
Re: Создаём router для AdsManager
« Ответ #11 : 11.11.2010, 08:45:45 »
а для 2,6 он подходит?
Для версии 2.6 вот роутер
*

Timuchen

  • Захожу иногда
  • 62
  • 0 / 1
Re: Создаём router для AdsManager
« Ответ #12 : 12.11.2010, 14:45:25 »
Для версии 2.6 вот роутер
Работает, но возникает проблема при включенном sh404 расширенный поиск не работает :)
*

Timuchen

  • Захожу иногда
  • 62
  • 0 / 1
Re: Создаём router для AdsManager
« Ответ #13 : 12.11.2010, 14:48:28 »
 :( дело не в sh404... Дело в роутере. Попробую поправить
*

metacreo

  • Осваиваюсь на форуме
  • 14
  • 1 / 0
Re: Создаём router для AdsManager
« Ответ #14 : 25.11.2010, 12:09:07 »
огромнейшее спасибо....
действительно работает router.php
как-бы сделать тоже для модулей
mod_adsmanager_ads mod_adsmanager_menu mod_adsmanager_search ?
подскажите пожалуйста ... прописывать в этом же router.php или отдельно с модулями нужно работать ?

:( мда... картинки не открывает в highslide
ещё не работает редактирование объяв
« Последнее редактирование: 25.11.2010, 22:11:44 от metacreo »
*

haword

  • Захожу иногда
  • 124
  • 25 / 0
Re: Создаём router для AdsManager
« Ответ #15 : 26.11.2010, 17:10:10 »
в модуле mod_adsmanager_ads  работает вроде как у меня, в других не проверял.
в этом варианте редактирование и удаление должно работать, проверьте кому это надо было если что отпишитесь.

http://files.mail.ru/U9TRVP
*

metacreo

  • Осваиваюсь на форуме
  • 14
  • 1 / 0
Re: Создаём router для AdsManager
« Ответ #16 : 26.11.2010, 18:58:25 »
Спасибище
работает редактирование и удалиение ...
но фотки в highslide и lightbox режиме неоткрывает :(
*

denmos

  • Захожу иногда
  • 96
  • 7 / 0
  • SINTEZ2 + мафон "легенда"
Re: Создаём router для AdsManager
« Ответ #17 : 07.12.2010, 02:38:31 »
http://files.mail.ru/U9TRVP
haword, мыло говорит, что не найдено файлов, отправленных с таким кодом.
Будь добр, перезалей

     
*

haword

  • Захожу иногда
  • 124
  • 25 / 0
Re: Создаём router для AdsManager
« Ответ #18 : 07.12.2010, 08:38:42 »
новая ссылка http://files.mail.ru/2KX8W7
*

denmos

  • Захожу иногда
  • 96
  • 7 / 0
  • SINTEZ2 + мафон "легенда"
Re: Создаём router для AdsManager
« Ответ #19 : 07.12.2010, 13:56:38 »
haword, спасибо дружище),
На вскидку вроде все работает, (в т.ч. редактирование и фотки красиво открывает) - хорошая работа. Пора депозит открыватьть))))
*

haword

  • Захожу иногда
  • 124
  • 25 / 0
Re: Создаём router для AdsManager
« Ответ #20 : 07.12.2010, 14:35:20 »
на 2,6 переходить пора уже :) там все уже есть из коробки
*

denmos

  • Захожу иногда
  • 96
  • 7 / 0
  • SINTEZ2 + мафон "легенда"
Re: Создаём router для AdsManager
« Ответ #21 : 11.01.2011, 11:52:29 »
Нарисовалась проблема, связанная (как я думаю) с роутером:
При удалении объявлений, его урл (т.е. страници с подробным описанием) остаётся, и id не освобождается
И выглядит это примерно вот так:
row->ad_headline
$row->ad_text
Контактная информация:
Контактное лицо: $row->ad_kontact
Телефон: $row->ad_phone
*

Doc

  • Захожу иногда
  • 456
  • 17 / 0
Re: Создаём router для AdsManager
« Ответ #22 : 31.01.2011, 13:49:41 »
Нарисовалась проблема, связанная (как я думаю) с роутером:
При удалении объявлений, его URL (т.е. страници с подробным описанием) остаётся, и id не освобождается
И выглядит это примерно вот так:
row->ad_headline
$row->ad_text
Контактная информация:
Контактное лицо: $row->ad_kontact
Телефон: $row->ad_phone
нет, это не в нем проблема, а в самом компоненте
У меня не стоит роутер, а ссылка как вы описываете висит
http://www.remrai.ru/baraholka.html?page=show_ad&adid=31&catid=2
« Последнее редактирование: 25.01.2016, 01:47:47 от Doc »
*

Doc

  • Захожу иногда
  • 456
  • 17 / 0
Re: Создаём router для AdsManager
« Ответ #23 : 31.01.2011, 14:32:29 »
новая ссылка http://files.mail.ru/2KX8W7
Скачал и поставил его себе, но сразу идет ошибка в журнале, вот такая
[Mon Jan 31 14:19:04 2011] [error] [client 91.77.34.198] File does not exist: /home/aqq0000/public_html/a-viktor.ru/baraholka
Убираю его и все пропадает, ошибки больше нет
*

mark1

  • Захожу иногда
  • 394
  • 39 / 2
Re: Создаём router для AdsManager
« Ответ #24 : 22.02.2011, 06:08:40 »
Скачал и поставил его себе, но сразу идет ошибка в журнале, вот такая
[Mon Jan 31 14:19:04 2011] [error] [client 91.77.34.198] File does not exist: /home/aqq0000/public_html/a-viktor.ru/baraholka
Убираю его и все пропадает, ошибки больше нет
Гугли на тему "Грабли с Joomla, когда она стоит в подпапке". Там есть некий стандартный набор граблей, которые надо обойти. И всё будет окей. Ошибка на 95% не роутере, имхо.

Но Роутер имеет неприятную ошибочку: битая ссылка на редактирование последнего (!) объявления, и странные недо-транслитные , но чудом работающие ссылки "Удалить объявление".
Подскажите, что и как, если кто сталкивался =)
*

Doc

  • Захожу иногда
  • 456
  • 17 / 0
Re: Создаём router для AdsManager
« Ответ #25 : 22.02.2011, 10:06:26 »
Гугли на тему "Грабли с Joomla, когда она стоит в подпапке". Там есть некий стандартный набор граблей, которые надо обойти. И всё будет окей. Ошибка на 95% не роутере, имхо.
Это как ?
Если она у меня никогда не была в подпапке, а лежит в корневой директории
У меня все загружено в папку public_html, у некоторых на хостинге она называется WWW
Или это и есть подпапке ?

Простите за глупый вопрос, но просто такое первый раз услышал
А вообще извиняюсь, но когда хотите дать совет, то хотя бы поинтересуйтесь, какая версия  джумалы и какая версия AdsManager стоит, а не тупа, иди кури бамбук
Не в обиду
*

Doc

  • Захожу иногда
  • 456
  • 17 / 0
Re: Создаём router для AdsManager
« Ответ #26 : 22.02.2011, 20:28:49 »
Скачал и поставил его себе, но сразу идет ошибка в журнале, вот такая
[Mon Jan 31 14:19:04 2011] [error] [client 91.77.34.198] File does not exist: /home/aqq0000/public_html/www.remrai.ru/baraholka
Убираю его и все пропадает, ошибки больше нет
Разобрался я, в чем была проблема
В этом файле есть строка
Цитировать
lang_english.php
Вот ее нужно поменять на
Цитировать
lang_russian.php
В двух местах файла
Если поменяете в одном месте, то будит кидать на главную страницу
Теперь все работает и не каких ошибок не выдает

Только ссылки разные
В эксплоере такая идет
http://мой сайт.ru/baraholka/show_ad/avtozapchasti/140-dvernaya-obshika-na-honda-cr-v.html
А в мозиле такая
http://мой сайт.ru/component/adsmanager/show_ad/avtozapchasti/140-dvernaya-obshika-na-honda-cr-v.html
на одно и тоже обьявление
« Последнее редактирование: 25.01.2016, 12:45:47 от Doc »
*

Doc

  • Захожу иногда
  • 456
  • 17 / 0
Re: Создаём router для AdsManager
« Ответ #27 : 23.02.2011, 11:12:43 »
Нашел еще косяк в этом router, но как решить не знаю
Косяк в том, что если нажать  Мои объявления и потом там появляется, Обновить и Удалить
Кнопку удалить не пробовал, а вот если нажать Обновить, то выкидывает на главную

Есть еще у кого так ?

router который по этой ссылке http://files.mail.ru/2KX8W7
*

mark1

  • Захожу иногда
  • 394
  • 39 / 2
Re: Создаём router для AdsManager
« Ответ #28 : 24.02.2011, 02:08:52 »
Нашел еще косяк в этом router, но как решить не знаю
Косяк в том, что если нажать  Мои объявления и потом там появляется, Обновить и Удалить
Кнопку удалить не пробовал, а вот если нажать Обновить, то выкидывает на главную

Есть еще у кого так ?

router который по этой ссылке http://files.mail.ru/2KX8W7
ну сорри, если запутал тебя выше.

Да, у меня был такой баг. Но только на одном объявлении. Оно было последнее из добавленных, на момент запуска роутера. Добавлял после запуска роутера новые объявы - там этой проблемы ПОКА ЧТО нет..

Ссылки правда на кнопках "Обновить" и "удалить" - мегакорявые, полуанглийские, полурусские, НО при это чудом рабочие!

новая ссылка http://files.mail.ru/2KX8W7
А не подскажешь, где брал роутер вообще?  Кто автор? Он пока что круче всех других, что я пока видел в инете.
*

Doc

  • Захожу иногда
  • 456
  • 17 / 0
Re: Создаём router для AdsManager
« Ответ #29 : 24.02.2011, 02:14:36 »
Цитировать
Да, у меня был такой баг. Но только на одном объявлении. Оно было последнее из добавленных, на момент запуска роутера. Добавлял после запуска роутера новые объявы - там этой проблемы ПОКА ЧТО нет..
Я одно добавил, после того как увидел
Установил роутер и после этого обновил обьявление, все обновилось, а потом опять решил его же обновить и стало кидать на главную
думал может после создания новых все будет хорошо, а нет, создал и оно сразу не обновлялось

А вот кнопки у меня нормально выглядели, что с ним что без него и не какой разницы
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

[Решено]Дублирования ссылки "объвления" в breadcrumb, в компоненте AdsManager

Автор nicklas

Ответов: 4
Просмотров: 2739
Последний ответ 25.04.2024, 23:13:18
от Rinat abzyi
AdsManager вывод нужных полей по отдельности

Автор klekovkinandrey

Ответов: 2
Просмотров: 13246
Последний ответ 06.04.2024, 09:54:15
от Rinat abzyi
AdsManager загрузка файлов

Автор FlexNL

Ответов: 1
Просмотров: 2031
Последний ответ 21.10.2021, 17:20:09
от khan-alex
AdsManager 2.9.13 Есть ли возможность добавить функцию снять с публикации по мимо редактировать и уд

Автор murovoz

Ответов: 11
Просмотров: 12238
Последний ответ 27.03.2020, 22:39:23
от Pavel
Два компонента AdsManager в одном движке

Автор kaman62

Ответов: 12
Просмотров: 27401
Последний ответ 27.03.2020, 22:32:04
от Pavel