WordPress.org

Make WordPress Core

Ticket #15795: 15795-4.diff

File 15795-4.diff, 2.1 KB (added by greuben, 8 years ago)

post formats in select box and with missing post/save login

  • wp-admin/press-this.php

     
    3232        $quick['tax_input'] = isset($_POST['tax_input']) ? $_POST['tax_input'] : null;
    3333        $quick['post_title'] = ( trim($_POST['title']) != '' ) ? $_POST['title'] : '  ';
    3434        $quick['post_content'] = isset($_POST['post_content']) ? $_POST['post_content'] : '';
     35        $post_format = isset( $_POST['post_format'] ) ? $_POST['post_format'] : false;
    3536
    3637        // insert the post with nothing in it, to get an ID
    3738        $post_ID = wp_insert_post($quick, true);
     
    6465        } else {
    6566                $quick['ID'] = $post_ID;
    6667                wp_update_post($quick);
     68                $post_formats = get_theme_support('post-formats');
     69                if( is_array( $post_formats ) && $post_format ){
     70                        $post_formats = $post_formats[0];
     71                        if( in_array( $post_format, $post_formats) ){
     72                                set_post_format( $post_ID, $post_format);
     73                        } elseif( '0' == $post_format ){
     74                                set_post_format( $post_ID, false );
     75                        }
     76            }
    6777        }
    6878        return $post_ID;
    6979}
     
    486496                                        </p>
    487497                                </div>
    488498                        </div>
     499                       
     500                        <?php if ( current_theme_supports( 'post-formats' ) ): ?>
     501                        <div id="formatdiv" class="postbox">
     502                                <div class="handlediv" title="<?php _e('Click to toggle'); ?>">
     503                                        <br />
     504                                </div>
     505                                <h3><?php _e('Format'); ?></h3>
     506                                <div class="inside">
     507                                        <div id="post-formats-select">
     508                                                <?php
     509                                                        $post_formats = get_theme_support( 'post-formats' );
     510                                                        if( is_array( $post_formats[0] ) ):
     511                                                ?>
     512                                                <select name="post_format" id="post_format">
     513                                                <option value="0" selected="selected" /><?php _e('Standard'); ?></option>
     514                                                <?php foreach( $post_formats[0] as $format ): ?>
     515                                                <option value="<?php echo esc_attr( $format ); ?>" /> <?php echo esc_html( get_post_format_string( $format ) ); ?></option>
     516                                                <?php endforeach; ?>
     517                                                </select>
     518                                                <br />
     519                                                <?php endif; ?>
     520                                        </div>
     521                                </div>
     522                        </div>
     523                        <?php endif; ?>
    489524
    490525                        <?php $tax = get_taxonomy( 'category' ); ?>
    491526                        <div id="categorydiv" class="postbox">