
А вот ещё такая "примочка":
Есть у меня список категорий ТС (легковые иномарки, автобусы, аэробусы и пр.), НО все объявления - в категории "Легковые иномарки" (ну не продаю я пока что аэробусы). Вот и подумалось - а направим-ка мы тогда пользователя на следующую страницу - к выбору марки автомобиля.
Короче говоря, если все обьявления находятся в одной категории ТС, то шаг выбора категории пропускается. Если же нет, то выводится список категорий, в которых есть объявления (см. хак #1)
Итак, снова крутим функцию
chooseCategory файла autobb.html.php
[spoiler title=посмотреть кусочек кода]
function chooseCategory( $categories, $link) {
echo '<table class="contentpaneopen"><tr><td class="contentheading" width="100%"><h1>'._AUTOBB_SELECTCATEGORYFORM_PAGETITLE.'</h1></td></tr></table><br />';
global $database,$Itemid, $pageclass_sfx, $my;
$task = mosGetParam( $_REQUEST, 'task', '');
?>
<form name="adminForm" action="<?php echo sefRelToAbs("index.php?option=com_autobb$link");?>" method="post">
<table class="contentpaneopen<?php echo $pageclass_sfx;?>" id="selectCategoryForm">
<?php
if ($task = "searchPage") {
$knter = 0;
foreach( $categories as $row ) {
$database->setQuery("SELECT COUNT(id) FROM #__autobb_messages WHERE category='".$row->id."' AND published=1");
$counter = $database->loadResult();
if ($counter != 0) {
$cats[$knter] = array('id' => $row->id, 'title'=>$row->title,'ads'=>$counter);
$knter++;
}
} // end foreach
if (sizeof($cats) == 1){
mosRedirect( sefRelToAbs("index.php?option=com_autobb&category=".$cats[0]['id']."$link") );
}
else {
$i = 2;
$tmp = 0;
foreach ($cats as $ct) {
echo '<tr class="sectiontableentry'.($i).'"><td width="15" align="center"><input type="radio" name="category" value="'.$cats[$tmp]['id'].'" /></td><td><a href="'.sefRelToAbs("index.php?option=com_autobb&category=".$cats[$tmp]['id']."$link").'">'.$cats[$tmp]['title'].'</a> <span class="small">('.$cats[$tmp]['ads'].')</span></td></tr>';
$tmp++;
} // end foreach
$i = 3 - $i;
} // end else
}
else if ( $task = "add" ){
... // далее всё остается как было
[/spoiler]
Удачи.
