Как будет правильнее?

 
Требуется переопределить методы в нескольких экшенах, буду писать плагин, и в папке с плагином в папке classes/actions будут те файлы экшенов которые мне и нужно переопределить, все вроде верно, но если это будет 3 и более файлов не пострадает ли быстродействие сайта с таким плагином? как лучше это реализовать?
  • 0
  • 27 апреля 2011, 10:09
  • dapon

обработка url вида: /blog/123

 
Привет всем!
Парни где происходит обработка url вида: /blog/123/?
Короче сделал несколь новых экшенов добавил в коллективные и персональные вывод всех постов, а в index щас выводиться все посты, в новом экшене good, выводяться все хорошие. Так вот когда, перехожу в коллективный блог,(/blog/123/) то тут 3 пункта все хорошие и плохие, по умолчанию выделено хорошие, но урл вида /blog/123/, по идеи должен вывести все посты в этом блоге, но нет, а урл /blog/123/good/ должен вывести хорошие но выводит 404.

Отображение блока на странице со статьей

5
Собственно необходимо отображать дополнительный блок только на странице вида site.ru/blog/blog_name/bla-bla.html — т.е. непосредственно на странице статьи. При добавлении в экшен classes\actions\ActionBlog.class.php блок видно и на странице блога, списка блогов и т.д.

Вопрос: что делать? ;)

Ответ: Использовать в шаблоне блока конструкцию типа:

{if $oUserCurrent}        
{if $oTopic}
содержимое шаблона
{/if}
{/if}

Предопределение путей к экшенам, и еще один момент

 
Было бы здорово до релиза, пока еще не заверстан новый дизайн, предопределить пути константами. Движок можно конфигурировать под разные задачи и типы сайтов, однако немного не хватает гибкости с путями. Варианты переименования — за слешами.

В темплейтах конструкция "/blog/" встречается довольно часто, можно пройтись и везде поменять пути вручную, но тогда обновление частей движка через SVN — приведет к ошибкам.

define('LSPATH_PROFILE','profile');	//e.g. user
define('LSPATH_PEOPLE','people');	//e.g. users
define('LSPATH_BLOG','blog');		//e.g. community
define('LSPATH_LOG','log');		//e.g. blog
define('LSPATH_MY','my');		//e.g. blog
define('LSPATH_PAGE','page');		//e.g. static

return array(
	'page' => array(		
		LSPATH_PROFILE => 'ActionProfile',
		LSPATH_BLOG => 'ActionBlog',
		LSPATH_PEOPLE => 'ActionPeople',
	)
);



Читать дальше