localhost で Serene Bach


  カテゴリツリーの改造



件数表示をしないようにし、エントリの無いカテゴリはリンクせずに強調表示する

lib\sb\Content.pm
  
sub _category_tree { # カテゴリーツリー
	my %param = (
		'cat'    => [],
		'branch' => undef,
		'num'    => {},
		'no_num' => undef,
		@_
	);
	my $list = '';
	foreach my $cat ( @{$param{'cat'}} ) {
		next if ($cat->get_option('list') == 1);
		next if (!defined($param{'branch'}) and $cat->main ne '');
		next if ( defined($param{'branch'}) and $cat->main ne $param{'branch'});
		my $text = $cat->text; # code by Fuco. Thanks!
		$text = ($text ne '') ? ' title="' . sb::Text->entitize($text) . '"' : '';

# エントリの無いカテゴリはリンクせずに強調表示の為のコメント化
#		$list .= '<li><a href="' . $cat->cat_url . '"' . $text . '>' . $cat->name . '</a>';

# 追加の始まり
		if ( int($param{'num'}->{$cat->id}) == 0 ) {
			$list .= '<li><b>' . $cat->name . '</b>';
		}
		else {
			$list .= '<li><a href="' . $cat->cat_url;
			$list .= '"' . $text . '>' . $cat->name . '</a>';
		}
# 追加の終わり

# エントリ数非表示の為のコメント化
#		$list .= ' (' . int($param{'num'}->{$cat->id}) . ')' if (!$param{'no_num'});

		if ($cat->sub ne '') {
			$list .= "\n" . '<ul>';
			$list .= &_category_tree(
				'cat'    => $param{'cat'},
				'branch' => $cat->id,
				'num'    => $param{'num'},
				'no_num' => $param{'no_num'},
			);
			$list .= '</ul>';
		}
		$list .= '</li>' . "\n";
	}
	return($list);
}

  










  infoboard   管理者用   
このエントリーをはてなブックマークに追加





フリーフォントWEBサービス
SQLの窓WEBサービス

SQLの窓フリーソフト

素材

一般WEBツールリンク

SQLの窓

フリーソフト

JSライブラリ