| 1 |
<?php |
| 2 |
function wp_insert_pages_page() { |
| 3 |
global $screen_layout_columns; |
| 4 |
wp_insert_update_page_order(); |
| 5 |
add_meta_box('wp_insert_manage_page_order', 'Manage Page Order', 'wp_insert_manage_page_order_HTML', 'col_1'); |
| 6 |
|
| 7 |
$parameters = 'wp_insert_updated_page_order'; |
| 8 |
wp_insert_settings_page_layout($parameters, 'WP-INSERT : Manage Pages', 'pages'); |
| 9 |
} |
| 10 |
|
| 11 |
function wp_insert_manage_page_order_HTML() { ?> |
| 12 |
<input id="wp_insert_updated_page_order" name="wp_insert_updated_page_order" type="hidden" value="" /> |
| 13 |
<ul id="wp_insert_page_list"> |
| 14 |
<?php |
| 15 |
$pages = get_pages('sort_column=menu_order'); |
| 16 |
foreach($pages as $page) { ?> |
| 17 |
<li id="wp_insert_listItem_<?php echo $page->ID; ?>"> |
| 18 |
<img src="<?php echo WP_PLUGIN_URL; ?>/wp-insert/images/move-16x16.png" width="16px" height="16px" alt="move" class="handle" /> |
| 19 |
<strong> |
| 20 |
<?php if($page->post_parent != 0) { echo get_the_title($page->post_parent)." » ".$page->post_title; } else { echo $page->post_title; } ?> |
| 21 |
</strong></a> |
| 22 |
<?php |
| 23 |
/*$temp = ''; |
| 24 |
foreach($pages as $subPage) { |
| 25 |
if($subPage->post_parent == $page->ID) { |
| 26 |
$temp .= '<li id="wp_insert_listItem_'.$subPage->ID.'">'; |
| 27 |
$temp .= '<img src="<?php echo WP_PLUGIN_URL; ?>/wp-insert/images/move-16x16.png" width="16px" height="16px" alt="move" class="handle" />'; |
| 28 |
$temp .= '<strong>'.$subPage->post_title.'</strong></a>'; |
| 29 |
$temp .= '</li>'; |
| 30 |
} |
| 31 |
} |
| 32 |
if($temp != '') { echo '<ul style="margin-left: 25px;">'.$temp.'</ul>'; }*/ |
| 33 |
?> |
| 34 |
</li> |
| 35 |
<?php } |
| 36 |
?> |
| 37 |
</ul> |
| 38 |
<script type="text/javascript"> |
| 39 |
jQuery("#wp_insert_page_list").sortable({ |
| 40 |
handle : '.handle', |
| 41 |
update : function () { |
| 42 |
wpInsertToggleNotSavedAlert(); |
| 43 |
var items = jQuery('#wp_insert_page_list').sortable('toArray'); |
| 44 |
for (i=0; i<items.length; i++) { |
| 45 |
items[i] = items[i].replace("wp_insert_listItem_", ""); |
| 46 |
} |
| 47 |
document.getElementById('wp_insert_updated_page_order').value = items.join(","); |
| 48 |
} |
| 49 |
}); |
| 50 |
</script> |
| 51 |
<?php } |
| 52 |
|
| 53 |
function wp_insert_update_page_order() { |
| 54 |
if(get_option(wp_insert_updated_page_order) != '') { |
| 55 |
global $wpdb; |
| 56 |
$pageOrder = explode(",", get_option(wp_insert_updated_page_order)); |
| 57 |
$sql = "UPDATE $wpdb->posts SET menu_order = CASE id "; |
| 58 |
for($i = 0; $i < count($pageOrder); $i++) { |
| 59 |
global $wpdb; |
| 60 |
$sql .= "WHEN ".$pageOrder[$i]." THEN ".$i." "; |
| 61 |
} |
| 62 |
$sql .= "END WHERE id IN (".get_option(wp_insert_updated_page_order).")"; |
| 63 |
$wpdb->query($sql); |
| 64 |
update_option(wp_insert_updated_page_order, ''); |
| 65 |
} |
| 66 |
} |
| 67 |
?> |