Same name and namespace in other branches
  1. 4.6.x developer/hooks/core.php \hook_ping()
  2. 4.7.x developer/hooks/core.php \hook_ping()
  3. 6.x developer/hooks/core.php \hook_ping()

Ping another server.

This hook allows a module to notify other sites of updates on your Drupal site.

Parameters

$name: The name of your Drupal site.

$url: The URL of your Drupal site.

Return value

None.

Related topics

2 functions implement hook_ping()

Note: this list is generated by pattern matching, so it may include some functions that are not actually implementations of this hook.

drupal_client_ping in modules/drupal/drupal.module
Callback function from drupal_xmlrpc() called when another site pings this one.
ping_ping in modules/ping/ping.module
Implementation of hook_ping().
1 invocation of hook_ping()
_ping_notify in modules/ping/ping.module
Call hook_ping() in all modules to notify remote sites that there is new content at this one.

File

developer/hooks/core.php, line 1047
These are the hooks that are invoked by the Drupal core.

Code

function hook_ping($name = '', $url = '') {
  $feed = url('node/feed');
  $client = new xmlrpc_client('/RPC2', 'rpc.weblogs.com', 80);
  $message = new xmlrpcmsg('weblogUpdates.ping', array(
    new xmlrpcval($name),
    new xmlrpcval($url),
  ));
  $result = $client
    ->send($message);
  if (!$result || $result
    ->faultCode()) {
    watchdog('error', 'failed to notify "weblogs.com" (site)');
  }
  unset($client);
}