diff options
| author | donncha <donncha@7be80a69-a1ef-0310-a953-fb0f7c49ff36> | 2005-12-16 10:28:20 +0000 |
|---|---|---|
| committer | donncha <donncha@7be80a69-a1ef-0310-a953-fb0f7c49ff36> | 2005-12-16 10:28:20 +0000 |
| commit | 0ad4b94b5dd2bdbac3314f7e2e8a8d9815935dfe (patch) | |
| tree | 524a881c1c901018837914038476eb37ce173cfa /wp-inst/wp-includes/functions-post.php | |
| parent | 631f99c5d026f9863851006f82c753c044f5a5c3 (diff) | |
| download | wordpress-mu-0ad4b94b5dd2bdbac3314f7e2e8a8d9815935dfe.tar.gz wordpress-mu-0ad4b94b5dd2bdbac3314f7e2e8a8d9815935dfe.tar.xz wordpress-mu-0ad4b94b5dd2bdbac3314f7e2e8a8d9815935dfe.zip | |
WP Merge
git-svn-id: http://svn.automattic.com/wordpress-mu/trunk@472 7be80a69-a1ef-0310-a953-fb0f7c49ff36
Diffstat (limited to 'wp-inst/wp-includes/functions-post.php')
| -rw-r--r-- | wp-inst/wp-includes/functions-post.php | 24 |
1 files changed, 14 insertions, 10 deletions
diff --git a/wp-inst/wp-includes/functions-post.php b/wp-inst/wp-includes/functions-post.php index 38c7540..e0136d4 100644 --- a/wp-inst/wp-includes/functions-post.php +++ b/wp-inst/wp-includes/functions-post.php @@ -181,20 +181,21 @@ function wp_insert_post($postarr = array()) { if ($post_status == 'publish') { do_action('publish_post', $post_ID); - if ($post_pingback && !defined('WP_IMPORTING')) - $result = $wpdb->query(" - INSERT INTO $wpdb->postmeta - (post_id,meta_key,meta_value) - VALUES ('$post_ID','_pingme','1') - "); - if ( !defined('WP_IMPORTING') ) + if ( !defined('WP_IMPORTING') ) { + if ( $post_pingback ) + $result = $wpdb->query(" + INSERT INTO $wpdb->postmeta + (post_id,meta_key,meta_value) + VALUES ('$post_ID','_pingme','1') + "); $result = $wpdb->query(" INSERT INTO $wpdb->postmeta (post_id,meta_key,meta_value) VALUES ('$post_ID','_encloseme','1') "); - //register_shutdown_function('do_trackbacks', $post_ID); - } else if ($post_status == 'static') { + spawn_pinger(); + } + } else if ($post_status == 'static') { generate_page_rewrite_rules(); if ( !empty($page_template) ) @@ -504,7 +505,8 @@ function wp_set_post_cats($blogid = '1', $post_ID = 0, $post_categories = array( } // Update category counts. - foreach ( $post_categories as $cat_id ) { + $all_affected_cats = array_unique(array_merge($post_categories, $old_categories)); + foreach ( $all_affected_cats as $cat_id ) { $count = $wpdb->get_var("SELECT COUNT(*) FROM $wpdb->post2cat, $wpdb->posts WHERE $wpdb->posts.ID=$wpdb->post2cat.post_id AND post_status='publish' AND category_id = '$cat_id'"); $wpdb->query("UPDATE $wpdb->categories SET category_count = '$count' WHERE cat_ID = '$cat_id'"); wp_cache_delete($cat_id, 'category'); @@ -701,6 +703,8 @@ function do_trackbacks($post_id) { if ( !in_array($tb_ping, $pinged) ) { trackback($tb_ping, $post_title, $excerpt, $post_id); $pinged[] = $tb_ping; + } else { + $wpdb->query("UPDATE $wpdb->posts SET to_ping = TRIM(REPLACE(to_ping, '$tb_ping', '')) WHERE ID = '$post_id'"); } endforeach; endif; } |
