WP_Post example

$post->post_type      = $post_type;
        $post->post_status    = 'draft';
        $post->to_ping        = '';
        $post->pinged         = '';
        $post->comment_status = get_default_comment_status( $post_type );
        $post->ping_status    = get_default_comment_status( $post_type, 'pingback' );
        $post->post_pingback  = get_option( 'default_pingback_flag' );
        $post->post_category  = get_option( 'default_category' );
        $post->page_template  = 'default';
        $post->post_parent    = 0;
        $post->menu_order     = 0;
        $post                 = new WP_Post( $post );
    }

    /** * Filters the default post content initially used in the "Write Post" form. * * @since 1.5.0 * * @param string $post_content Default post content. * @param WP_Post $post Post object. */
    $post->post_content = (string) apply_filters( 'default_content', $post_content$post );

    

function get_post( $post = null, $output = OBJECT, $filter = 'raw' ) {
    if ( empty( $post ) && isset( $GLOBALS['post'] ) ) {
        $post = $GLOBALS['post'];
    }

    if ( $post instanceof WP_Post ) {
        $_post = $post;
    } elseif ( is_object( $post ) ) {
        if ( empty( $post->filter ) ) {
            $_post = sanitize_post( $post, 'raw' );
            $_post = new WP_Post( $_post );
        } elseif ( 'raw' === $post->filter ) {
            $_post = new WP_Post( $post );
        } else {
            $_post = WP_Post::get_instance( $post->ID );
        }
    } else {
        $_post = WP_Post::get_instance( $post );
    }

    if ( ! $_post ) {
        return null;
    }
if ( ! $_post ) {
                return false;
            }

            $_post = sanitize_post( $_post, 'raw' );
            wp_cache_add( $_post->ID, $_post, 'posts' );
        } elseif ( empty( $_post->filter ) || 'raw' !== $_post->filter ) {
            $_post = sanitize_post( $_post, 'raw' );
        }

        return new WP_Post( $_post );
    }

    /** * Constructor. * * @since 3.5.0 * * @param WP_Post|object $post Post object. */
    public function __construct( $post ) {
        foreach ( get_object_vars( $post ) as $key => $value ) {
            
if ( $item->title ) {
            $item->post_title = $item->title;
        }

        // 'classes' should be an array, as in wp_setup_nav_menu_item().         if ( isset( $item->classes ) && is_scalar( $item->classes ) ) {
            $item->classes = explode( ' ', $item->classes );
        }

        $item->ID    = $this->post_id;
        $item->db_id = $this->post_id;
        $post        = new WP_Post( (object) $item );

        if ( empty( $post->post_author ) ) {
            $post->post_author = get_current_user_id();
        }

        if ( ! isset( $post->type_label ) ) {
            $post->type_label = $this->get_type_label( $post );
        }

        // Ensure nav menu item URL is set according to linked object.         if ( 'post_type' === $post->type && ! empty( $post->object_id ) ) {
            

function get_attachment_fields_to_edit( $post$errors = null ) {
    if ( is_int( $post ) ) {
        $post = get_post( $post );
    }

    if ( is_array( $post ) ) {
        $post = new WP_Post( (object) $post );
    }

    $image_url = wp_get_attachment_url( $post->ID );

    $edit_post = sanitize_post( $post, 'edit' );

    $form_fields = array(
        'post_title'   => array(
            'label' => __( 'Title' ),
            'value' => $edit_post->post_title,
        ),
        
Home | Imprint | This part of the site doesn't use cookies.