Make WordPress Core


Ignore:
Timestamp:
02/19/2010 09:54:18 AM (16 years ago)
Author:
dd32
Message:

Fix $post_type handling/passing in the Taxonomy edit links. Fix the Tag selection query var for edit.php in the Posts links. See #12270, See #11838

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/wp-admin/edit-tags.php

    r13160 r13213  
    4646
    4747    $ret = wp_insert_term($_POST['tag-name'], $taxonomy, $_POST);
    48     if ( $ret && !is_wp_error( $ret ) ) {
    49         wp_redirect("edit-tags.php?taxonomy=$taxonomy&message=1#addtag");
    50     } else {
    51         wp_redirect("edit-tags.php?taxonomy=$taxonomy&message=4#addtag");
    52     }
     48    $location = 'edit-tags.php?taxonomy=' . $taxonomy;
     49    if ( 'post' != $post_type )
     50        $location .= '&post_type=' . $post_type;
     51
     52    if ( $referer = wp_get_original_referer() ) {
     53        if ( false !== strpos($referer, 'edit-tags.php') )
     54            $location = $referer;
     55    }
     56
     57    if ( $ret && !is_wp_error( $ret ) )
     58        $location = add_query_arg('message', 1, $location);
     59    else
     60        $location = add_query_arg('message', 4, $location);
    5361    exit;
    5462break;
    5563
    5664case 'delete':
    57     if ( !isset( $_GET['tag_ID'] ) ) {
    58         wp_redirect("edit-tags.php?taxonomy=$taxonomy");
    59         exit;
    60     }
    61 
    62     $tag_ID = (int) $_GET['tag_ID'];
    63     check_admin_referer('delete-tag_' .  $tag_ID);
    64 
    65     if ( !current_user_can($tax->delete_cap) )
    66         wp_die(__('Cheatin’ uh?'));
    67 
    68     wp_delete_term( $tag_ID, $taxonomy);
    69 
    7065    $location = 'edit-tags.php?taxonomy=' . $taxonomy;
     66    if ( 'post' != $post_type )
     67        $location .= '&post_type=' . $post_type;
    7168    if ( $referer = wp_get_referer() ) {
    7269        if ( false !== strpos($referer, 'edit-tags.php') )
     
    7471    }
    7572
     73    if ( !isset( $_GET['tag_ID'] ) ) {
     74        wp_redirect($location);
     75        exit;
     76    }
     77
     78    $tag_ID = (int) $_GET['tag_ID'];
     79    check_admin_referer('delete-tag_' .  $tag_ID);
     80
     81    if ( !current_user_can($tax->delete_cap) )
     82        wp_die(__('Cheatin’ uh?'));
     83
     84    wp_delete_term( $tag_ID, $taxonomy);
     85
    7686    $location = add_query_arg('message', 2, $location);
    7787    wp_redirect($location);
     
    92102
    93103    $location = 'edit-tags.php?taxonomy=' . $taxonomy;
     104    if ( 'post' != $post_type )
     105        $location .= '&post_type=' . $post_type;
    94106    if ( $referer = wp_get_referer() ) {
    95107        if ( false !== strpos($referer, 'edit-tags.php') )
     
    124136
    125137    $location = 'edit-tags.php?taxonomy=' . $taxonomy;
     138    if ( 'post' != $post_type )
     139        $location .= '&post_type=' . $post_type;
     140
    126141    if ( $referer = wp_get_original_referer() ) {
    127142        if ( false !== strpos($referer, 'edit-tags.php') )
Note: See TracChangeset for help on using the changeset viewer.