Перейти к публикации

Создание авто-генерируемого меню.


Рекомендованные сообщения

ТЗ: Есть два меню, левое и правое. Генерироваться должны автоматически оба. Специфически.

Есть список разделов, к примеру 1,2,3,4. Есть список статей, скриптом должны выбираться все статьи из указанного меню и добавляться в качестве под-меню к родительской категории. С под-под меню аналогичная ситуация.

Пример как это сейчас сделано (полуавтоматически):

$cat = -1;

   $result=$db->query("SELECT `post`.alt_name post_alt_name,`category`.alt_name cat_alt_name,`post`.title,

		`post`.category,`post`.title,`category`.name,`post`.id post_id, `category`.id cat_id

		FROM `".PREFIX."_post` AS `post`, `".PREFIX."_category` AS `category`

/* в скобках указываются idшники категорий

		WHERE `post`.category = `category`.id and `category`.id IN (2,3,4,5,6,7,8,9,10,11,12,13,62,63,69,70,71,72,73,74,75,76,77,78,79,80,81,82,

83,84,85,86,88,89,90,91,92,93)

*/

/* в скобках указываются idшники категорий*/

		WHERE `post`.category = `category`.id and `category`.id IN (64,65,66,67,68,94,95,96,97,98,99)

		ORDER BY `category`.name, `category`.id ASC, `post`.title ASC");

	while($row = $db->get_row($result))

	{

	  if ($row['category']!=$cat)

	  {

		$left_menu .= "<strong><div class=left_div_1><li><a href='/".$row['cat_alt_name']."'>".$row[name]."</strong></a></div></li>\n";

		$cat = $row['category'];

	  }

	  if ($config['allow_alt_url'] == "yes")

	  $left_menu .= "[category=".$row['cat_id']."]<div class=left_div>&nbsp;<a href='/".$row['cat_alt_name']."/".$row['post_id']."-".$row['post_alt_name'].".html'>".stripslashes($row[title])."</a></div>[/category]\n";

	  else

	  $left_menu .= "<a href=".$config['http_home_url']."index.php?newsid=".$row['post_id'].">".stripslashes($row[title])."</a><br>\n";


	}


set_vars ("left_menu", $left_menu);

$db->free();

Проблема реализаци в том, что бы придумать как разбивалось все на "левое" и "правое" меню автоматически + проблема с авто-созданием под-под меню (как видно сейчас - это не реализовано). Должно работать с кэшиованием

icq 464000550 там можно все уточнить, посмотреть на пациента и договориться о сумме. Горе кодеров просьба не беспокоить, сам такой.

Ссылка на сообщение
Поделиться на других сайтах

Присоединяйтесь к обсуждению

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

Гость
Ответить в тему...

×   Вставлено в виде отформатированного текста.   Вставить в виде обычного текста

  Разрешено не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отобразить как ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставить изображения напрямую. Загрузите или вставьте изображения по ссылке.

×
×
  • Создать...