Next Generation CMS :: Форум поддержки

Заинтересовала наша система? Тогда этот форум для Вас!

rss

Вы не зашли.

Объявление

#1 2010-03-24 21:30:38

CyberMama
Пользователь
Откуда: Иркутск
Зарегистрирован: 2009-11-24
Сообщений: 139
Рейтинг :   17 
Профиль  Вебсайт

Изменить формат ссылки конкретного плагина

Вот очень мне хочется, чтобы один конкретный плагин выводился в формате сайт.ру/названиеплагина.html
а не сайт.ру/plugin/названиеплагина/
и ещё желательно чтобы параметры передаваемые были как сайт.ру/параметр1/параметр2/названиеплагина.html

как я поняла это задаётся вызовом класса urlLibrary
$ULIB = new urlLibrary();

  $ULIB->loadConfig();

  if (isset($ULIB->CMD['myplugin']))

        unset($ULIB->CMD['myplugin']);

  $ULIB->registerCommand('myplugin', $cmd, $params);
  ??????????????????????????????
  $ULIB->saveConfig();
И вот не могу понять что надо писать в качестве $cmd и $params

Неактивен

 

#2 2010-03-24 22:05:19

KhadeR
Пользователь
Зарегистрирован: 2009-09-16
Сообщений: 207
Рейтинг :   17 
Профиль

Re: Изменить формат ссылки конкретного плагина

Код:

$ULIB = new urlLibrary();
$ULIB->loadConfig();

[ПРИМЕР]

$ULIB->saveConfig();

[ПРИМЕР]:

Код:

$ULIB->registerCommand('news', 'news',
        array ('vars' =>
                    array(    'category' => array('matchRegex' => '.+?', 'descr' => array('russian' => 'Альт. имя категории')),
                            'catid' => array('matchRegex' => '\d{1,4}', 'descr' => array('russian' => 'ID категории')),
                            'year' => array('matchRegex' => '\d{4}', 'descr' => array ('russian' => 'Год')),
                            'month' => array('matchRegex' => '\d{2}', 'descr' => array ('russian' => 'Месяц')),
                            'day' => array('matchRegex' => '\d{2}', 'descr' => array ('russian' => 'День')),
                            'page' => array('matchRegex' => '\d{1,4}', 'descr' => array('russian' => 'Страница внутри новости')),
                            'altname' => array('matchRegex' => '.+?', 'descr' => array('russian' => 'Альт. имя новости')),
                            'id' => array('matchRegex' => '\d{1,4}', 'descr' => array('russian' => 'ID новости')),
                            'page' => array('matchRegex' => '\d{1,4}', 'descr' => array('russian' => 'Страница внутри новости')),
                    ),
                'descr'    => array ('russian' => 'Отображение полной новости'),
        )
);

news - [pluginName]
news - [handlerName]
category, catid, year, month, day, page, altname, id, page - соответственно [params]


Linkum
В ТОП без фильтров и банов - Оптимизм.

Неактивен

 

#3 2010-03-24 23:19:41

Wolverine
Модератор
Откуда: Домодедово
Зарегистрирован: 2008-10-13
Сообщений: 3538
Рейтинг :   160 
Профиль  Вебсайт

Re: Изменить формат ссылки конкретного плагина

Пора уже в админку внедрять такую возможность

Неактивен

 

#4 2010-03-25 02:26:06

CyberMama
Пользователь
Откуда: Иркутск
Зарегистрирован: 2009-11-24
Сообщений: 139
Рейтинг :   17 
Профиль  Вебсайт

Re: Изменить формат ссылки конкретного плагина

хм..сделала по  образцу, а в админке ругается Warning: Invalid argument supplied for foreach() in /var/www/sibark.ru/engine/actions/rewrite.php  on line 38   
само название плагина появилось в селекторе для добавления, а действия  - нет

Неактивен

 

#5 2010-03-25 09:47:52

KhadeR
Пользователь
Зарегистрирован: 2009-09-16
Сообщений: 207
Рейтинг :   17 
Профиль

Re: Изменить формат ссылки конкретного плагина

CyberMama, если можно то укажите для какого плагина и сам код, который вы написали


Linkum
В ТОП без фильтров и банов - Оптимизм.

Неактивен

 

#6 2010-03-25 10:10:47

CyberMama
Пользователь
Откуда: Иркутск
Зарегистрирован: 2009-11-24
Сообщений: 139
Рейтинг :   17 
Профиль  Вебсайт

Re: Изменить формат ссылки конкретного плагина

KhadeR,

Код:

$ULIB = new urlLibrary();
$ULIB->loadConfig();
$ULIB->registerCommand('ticket', 'main',
        array ('vars' => array('uid' => array('matchRegex' => '\d+', 'descr' => array('russian' => 'ID пользователя')),
                ),
                'descr'    => array ('russian' => 'Заказанные билеты'),
        )
);
$ULIB->saveConfig();

Неактивен

 

#7 2010-03-25 11:08:17

KhadeR
Пользователь
Зарегистрирован: 2009-09-16
Сообщений: 207
Рейтинг :   17 
Профиль

Re: Изменить формат ссылки конкретного плагина

странно, т.к. я твоим кодом полностью заменил код для плагина tags и все норм показало в управлении форматом ссылок и при назначении урл ошибок не выводилось...((


Linkum
В ТОП без фильтров и банов - Оптимизм.

Неактивен

 

#8 2010-03-25 11:38:40

CyberMama
Пользователь
Откуда: Иркутск
Зарегистрирован: 2009-11-24
Сообщений: 139
Рейтинг :   17 
Профиль  Вебсайт

Re: Изменить формат ссылки конкретного плагина

н-да.. это какой-то кеш противный - поставила на другой копии движка - заработало нормально...  в управлении форматом ссылок..
А при заходе на заданную страницу с фронтенда не работает :-(

Неактивен

 

#9 2010-03-25 11:42:58

CyberMama
Пользователь
Откуда: Иркутск
Зарегистрирован: 2009-11-24
Сообщений: 139
Рейтинг :   17 
Профиль  Вебсайт

Re: Изменить формат ссылки конкретного плагина

Однако надо запрашивать Виталия сделать красивую большую кнопочку в админке "очистить весь кеш" иногда некоторые моменты задалбывают... или возможность отключать всё кеширование во время разработки

Неактивен

 

#10 2010-03-25 12:10:30

Евгений
Модератор
Откуда: Россия
Зарегистрирован: 2009-04-08
Сообщений: 1014
Рейтинг :   38 
Профиль  Вебсайт

Re: Изменить формат ссылки конкретного плагина

CyberMama, если не сложно, можешь мне объяснить по шагам реализацию данной задумки? плз. roll


I NGeneration CMS

Неактивен

 

#11 2010-03-25 12:13:53

CyberMama
Пользователь
Откуда: Иркутск
Зарегистрирован: 2009-11-24
Сообщений: 139
Рейтинг :   17 
Профиль  Вебсайт

Re: Изменить формат ссылки конкретного плагина

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

Неактивен

 

#12 2010-03-25 12:14:48

Amarelius
Модератор
Откуда: Kiev
Зарегистрирован: 2008-10-24
Сообщений: 639
Рейтинг :   69 
Профиль  Вебсайт

Re: Изменить формат ссылки конкретного плагина

CyberMama написал:

Однако надо запрашивать Виталия сделать красивую большую кнопочку в админке "очистить весь кеш" иногда некоторые моменты задалбывают... или возможность отключать всё кеширование во время разработки

Именно для этих целей свое время я сделал плагин clear_config

---------------------------

С кешем протормозил. Плагин его не чистит, но если нужно добавлю такую кнопочку (вечером)


Всегда ищу разработчиков в Киеве!
Ищешь работу программистом, пиши мне на ArnitUA@gmail.com

Неактивен

 

#13 2010-03-25 12:17:15

CyberMama
Пользователь
Откуда: Иркутск
Зарегистрирован: 2009-11-24
Сообщений: 139
Рейтинг :   17 
Профиль  Вебсайт

Re: Изменить формат ссылки конкретного плагина

Amarelius, я смотрела описание плагина и так поняла что он для очистки конфигурации после удаления плагина  ...но спасибо за совет. попробую

Неактивен

 

#14 2010-03-25 13:18:49

vitaly
Администратор
Откуда: Россия
Зарегистрирован: 2008-10-08
Сообщений: 2788
Рейтинг :   115 
Профиль

Re: Изменить формат ссылки конкретного плагина

CyberMama, о каком именно кеше идёт речь? В обработчике ЧПУ никакого кеша нет.

Неактивен

 

#15 2010-03-30 15:55:12

CyberMama
Пользователь
Откуда: Иркутск
Зарегистрирован: 2009-11-24
Сообщений: 139
Рейтинг :   17 
Профиль  Вебсайт

Re: Изменить формат ссылки конкретного плагина

Да я походу туплю...  в общем на данный момент у меня в настройках управления форматом ссылок всё нормально добавляется\отображается, нужные ссылки прописала нормально, они прописали в /conf/urlconf.php ,
а вот c фронтенда при заходе по заданному адресу  нужная страница не открывается, "  Запрашиваемая вами страница не найдена."

Вроде в каких-то обсуждениях про этот формат ссылок читала что есть разница в какой позиции стоит правило - но не уверена что влияет :-(

Причём если обращаться по прямому адресу - site.ru/plugin/myplugin/param/  - то всё нормально работает

Отредактированно CyberMama (2010-03-30 16:09:30)

Неактивен

 

#16 2010-03-30 16:04:21

KhadeR
Пользователь
Зарегистрирован: 2009-09-16
Сообщений: 207
Рейтинг :   17 
Профиль

Re: Изменить формат ссылки конкретного плагина

CyberMama, приложите, пожалуйста, скрин "Управление форматом ссылок"


Linkum
В ТОП без фильтров и банов - Оптимизм.

Неактивен

 

#17 2010-03-30 16:16:30

CyberMama
Пользователь
Откуда: Иркутск
Зарегистрирован: 2009-11-24
Сообщений: 139
Рейтинг :   17 
Профиль  Вебсайт

Re: Изменить формат ссылки конкретного плагина

KhadeR, http://s3.sendpic.ru/i/10330/t/l5.jpeg
ну и соответственно в плагине
register_plugin_page('ticket','start','ticketrules',0);

register_plugin_page('ticket','list','tickettlist',0);

и соответственные функции

Отредактированно CyberMama (2010-03-30 16:18:49)

Неактивен

 

#18 2010-03-30 16:20:19

KhadeR
Пользователь
Зарегистрирован: 2009-09-16
Сообщений: 207
Рейтинг :   17 
Профиль

Re: Изменить формат ссылки конкретного плагина

Попробуйте 21-22 поставить после 4, т.е. после core=>lostpassword

и откуда кстати взялось {name}? Как я понимаю должно быть {tickettlist}?

Отредактированно KhadeR (2010-03-30 16:24:06)


Linkum
В ТОП без фильтров и банов - Оптимизм.

Неактивен

 

#19 2010-03-30 16:29:48

CyberMama
Пользователь
Откуда: Иркутск
Зарегистрирован: 2009-11-24
Сообщений: 139
Рейтинг :   17 
Профиль  Вебсайт

Re: Изменить формат ссылки конкретного плагина

всё нормально с name, это название параметра
действительно заработало если выше core plugin поднять... хотя uprofile аналогично и ниже стоит, это меня и смущало

Неактивен

 

#20 2010-03-30 16:30:49

KhadeR
Пользователь
Зарегистрирован: 2009-09-16
Сообщений: 207
Рейтинг :   17 
Профиль

Re: Изменить формат ссылки конкретного плагина

;-)


Linkum
В ТОП без фильтров и банов - Оптимизм.

Неактивен

 

#21 2010-03-30 23:58:48

vitaly
Администратор
Откуда: Россия
Зарегистрирован: 2008-10-08
Сообщений: 2788
Рейтинг :   115 
Профиль

Re: Изменить формат ссылки конкретного плагина

CyberMama, чтобы понять почему не отрабатывает какой-то URL можно поступить так:
1. открыть index.php
2. найти строчку ~88 (в SVN версии):

Код:

$runResult = $UHANDLER->run($systemAccessURL, array('debug' => false));

и заменить 'false' на 'true'

В текущем релизе строчка выглядит почти также и там тоже надо false заменить на true

3. открыть интересующую тебя страницу. сверху страницы пойдёт отладочная информация, в которой будет видно на какой именно шаблон URL'а сработал обработчик.

Неактивен

 

#22 2010-03-31 08:01:19

CyberMama
Пользователь
Откуда: Иркутск
Зарегистрирован: 2009-11-24
Сообщений: 139
Рейтинг :   17 
Профиль  Вебсайт

Re: Изменить формат ссылки конкретного плагина

vitaly, здорово, спасибо!!! На будущее учту

Неактивен

 

#23 2010-03-31 09:40:40

CyberMama
Пользователь
Откуда: Иркутск
Зарегистрирован: 2009-11-24
Сообщений: 139
Рейтинг :   17 
Профиль  Вебсайт

Re: Изменить формат ссылки конкретного плагина

vitaly, а нет готовой функции, чтобы сразу вставить в нужное место уже заданные ссылки, чтобы пользователю не самому их через управление форматом задавать, чтобы туда они уже вставились и только при необходимости можно было бы их отредактировать. Я посмотрела action rewrite - в конец их добавить вроде бы не особо проблематично, а вот в нужную позиции кажется сложновато

Неактивен

 

#24 2010-03-31 10:09:47

Amarelius
Модератор
Откуда: Kiev
Зарегистрирован: 2008-10-24
Сообщений: 639
Рейтинг :   69 
Профиль  Вебсайт

Re: Изменить формат ссылки конкретного плагина

CyberMama, Нет, такой функции и даже если бы она и была, то ее использование было бы проблематично. Объясняю почему, программно добавить ссылку не проблема, а вот установить ее в нужное место уже проблема, так как разработчик не знает какой конкретный набор плагинов установлен у конечного пользователя и как уже настроен его ЧПУ. Так что гораздо проще описать пользователю, что он имеет возможность настраивать ЧПУ для вашего плагина, а в плагине предусмотреть работу без настроенного ЧПУ (на случай если пользователю нет надобности в его настройке).


Всегда ищу разработчиков в Киеве!
Ищешь работу программистом, пиши мне на ArnitUA@gmail.com

Неактивен

 

#25 2010-03-31 10:31:45

Евгений
Модератор
Откуда: Россия
Зарегистрирован: 2009-04-08
Сообщений: 1014
Рейтинг :   38 
Профиль  Вебсайт

Re: Изменить формат ссылки конкретного плагина

CyberMama, ну как, получилось?


I NGeneration CMS

Неактивен

 

Board footer

Powered by FluxBB

[ Generated in 0.018 seconds, 33 queries executed ]