форум общения русскоязычных пользователей CMS Текстпаттерн
Вы не зашли.
Недавно довелось использовать Textpattern немножко не по назначению :) Кому интересно, вот здесь я написал об этом - http://tvel.name/sat/
Но речь не о том. Для решения этой задачи я хотел воспользоваться плагином djw_section_articles, однако мне сильно не хватало атрибутов class и title в списках ссылок, которые он генерировал.
Пришлось маленько подправить код наугад :) Наугад, потому что я php не знаю совсем. Вроде бы получилось, так что если кому надо, берите исправленный вариант. Я не знаю, как это переделать в плагин, поэтому просто выкладываю здесь код, которым нужно заменить то, что будет при редактировании модуля.
Класс назначаете сами, например так: <txp:djw_section_articles c="yourcategory" wraptag="li" class="yourclass" />. А вот title генерируется автоматически и совпадает с названием статьи, как и текст ссылки. Если кто-то переделает код так, чтобы title можно было подставлять какой-нибудь другой, будет здорово. Я не умею.
function djw_section_articles($atts) { if (is_array($atts)) extract($atts); global $s, $pfr; $label = (empty($label)) ? '' : $label; $break = (empty($break)) ? br : $break; $wraptag = (empty($wraptag)) ? '' : $wraptag; if(!empty($s)) { $q ="select * from " . PFX . "textpattern where Status = 4 and Section = '" . $s . "'"; $q .= (empty($c)) ? ';' : " and (Category1='$c' or Category2='$c');"; $rs = getRows($q); if ($rs) { if ($label) $out[] = $label; foreach ($rs as $a) { extract ($a); $out[] = tag($Title,'a',' href="'.$pfr.$Section.'/'.$url_title.'" class="'.$class.'" title="'.$Title.'"'); } if (is_array($out)) { if($break == 'li') { return ($wraptag) ? tag("<li>".join("</li>\n<li>",$out)."</li>",$wraptag) : "<li>".join("</li>\n<li>",$out)."</li>"; } return ($wraptag) ? tag(join($break.n,$out),$wraptag) : join($break.n,$out); } return ''; } } }
Кстати, там я еще путь правил, но это просто.
Неактивен