post_exists( string $title, string $content = '', string $date = '' )
Determine if a post exists based on title, content, and date
Parameters
- $title
-
(Required) Post title
- $content
-
(Optional) post content
Default value: ''
- $date
-
(Optional) post date
Default value: ''
Return
(int) Post ID if post exists, 0 otherwise.
Source
File: wp-admin/includes/post.php
function post_exists($title, $content = '', $date = '') {
global $wpdb;
$post_title = wp_unslash( sanitize_post_field( 'post_title', $title, 0, 'db' ) );
$post_content = wp_unslash( sanitize_post_field( 'post_content', $content, 0, 'db' ) );
$post_date = wp_unslash( sanitize_post_field( 'post_date', $date, 0, 'db' ) );
$query = "SELECT ID FROM $wpdb->posts WHERE 1=1";
$args = array();
if ( !empty ( $date ) ) {
$query .= ' AND post_date = %s';
$args[] = $post_date;
}
if ( !empty ( $title ) ) {
$query .= ' AND post_title = %s';
$args[] = $post_title;
}
if ( !empty ( $content ) ) {
$query .= ' AND post_content = %s';
$args[] = $post_content;
}
if ( !empty ( $args ) )
return (int) $wpdb->get_var( $wpdb->prepare($query, $args) );
return 0;
}
Changelog
Version | Description |
---|---|
WP-2.0.0 | Introduced. |