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

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

Вы не зашли.

#1 2010-03-24 22: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 23: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]

Не в сети

#3 2010-03-25 00:19:41

Wolverine
Модератор
Откуда Домодедово
Зарегистрирован: 2008-10-13
Сообщений: 3,538
Рейтинг :   160 
Сайт

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

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

Не в сети

#4 2010-03-25 03: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 10:47:52

KhadeR
Участник
Зарегистрирован: 2009-09-16
Сообщений: 207
Рейтинг :   17 

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

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

Не в сети

#6 2010-03-25 11: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 12:08:17

KhadeR
Участник
Зарегистрирован: 2009-09-16
Сообщений: 207
Рейтинг :   17 

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

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

Не в сети

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

CyberMama
Участник
Откуда Иркутск
Зарегистрирован: 2009-11-24
Сообщений: 139
Рейтинг :   17 
Сайт

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

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

Не в сети

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

CyberMama
Участник
Откуда Иркутск
Зарегистрирован: 2009-11-24
Сообщений: 139
Рейтинг :   17 
Сайт

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

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

Не в сети

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

Евгений
Модератор
Откуда Россия
Зарегистрирован: 2009-04-08
Сообщений: 1,014
Рейтинг :   38 
Сайт

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

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


I NGeneration CMS

Не в сети

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

CyberMama
Участник
Откуда Иркутск
Зарегистрирован: 2009-11-24
Сообщений: 139
Рейтинг :   17 
Сайт

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

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

Не в сети

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

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

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

CyberMama пишет:

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

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

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

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


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

Не в сети

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

CyberMama
Участник
Откуда Иркутск
Зарегистрирован: 2009-11-24
Сообщений: 139
Рейтинг :   17 
Сайт

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

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

Не в сети

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

vitaly
Администратор
Откуда Россия
Зарегистрирован: 2008-10-08
Сообщений: 2,823
Рейтинг :   118 

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, приложите, пожалуйста, скрин "Управление форматом ссылок"

Не в сети

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

CyberMama
Участник
Откуда Иркутск
Зарегистрирован: 2009-11-24
Сообщений: 139
Рейтинг :   17 
Сайт

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

KhadeR, 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)

Не в сети

#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: Изменить формат ссылки конкретного плагина

;-)

Не в сети

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

vitaly
Администратор
Откуда Россия
Зарегистрирован: 2008-10-08
Сообщений: 2,823
Рейтинг :   118 

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
Сообщений: 1,014
Рейтинг :   38 
Сайт

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

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


I NGeneration CMS

Не в сети

Подвал раздела

Работает на FluxBB