sanitize_post() – Sanitize every post field.

You appear to be a bot. Output may be restricted

Description

Sanitizes every post field.

If the context is 'raw', then the post object or array will get minimal sanitization of the integer fields.

Usage

$object|WP_Post|array = sanitize_post( $post, $context );

Parameters

$post
( object|WP_Post|array ) required – The post object or array
$context
( string ) optional default: display – Optional. How to sanitize post fields. Accepts 'raw', 'edit', 'db', 'display', 'attribute', or 'js'. Default 'display'.

Returns

object|WP_Post|array The now sanitized post object or array (will be the same type as `$post`).

Source

File name: wordpress/wp-includes/post.php
Lines:

1 to 28 of 28
function sanitize_post( $post, $context = 'display' ) {
  if ( is_object( $post ) ) {
    // Check if post already filtered for this context.
    if ( isset( $post->filter ) && $context == $post->filter ) {
      return $post;
    }
    if ( ! isset( $post->ID ) ) {
      $post->ID = 0;
    }
    foreach ( array_keys( get_object_vars( $post ) ) as $field ) {
      $post->$field = sanitize_post_field( $field, $post->$field, $post->ID, $context );
    }
    $post->filter = $context;
  } elseif ( is_array( $post ) ) {
    // Check if post already filtered for this context.
    if ( isset( $post['filter'] ) && $context == $post['filter'] ) {
      return $post;
    }
    if ( ! isset( $post['ID'] ) ) {
      $post['ID'] = 0;
    }
    foreach ( array_keys( $post ) as $field ) {
      $post[ $field ] = sanitize_post_field( $field, $post[ $field ], $post['ID'], $context );
    }
    $post['filter'] = $context;
  }
  return $post;
}
 

 View on GitHub View on Trac