Вы не зашли.
Вот очень мне хочется, чтобы один конкретный плагин выводился в формате сайт.ру/названиеплагина.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
Не в сети
$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]
Не в сети
хм..сделала по  образцу, а в админке ругается Warning: Invalid argument supplied for foreach() in /var/www/sibark.ru/engine/actions/rewrite.php  on line 38   
само название плагина появилось в селекторе для добавления, а действия  - нет
Не в сети
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();Не в сети
н-да.. это какой-то кеш противный - поставила на другой копии движка - заработало нормально...  в управлении форматом ссылок..
А при заходе на заданную страницу с фронтенда не работает :-(
Не в сети
Однако надо запрашивать Виталия сделать красивую большую кнопочку в админке "очистить весь кеш" иногда некоторые моменты задалбывают... или возможность отключать всё кеширование во время разработки
Не в сети
Евгений, в том то и проблема что задумка пока не реализовывается, я пока просто тупо пытаюсь сделать чтобы для плагина можно было настроить вид ссылки отличный от стандартного
Не в сети
Однако надо запрашивать Виталия сделать красивую большую кнопочку в админке "очистить весь кеш" иногда некоторые моменты задалбывают... или возможность отключать всё кеширование во время разработки
Именно для этих целей свое время я сделал плагин clear_config
---------------------------
С кешем протормозил. Плагин его не чистит, но если нужно добавлю такую кнопочку (вечером)
Всегда ищу разработчиков в Киеве!
Ищешь работу программистом, пиши мне на ArnitUA@gmail.com
Не в сети
Да я походу туплю...  в общем на данный момент у меня в настройках управления форматом ссылок всё нормально добавляется\отображается, нужные ссылки прописала нормально, они прописали в /conf/urlconf.php ,
а вот c фронтенда при заходе по заданному адресу  нужная страница не открывается, "  Запрашиваемая вами страница не найдена."
Вроде в каких-то обсуждениях про этот формат ссылок читала что есть разница в какой позиции стоит правило - но не уверена что влияет :-(
Причём если обращаться по прямому адресу - site.ru/plugin/myplugin/param/ - то всё нормально работает
Изменено CyberMama (2010-03-30 16:09:30)
Не в сети
Не в сети
Не в сети
всё нормально с name, это название параметра
 действительно заработало если выше core plugin поднять... хотя uprofile аналогично и ниже стоит, это меня и смущало
Не в сети
CyberMama, чтобы понять почему не отрабатывает какой-то URL можно поступить так:
1. открыть index.php
2. найти строчку ~88 (в SVN версии):
$runResult = $UHANDLER->run($systemAccessURL, array('debug' => false));и заменить 'false' на 'true'
В текущем релизе строчка выглядит почти также и там тоже надо false заменить на true
3. открыть интересующую тебя страницу. сверху страницы пойдёт отладочная информация, в которой будет видно на какой именно шаблон URL'а сработал обработчик.
Не в сети
vitaly, а нет готовой функции, чтобы сразу вставить в нужное место уже заданные ссылки, чтобы пользователю не самому их через управление форматом задавать, чтобы туда они уже вставились и только при необходимости можно было бы их отредактировать. Я посмотрела action rewrite - в конец их добавить вроде бы не особо проблематично, а вот в нужную позиции кажется сложновато
Не в сети
CyberMama, Нет, такой функции и даже если бы она и была, то ее использование было бы проблематично. Объясняю почему, программно добавить ссылку не проблема, а вот установить ее в нужное место уже проблема, так как разработчик не знает какой конкретный набор плагинов установлен у конечного пользователя и как уже настроен его ЧПУ. Так что гораздо проще описать пользователю, что он имеет возможность настраивать ЧПУ для вашего плагина, а в плагине предусмотреть работу без настроенного ЧПУ (на случай если пользователю нет надобности в его настройке).
Всегда ищу разработчиков в Киеве!
Ищешь работу программистом, пиши мне на ArnitUA@gmail.com
Не в сети