Make WordPress Core

Changeset 7162


Ignore:
Timestamp:
03/05/2008 10:09:28 PM (18 years ago)
Author:
markjaquith
Message:

Post slug fixes from nbachiyski. fixes #6072

Location:
trunk
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • trunk/wp-admin/admin-ajax.php

    r7146 r7162  
    572572        check_ajax_referer( 'samplepermalink', 'samplepermalinknonce' );
    573573        $post_id = isset($_POST['post_id'])? intval($_POST['post_id']) : 0;
    574         die(get_sample_permalink_html($post_id, $_POST['new_title'], $_POST['new_slug']));
     574        $title = isset($_POST['new_title'])? $_POST['new_title'] : '';
     575        $slug = isset($_POST['new_slug'])? $_POST['new_slug'] : '';
     576        die(get_sample_permalink_html($post_id, $title, $slug));
    575577break;
    576578default :
  • trunk/wp-admin/includes/post.php

    r7146 r7162  
    582582}
    583583
    584 function get_sample_permalink($id, $title, $name = null) {
     584function get_sample_permalink($id, $title=null, $name = null) {
    585585        $post = &get_post($id);
    586586        if (!$post->ID) {
     
    590590        $original_date = $post->post_date;
    591591        $original_name = $post->post_name;
    592         $original_title = $post->post_title;
    593 
    594         $post->post_title = $title;
    595         $post->post_name = sanitize_title($post->post_name? $post->post_name : $post->post_title, $post->ID);
    596 
     592
     593        // Hack: get_permalink would return ugly permalink for
     594        // drafts, so we will fake, that our post is published
    597595        if (in_array($post->post_status, array('draft', 'pending'))) {
    598596                $post->post_status = 'publish';
    599597                $post->post_date = date('Y-m-d H:i:s');
    600         }
     598                $post->post_name = sanitize_title($post->post_name? $post->post_name : $post->post_title, $post->ID);
     599        }
     600
     601        // If the user wants to set a new name -- override the current one
     602        // Note: if empty name is supplied -- use the title instead, see #6072
    601603        if (!is_null($name)) {
    602                 $post->post_name = sanitize_title($name? $name : $post->post_title, $post->ID);
     604                $post->post_name = sanitize_title($name? $name : $title, $post->ID);
    603605        }
    604606
  • trunk/wp-includes/js/autosave.js

    r7146 r7162  
    9393                                action: 'sample-permalink',
    9494                                post_id: post_id,
     95                                new_title: jQuery('#title').val(),
    9596                                samplepermalinknonce: jQuery('#samplepermalinknonce').val()
    9697                        },
Note: See TracChangeset for help on using the changeset viewer.