2004-01-27 10:33:19 +01:00
< ? php
// Dandy new recursive multiple category stuff.
2004-02-01 03:00:26 +01:00
function cat_rows ( $parent = 0 , $level = 0 , $categories = 0 ) {
2004-01-27 10:33:19 +01:00
global $wpdb , $tablecategories , $tablepost2cat , $bgcolor ;
2004-02-01 03:00:26 +01:00
if ( ! $categories ) {
$categories = $wpdb -> get_results ( " SELECT * FROM $tablecategories ORDER BY cat_name " );
}
2004-01-27 10:33:19 +01:00
if ( $categories ) {
foreach ( $categories as $category ) {
2004-02-01 03:00:26 +01:00
if ( $category -> category_parent == $parent ) {
$count = $wpdb -> get_var ( " SELECT COUNT(post_id) FROM $tablepost2cat WHERE category_id = $category->cat_ID " );
$pad = str_repeat ( '— ' , $level );
2004-01-27 10:33:19 +01:00
2004-02-01 03:00:26 +01:00
$bgcolor = ( '#eee' == $bgcolor ) ? 'none' : '#eee' ;
echo " <tr style='background-color: $bgcolor '><td> $pad $category->cat_name </td>
< td > $category -> category_description </ td >
< td > $count </ td >
< td >< a href = 'categories.php?action=edit&cat_ID=$category->cat_ID' class = 'edit' > Edit </ a ></ td >< td >< a href = 'categories.php?action=Delete&cat_ID=$category->cat_ID' onclick = \ " return confirm('You are about to delete the category \ ' " . addslashes ( $category -> cat_name ) . " \ ' and all its posts will go to the default category. \\ n \ 'OK \ ' to delete, \ 'Cancel \ ' to stop.') \" class='delete'>Delete</a></td>
</ tr > " ;
2004-01-27 10:33:19 +01:00
cat_rows ( $category -> cat_ID , $level + 1 );
2004-02-01 03:00:26 +01:00
}
2004-01-27 10:33:19 +01:00
}
} else {
return false ;
}
}
2004-02-01 03:00:26 +01:00
function wp_dropdown_cats ( $currentcat , $currentparent = 0 , $parent = 0 , $level = 0 , $categories = 0 ) {
2004-01-27 10:33:19 +01:00
global $wpdb , $tablecategories , $tablepost2cat , $bgcolor ;
2004-02-01 03:00:26 +01:00
if ( ! $categories ) {
$categories = $wpdb -> get_results ( " SELECT * FROM $tablecategories ORDER BY cat_name " );
}
2004-01-27 10:33:19 +01:00
if ( $categories ) {
2004-02-01 03:00:26 +01:00
foreach ( $categories as $category ) { if ( $currentcat != $category -> cat_ID && $parent == $category -> category_parent ) {
2004-01-27 10:33:19 +01:00
$count = $wpdb -> get_var ( " SELECT COUNT(post_id) FROM $tablepost2cat WHERE category_id = $category->cat_ID " );
$pad = str_repeat ( '– ' , $level );
echo " \n \t <option value=' $category->cat_ID ' " ;
if ( $currentparent == $category -> cat_ID )
echo " selected='selected' " ;
echo " > $pad $category->cat_name </option> " ;
2004-02-01 03:00:26 +01:00
wp_dropdown_cats ( $currentcat , $currentparent , $category -> cat_ID , $level + 1 , $categories );
2004-01-27 10:33:19 +01:00
} }
} else {
return false ;
}
}
?>