mirror of
https://github.com/WordPress/WordPress.git
synced 2024-12-22 17:18:32 +01:00
phpdoc for comment.php from darkdragon. fixes #5578
git-svn-id: http://svn.automattic.com/wordpress/trunk@6553 1a063a9b-81f0-0310-95a4-ce76da25c4cd
This commit is contained in:
parent
91586ebff4
commit
502a542d64
@ -1,5 +1,27 @@
|
||||
<?php
|
||||
/**
|
||||
* Manages WordPress comments
|
||||
*
|
||||
* @package WordPress
|
||||
*/
|
||||
|
||||
/**
|
||||
* check_comment() - Checks whether a comment passes internal checks to be allowed to add
|
||||
*
|
||||
* {@internal Missing Long Description}}
|
||||
*
|
||||
* @since 1.2
|
||||
* @uses $wpdb
|
||||
*
|
||||
* @param string $author {@internal Missing Description }}
|
||||
* @param string $email {@internal Missing Description }}
|
||||
* @param string $url {@internal Missing Description }}
|
||||
* @param string $comment {@internal Missing Description }}
|
||||
* @param string $user_ip {@internal Missing Description }}
|
||||
* @param string $user_agent {@internal Missing Description }}
|
||||
* @param string $comment_type {@internal Missing Description }}
|
||||
* @return bool {@internal Missing Description }}
|
||||
*/
|
||||
function check_comment($author, $email, $url, $comment, $user_ip, $user_agent, $comment_type) {
|
||||
global $wpdb;
|
||||
|
||||
@ -60,15 +82,32 @@ function check_comment($author, $email, $url, $comment, $user_ip, $user_agent, $
|
||||
return true;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* get_approved_comments() - Returns the approved comments for post $post_id
|
||||
*
|
||||
* @since 2.0
|
||||
* @uses $wpdb
|
||||
*
|
||||
* @param int $post_id The ID of the post
|
||||
* @return array $comments The approved comments
|
||||
*/
|
||||
function get_approved_comments($post_id) {
|
||||
global $wpdb;
|
||||
return $wpdb->get_results($wpdb->prepare("SELECT * FROM $wpdb->comments WHERE comment_post_ID = %d AND comment_approved = '1' ORDER BY comment_date", $post_id));
|
||||
}
|
||||
|
||||
|
||||
// Retrieves comment data given a comment ID or comment object.
|
||||
// Handles comment caching.
|
||||
/**
|
||||
* get_comment() - Retrieves comment data given a comment ID or comment object.
|
||||
*
|
||||
* {@internal Missing Long Description}}
|
||||
*
|
||||
* @since 2.0
|
||||
* @uses $wpdb
|
||||
*
|
||||
* @param object|string|int $comment {@internal Missing Description}}
|
||||
* @param string $output OBJECT or ARRAY_A or ARRAY_N constants
|
||||
* @return object|array|null Depends on $output value.
|
||||
*/
|
||||
function &get_comment(&$comment, $output = OBJECT) {
|
||||
global $wpdb;
|
||||
|
||||
@ -102,8 +141,27 @@ function &get_comment(&$comment, $output = OBJECT) {
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
// Deprecate in favor of get_comment()?
|
||||
/**
|
||||
* get_commentdata() - Returns an array of comment data about comment $comment_ID
|
||||
*
|
||||
* get_comment() technically does the same thing as this function. This function also
|
||||
* appears to reference variables and then not use them or not update them when needed.
|
||||
* It is advised to switch to get_comment(), since this function might be deprecated in
|
||||
* favor of using get_comment().
|
||||
*
|
||||
* @deprecated Use get_comment()
|
||||
* @see get_comment()
|
||||
* @since 0.71
|
||||
*
|
||||
* @uses $postc Comment cache, might not be used any more
|
||||
* @uses $id
|
||||
* @uses $wpdb Database Object
|
||||
*
|
||||
* @param int $comment_ID The ID of the comment
|
||||
* @param int $no_cache Whether to use the cache or not (casted to bool)
|
||||
* @param bool $include_unapproved Whether to include unapproved comments or not
|
||||
* @return array The comment data
|
||||
*/
|
||||
function get_commentdata( $comment_ID, $no_cache = 0, $include_unapproved = false ) { // less flexible, but saves DB queries
|
||||
global $postc, $wpdb;
|
||||
if ( $no_cache ) {
|
||||
@ -127,7 +185,18 @@ function get_commentdata( $comment_ID, $no_cache = 0, $include_unapproved = fals
|
||||
return $myrow;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* get_lastcommentmodified() - The date the last comment was modified
|
||||
*
|
||||
* {@internal Missing Long Description}}
|
||||
*
|
||||
* @since 1.5.0
|
||||
* @uses $wpdb
|
||||
* @global array $cache_lastcommentmodified
|
||||
*
|
||||
* @param string $timezone Which timezone to use in reference to 'gmt', 'blog', or 'server' locations
|
||||
* @return string Last comment modified date
|
||||
*/
|
||||
function get_lastcommentmodified($timezone = 'server') {
|
||||
global $cache_lastcommentmodified, $wpdb;
|
||||
$add_seconds_server = date('Z');
|
||||
@ -151,54 +220,72 @@ function get_lastcommentmodified($timezone = 'server') {
|
||||
return $lastcommentmodified;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* get_comment_count() - The amount of comments in a post or total comments
|
||||
*
|
||||
* {@internal Missing Long Description}}
|
||||
*
|
||||
* @since 2.0.0
|
||||
* @uses $wpdb
|
||||
*
|
||||
* @param int $post_id Optional. Comment amount in post if > 0, else total com
|
||||
ments blog wide
|
||||
* @return array The amount of spam, approved, awaiting moderation, and total
|
||||
*/
|
||||
function get_comment_count( $post_id = 0 ) {
|
||||
global $wpdb;
|
||||
global $wpdb;
|
||||
|
||||
$post_id = (int) $post_id;
|
||||
$post_id = (int) $post_id;
|
||||
|
||||
$where = '';
|
||||
if ( $post_id > 0 ) {
|
||||
$where = "WHERE comment_post_ID = {$post_id}";
|
||||
}
|
||||
$where = '';
|
||||
if ( $post_id > 0 ) {
|
||||
$where = "WHERE comment_post_ID = {$post_id}";
|
||||
}
|
||||
|
||||
$totals = (array) $wpdb->get_results("
|
||||
SELECT comment_approved, COUNT( * ) AS total
|
||||
FROM {$wpdb->comments}
|
||||
{$where}
|
||||
GROUP BY comment_approved
|
||||
", ARRAY_A);
|
||||
$totals = (array) $wpdb->get_results("
|
||||
SELECT comment_approved, COUNT( * ) AS total
|
||||
FROM {$wpdb->comments}
|
||||
{$where}
|
||||
GROUP BY comment_approved
|
||||
", ARRAY_A);
|
||||
|
||||
$comment_count = array(
|
||||
"approved" => 0,
|
||||
"awaiting_moderation" => 0,
|
||||
"spam" => 0,
|
||||
"total_comments" => 0
|
||||
);
|
||||
$comment_count = array(
|
||||
"approved" => 0,
|
||||
"awaiting_moderation" => 0,
|
||||
"spam" => 0,
|
||||
"total_comments" => 0
|
||||
);
|
||||
|
||||
foreach ( $totals as $row ) {
|
||||
switch ( $row['comment_approved'] ) {
|
||||
case 'spam':
|
||||
$comment_count['spam'] = $row['total'];
|
||||
$comment_count["total_comments"] += $row['total'];
|
||||
break;
|
||||
case 1:
|
||||
$comment_count['approved'] = $row['total'];
|
||||
$comment_count['total_comments'] += $row['total'];
|
||||
break;
|
||||
case 0:
|
||||
$comment_count['awaiting_moderation'] = $row['total'];
|
||||
$comment_count['total_comments'] += $row['total'];
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
}
|
||||
foreach ( $totals as $row ) {
|
||||
switch ( $row['comment_approved'] ) {
|
||||
case 'spam':
|
||||
$comment_count['spam'] = $row['total'];
|
||||
$comment_count["total_comments"] += $row['total'];
|
||||
break;
|
||||
case 1:
|
||||
$comment_count['approved'] = $row['total'];
|
||||
$comment_count['total_comments'] += $row['total'];
|
||||
break;
|
||||
case 0:
|
||||
$comment_count['awaiting_moderation'] = $row['total'];
|
||||
$comment_count['total_comments'] += $row['total'];
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
return $comment_count;
|
||||
return $comment_count;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* sanitize_comment_cookies() - {@internal Missing Short Description}}
|
||||
*
|
||||
* {@internal Missing Long Description}}
|
||||
*
|
||||
* @since 2.0.4
|
||||
*
|
||||
*/
|
||||
function sanitize_comment_cookies() {
|
||||
if ( isset($_COOKIE['comment_author_'.COOKIEHASH]) ) {
|
||||
$comment_author = apply_filters('pre_comment_author_name', $_COOKIE['comment_author_'.COOKIEHASH]);
|
||||
@ -221,7 +308,19 @@ function sanitize_comment_cookies() {
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* wp_allow_comment() - Validates whether this comment is allowed to be made or not
|
||||
*
|
||||
* {@internal Missing Long Description}}
|
||||
*
|
||||
* @since 2.0.0
|
||||
* @uses $wpdb
|
||||
* @uses apply_filters() Calls 'pre_comment_approved' hook on the type of comment
|
||||
* @uses do_action() Calls 'check_comment_flood' hook on $comment_author_IP, $comment_author_email, and $comment_date_gmt
|
||||
*
|
||||
* @param array $commentdata Contains information on the comment
|
||||
* @return mixed Signifies the approval status (0|1|'spam')
|
||||
*/
|
||||
function wp_allow_comment($commentdata) {
|
||||
global $wpdb;
|
||||
extract($commentdata, EXTR_SKIP);
|
||||
@ -260,6 +359,20 @@ function wp_allow_comment($commentdata) {
|
||||
return $approved;
|
||||
}
|
||||
|
||||
/**
|
||||
* check_comment_flood_db() - {@internal Missing Short Description}}
|
||||
*
|
||||
* {@internal Missing Long Description}}
|
||||
*
|
||||
* @since 2.3.0
|
||||
* @uses $wpdb
|
||||
* @uses apply_filters() {@internal Missing Description}}
|
||||
* @uses do_action() {@internal Missing Description}}
|
||||
*
|
||||
* @param string $ip {@internal Missing Description}}
|
||||
* @param string $email {@internal Missing Description}}
|
||||
* @param unknown_type $date {@internal Missing Description}}
|
||||
*/
|
||||
function check_comment_flood_db( $ip, $email, $date ) {
|
||||
global $wpdb;
|
||||
if ( $lasttime = $wpdb->get_var("SELECT comment_date_gmt FROM $wpdb->comments WHERE comment_author_IP = '$ip' OR comment_author_email = '$email' ORDER BY comment_date DESC LIMIT 1") ) {
|
||||
@ -273,6 +386,22 @@ function check_comment_flood_db( $ip, $email, $date ) {
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* wp_blacklist_check() - Does comment contain blacklisted characters or words
|
||||
*
|
||||
* {@internal Missing Long Description}}
|
||||
*
|
||||
* @since 1.5.0
|
||||
* @uses do_action() Calls 'wp_blacklist_check' hook for all parameters
|
||||
*
|
||||
* @param string $author The author of the comment
|
||||
* @param string $email The email of the comment
|
||||
* @param string $url The url used in the comment
|
||||
* @param string $comment The comment content
|
||||
* @param string $user_ip The comment author IP address
|
||||
* @param string $user_agent The author's browser user agent
|
||||
* @return bool True if comment contains blacklisted content, false if comment does not
|
||||
*/
|
||||
function wp_blacklist_check($author, $email, $url, $comment, $user_ip, $user_agent) {
|
||||
do_action('wp_blacklist_check', $author, $email, $url, $comment, $user_ip, $user_agent);
|
||||
|
||||
@ -315,7 +444,20 @@ function wp_blacklist_check($author, $email, $url, $comment, $user_ip, $user_age
|
||||
return false;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* wp_delete_comment() - Removes comment ID and maybe updates post comment count
|
||||
*
|
||||
* The post comment count will be updated if the comment was approved and has a post
|
||||
* ID available.
|
||||
*
|
||||
* @since 2.0.0
|
||||
* @uses $wpdb
|
||||
* @uses do_action() Calls 'delete_comment' hook on comment ID
|
||||
* @uses do_action() Calls 'wp_set_comment_status' hook on comment ID with 'delete' set for the second parameter
|
||||
*
|
||||
* @param int $comment_id Comment ID
|
||||
* @return bool False if delete comment query failure, true on success
|
||||
*/
|
||||
function wp_delete_comment($comment_id) {
|
||||
global $wpdb;
|
||||
do_action('delete_comment', $comment_id);
|
||||
@ -335,7 +477,14 @@ function wp_delete_comment($comment_id) {
|
||||
return true;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* wp_get_comment_status() - The status of a comment by ID
|
||||
*
|
||||
* @since 1.0.0
|
||||
*
|
||||
* @param int $comment_id Comment ID
|
||||
* @return string|bool Status might be 'deleted', 'approved', 'unapproved', 'spam'. False on failure
|
||||
*/
|
||||
function wp_get_comment_status($comment_id) {
|
||||
$comment = get_comment($comment_id);
|
||||
if ( !$comment )
|
||||
@ -355,7 +504,18 @@ function wp_get_comment_status($comment_id) {
|
||||
return false;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* wp_get_current_commenter() - Get current commenter's name, email, and URL
|
||||
*
|
||||
* Expects cookies content to already be sanitized. User of this function
|
||||
* might wish to recheck the returned array for validity.
|
||||
*
|
||||
* @see sanitize_comment_cookies() Use to sanitize cookies
|
||||
*
|
||||
* @since 2.0.4
|
||||
*
|
||||
* @return array Comment author, email, url respectively
|
||||
*/
|
||||
function wp_get_current_commenter() {
|
||||
// Cookies should already be sanitized.
|
||||
|
||||
@ -374,7 +534,17 @@ function wp_get_current_commenter() {
|
||||
return compact('comment_author', 'comment_author_email', 'comment_author_url');
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* wp_insert_comment() - Inserts a comment to the database
|
||||
*
|
||||
* {@internal Missing Long Description}}
|
||||
*
|
||||
* @since 2.0.0
|
||||
* @uses $wpdb
|
||||
*
|
||||
* @param array $commentdata Contains information on the comment
|
||||
* @return int The new comment's id
|
||||
*/
|
||||
function wp_insert_comment($commentdata) {
|
||||
global $wpdb;
|
||||
extract($commentdata, EXTR_SKIP);
|
||||
@ -406,7 +576,25 @@ function wp_insert_comment($commentdata) {
|
||||
return $id;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* wp_filter_comment() - Parses and returns comment information
|
||||
*
|
||||
* Sets the comment data 'filtered' field to true when finished. This
|
||||
* can be checked as to whether the comment should be filtered and to
|
||||
* keep from filtering the same comment more than once.
|
||||
*
|
||||
* @since 2.0.0
|
||||
* @uses apply_filters() Calls 'pre_user_id' hook on comment author's user ID
|
||||
* @uses apply_filters() Calls 'pre_comment_user_agent' hook on comment author's user agent
|
||||
* @uses apply_filters() Calls 'pre_comment_author_name' hook on comment author's name
|
||||
* @uses apply_filters() Calls 'pre_comment_content' hook on the comment's content
|
||||
* @uses apply_filters() Calls 'pre_comment_user_ip' hook on comment author's IP
|
||||
* @uses apply_filters() Calls 'pre_comment_author_url' hook on comment author's URL
|
||||
* @uses apply_filters() Calls 'pre_comment_author_email' hook on comment author's email address
|
||||
*
|
||||
* @param array $commentdata Contains information on the comment
|
||||
* @return array Parsed comment information
|
||||
*/
|
||||
function wp_filter_comment($commentdata) {
|
||||
$commentdata['user_id'] = apply_filters('pre_user_id', $commentdata['user_ID']);
|
||||
$commentdata['comment_agent'] = apply_filters('pre_comment_user_agent', $commentdata['comment_agent']);
|
||||
@ -419,7 +607,18 @@ function wp_filter_comment($commentdata) {
|
||||
return $commentdata;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* wp_throttle_comment_flood() - {@internal Missing Short Description}}
|
||||
*
|
||||
* {@internal Missing Long Description}}
|
||||
*
|
||||
* @since 2.1.0
|
||||
*
|
||||
* @param unknown_type $block {@internal Missing Description}}
|
||||
* @param unknown_type $time_lastcomment {@internal Missing Description}}
|
||||
* @param unknown_type $time_newcomment {@internal Missing Description}}
|
||||
* @return unknown {@internal Missing Description}}
|
||||
*/
|
||||
function wp_throttle_comment_flood($block, $time_lastcomment, $time_newcomment) {
|
||||
if ( $block ) // a plugin has already blocked... we'll let that decision stand
|
||||
return $block;
|
||||
@ -428,7 +627,21 @@ function wp_throttle_comment_flood($block, $time_lastcomment, $time_newcomment)
|
||||
return false;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* wp_new_comment() - Parses and adds a new comment to the database
|
||||
*
|
||||
* {@internal Missing Long Description}}
|
||||
*
|
||||
* @since 1.5.0
|
||||
* @uses apply_filters() Calls 'preprocess_comment' hook on $commentdata parameter array before processing
|
||||
* @uses do_action() Calls 'comment_post' hook on $comment_ID returned from adding the comment and if the comment was approved.
|
||||
* @uses wp_filter_comment() Used to filter comment before adding comment
|
||||
* @uses wp_allow_comment() checks to see if comment is approved.
|
||||
* @uses wp_insert_comment() Does the actual comment insertion to the database
|
||||
*
|
||||
* @param array $commentdata Contains information on the comment
|
||||
* @return int The ID of the comment after adding.
|
||||
*/
|
||||
function wp_new_comment( $commentdata ) {
|
||||
$commentdata = apply_filters('preprocess_comment', $commentdata);
|
||||
|
||||
@ -462,7 +675,17 @@ function wp_new_comment( $commentdata ) {
|
||||
return $comment_ID;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* wp_set_comment_status() - Sets the status of comment ID
|
||||
*
|
||||
* {@internal Missing Long Description}}
|
||||
*
|
||||
* @since 1.0.0
|
||||
*
|
||||
* @param int $comment_id Comment ID
|
||||
* @param string $comment_status New comment status, either 'hold', 'approve', 'spam', or 'delete'
|
||||
* @return bool False on failure or deletion and true on success.
|
||||
*/
|
||||
function wp_set_comment_status($comment_id, $comment_status) {
|
||||
global $wpdb;
|
||||
|
||||
@ -495,7 +718,17 @@ function wp_set_comment_status($comment_id, $comment_status) {
|
||||
return true;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* wp_update_comment() - Parses and updates an existing comment in the database
|
||||
*
|
||||
* {@internal Missing Long Description}}
|
||||
*
|
||||
* @since 2.0.0
|
||||
* @uses $wpdb
|
||||
*
|
||||
* @param array $commentarr Contains information on the comment
|
||||
* @return int Comment was updated if value is 1, or was not updated if value is 0.
|
||||
*/
|
||||
function wp_update_comment($commentarr) {
|
||||
global $wpdb;
|
||||
|
||||
@ -537,19 +770,51 @@ function wp_update_comment($commentarr) {
|
||||
return $rval;
|
||||
}
|
||||
|
||||
function wp_defer_comment_counting($defer=NULL) {
|
||||
/**
|
||||
* wp_defer_comment_counting() - Whether to defer comment counting
|
||||
*
|
||||
* When setting $defer to true, all post comment counts will not be updated
|
||||
* until $defer is set to false. When $defer is set to false, then all
|
||||
* previously deferred updated post comment counts will then be automatically
|
||||
* updated without having to call wp_update_comment_count() after.
|
||||
*
|
||||
* @since 2.5
|
||||
* @staticvar bool $_defer
|
||||
*
|
||||
* @param bool $defer
|
||||
* @return unknown
|
||||
*/
|
||||
function wp_defer_comment_counting($defer=null) {
|
||||
static $_defer = false;
|
||||
|
||||
if ( is_bool($defer) ) {
|
||||
$_defer = $defer;
|
||||
// flush any deferred counts
|
||||
if ( !$defer )
|
||||
wp_update_comment_count( NULL, true );
|
||||
wp_update_comment_count( null, true );
|
||||
}
|
||||
|
||||
return $_defer;
|
||||
}
|
||||
|
||||
/**
|
||||
* wp_update_comment_count() - Updates the comment count for post(s)
|
||||
*
|
||||
* When $do_deferred is false (is by default) and the comments have been
|
||||
* set to be deferred, the post_id will be added to a queue, which will
|
||||
* be updated at a later date and only updated once per post ID.
|
||||
*
|
||||
* If the comments have not be set up to be deferred, then the post will
|
||||
* be updated. When $do_deferred is set to true, then all previous deferred
|
||||
* post IDs will be updated along with the current $post_id.
|
||||
*
|
||||
* @since 2.1.0
|
||||
* @see wp_update_comment_count_now() For what could cause a false return value
|
||||
*
|
||||
* @param int $post_id Post ID
|
||||
* @param bool $do_deferred Whether to process previously deferred post comment counts
|
||||
* @return bool True on success, false on failure
|
||||
*/
|
||||
function wp_update_comment_count($post_id, $do_deferred=false) {
|
||||
static $_deferred = array();
|
||||
|
||||
@ -557,7 +822,7 @@ function wp_update_comment_count($post_id, $do_deferred=false) {
|
||||
$_deferred = array_unique($_deferred);
|
||||
foreach ( $_deferred as $i => $_post_id ) {
|
||||
wp_update_comment_count_now($_post_id);
|
||||
unset( $_deferred[$i] );
|
||||
unset( $_deferred[$i] ); /** @todo Move this outside of the foreach and reset $_deferred to an array instead */
|
||||
}
|
||||
}
|
||||
|
||||
@ -571,6 +836,17 @@ function wp_update_comment_count($post_id, $do_deferred=false) {
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* wp_update_comment_count_now() - Updates the comment count for the post
|
||||
*
|
||||
* @since 2.5
|
||||
* @uses $wpdb
|
||||
* @uses do_action() Calls 'wp_update_comment_count' hook on $post_id, $new, and $old
|
||||
* @uses do_action() Calls 'edit_posts' hook on $post_id and $post
|
||||
*
|
||||
* @param int $post_id Post ID
|
||||
* @return bool False on '0' $post_id or if post with ID does not exist. True on success.
|
||||
*/
|
||||
function wp_update_comment_count_now($post_id) {
|
||||
global $wpdb;
|
||||
$post_id = (int) $post_id;
|
||||
@ -594,11 +870,22 @@ function wp_update_comment_count_now($post_id) {
|
||||
return true;
|
||||
}
|
||||
|
||||
|
||||
//
|
||||
// Ping and trackback functions.
|
||||
//
|
||||
|
||||
/**
|
||||
* discover_pingback_server_uri() - Finds a pingback server URI based on the given URL
|
||||
*
|
||||
* {@internal Missing Long Description}}
|
||||
*
|
||||
* @since 1.5.0
|
||||
* @uses $wp_version
|
||||
*
|
||||
* @param string $url URL to ping
|
||||
* @param int $timeout_bytes Number of bytes to timeout at. Prevents big file downloads, default is 2048.
|
||||
* @return bool|string False on failure, string containing URI on success.
|
||||
*/
|
||||
function discover_pingback_server_uri($url, $timeout_bytes = 2048) {
|
||||
global $wp_version;
|
||||
|
||||
@ -679,7 +966,14 @@ function discover_pingback_server_uri($url, $timeout_bytes = 2048) {
|
||||
return false;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* do_all_pings() - {@internal Missing Short Description}}
|
||||
*
|
||||
* {@internal Missing Long Description}}
|
||||
*
|
||||
* @since 2.1.0
|
||||
* @uses $wpdb
|
||||
*/
|
||||
function do_all_pings() {
|
||||
global $wpdb;
|
||||
|
||||
@ -706,6 +1000,16 @@ function do_all_pings() {
|
||||
generic_ping();
|
||||
}
|
||||
|
||||
/**
|
||||
* do_trackbacks() - {@internal Missing Short Description}}
|
||||
*
|
||||
* {@internal Missing Long Description}}
|
||||
*
|
||||
* @since 1.5.0
|
||||
* @uses $wpdb
|
||||
*
|
||||
* @param int $post_id Post ID to do trackbacks on
|
||||
*/
|
||||
function do_trackbacks($post_id) {
|
||||
global $wpdb;
|
||||
|
||||
@ -744,7 +1048,16 @@ function do_trackbacks($post_id) {
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* generic_ping() - {@internal Missing Short Description}}
|
||||
*
|
||||
* {@internal Missing Long Description}}
|
||||
*
|
||||
* @since 1.2.0
|
||||
*
|
||||
* @param int $post_id Post ID. Not actually used.
|
||||
* @return int Same as Post ID from parameter
|
||||
*/
|
||||
function generic_ping($post_id = 0) {
|
||||
$services = get_option('ping_sites');
|
||||
$services = preg_replace("|(\s)+|", '$1', $services); // Kill dupe lines
|
||||
@ -758,7 +1071,18 @@ function generic_ping($post_id = 0) {
|
||||
return $post_id;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* pingback() - Pings back the links found in a post
|
||||
*
|
||||
* {@internal Missing Long Description}}
|
||||
*
|
||||
* @since 0.71
|
||||
* @uses $wp_version
|
||||
* @uses IXR_Client
|
||||
*
|
||||
* @param string $content {@internal Missing Description}}
|
||||
* @param int $post_ID {@internal Missing Description}}
|
||||
*/
|
||||
function pingback($content, $post_ID) {
|
||||
global $wp_version;
|
||||
include_once(ABSPATH . WPINC . '/class-IXR.php');
|
||||
@ -824,7 +1148,16 @@ function pingback($content, $post_ID) {
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* privacy_ping_filter() - {@internal Missing Short Description}}
|
||||
*
|
||||
* {@internal Missing Long Description}}
|
||||
*
|
||||
* @since 2.1.0
|
||||
*
|
||||
* @param unknown_type $sites {@internal Missing Description}}
|
||||
* @return unknown {@internal Missing Description}}
|
||||
*/
|
||||
function privacy_ping_filter($sites) {
|
||||
if ( '0' != get_option('blog_public') )
|
||||
return $sites;
|
||||
@ -832,7 +1165,21 @@ function privacy_ping_filter($sites) {
|
||||
return '';
|
||||
}
|
||||
|
||||
// Send a Trackback
|
||||
/**
|
||||
* trackback() - Send a Trackback
|
||||
*
|
||||
* {@internal Missing Long Description}}
|
||||
*
|
||||
* @since 0.71
|
||||
* @uses $wpdb
|
||||
* @uses $wp_version WordPress version
|
||||
*
|
||||
* @param string $trackback_url {@internal Missing Description}}
|
||||
* @param string $title {@internal Missing Description}}
|
||||
* @param string $excerpt {@internal Missing Description}}
|
||||
* @param int $ID {@internal Missing Description}}
|
||||
* @return unknown {@internal Missing Description}}
|
||||
*/
|
||||
function trackback($trackback_url, $title, $excerpt, $ID) {
|
||||
global $wpdb, $wp_version;
|
||||
|
||||
@ -864,7 +1211,18 @@ function trackback($trackback_url, $title, $excerpt, $ID) {
|
||||
return $wpdb->query("UPDATE $wpdb->posts SET to_ping = TRIM(REPLACE(to_ping, '$tb_url', '')) WHERE ID = '$ID'");
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* weblog_ping() - {@internal Missing Short Description}}
|
||||
*
|
||||
* {@internal Missing Long Description}}
|
||||
*
|
||||
* @since 1.2.0
|
||||
* @uses $wp_version
|
||||
* @uses IXR_Client
|
||||
*
|
||||
* @param unknown_type $server
|
||||
* @param unknown_type $path
|
||||
*/
|
||||
function weblog_ping($server = '', $path = '') {
|
||||
global $wp_version;
|
||||
include_once(ABSPATH . WPINC . '/class-IXR.php');
|
||||
@ -885,12 +1243,34 @@ function weblog_ping($server = '', $path = '') {
|
||||
// Cache
|
||||
//
|
||||
|
||||
/**
|
||||
* clean_comment_cache() - Removes comment ID from the comment cache
|
||||
*
|
||||
* @since 2.3.0
|
||||
* @package WordPress
|
||||
* @subpackage Cache
|
||||
*
|
||||
* @param int $id Comment ID to remove from cache
|
||||
*/
|
||||
function clean_comment_cache($id) {
|
||||
wp_cache_delete($id, 'comment');
|
||||
}
|
||||
|
||||
/**
|
||||
* update_comment_cache() - Updates the comment cache of given comments
|
||||
*
|
||||
* Will add the comments in $comments to the cache. If comment ID already
|
||||
* exists in the comment cache then it will not be updated.
|
||||
*
|
||||
* The comment is added to the cache using the comment group with the key
|
||||
* using the ID of the comments.
|
||||
*
|
||||
* @since 2.3.0
|
||||
*
|
||||
* @param array $comments Array of comment row objects
|
||||
*/
|
||||
function update_comment_cache($comments) {
|
||||
foreach ( $comments as $comment )
|
||||
foreach ( (array) $comments as $comment )
|
||||
wp_cache_add($comment->comment_ID, $comment, 'comment');
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user