These are the lastest actions performed by the plugin.
# telling WordPress to ping if the post is new, but not if it's just been edited
global $wpdb, $post_title;
if(get_option('SUP_ping') == 1
and get_option('ping_sites') != "")
# fetches data directly from database; the function "get_post" is cached,
# and using it here will get the post as is was before the last save
$row = mysql_fetch_array(mysql_query(
# if time when created equals time when modified it is a new post,
# otherwise the author has edited/modified it
if($row["post_date"] == $row["post_modified"])
SUP_log("Pinging services (new post: “".$post_title."”) ...");
SUP_log("Pinging services (new post) ...");
# Try commenting the line above, and uncommenting this line below
# if pinging seems to be out of order. Please notify the author if it helps!
SUP_log("NOT pinging services (“".$post_title."” was edited)");
SUP_log("NOT pinging services (a post was edited)");
SUP_log("NOT pinging services (disabled by administrator)");
# More or less a copy of WP's "generic_ping" from functions.php,
# but uses another function to send the actual XML-RPC messages.
$services = get_settings('ping_sites');
$services = preg_replace("|(\s)+|", '$1', $services); // Kill dupe lines
$services = trim($services);
if ( '' != $services )
$services = explode("\n", $services);
foreach ($services as $service)
# A slightly modified version of the WordPress built-in ping functionality ("weblog_ping" in functions.php).
# This one uses correct extendedPing format (WP does not), and logs response from service.
function SUP_send_xmlrpc($server = '', $path = '')
include_once (ABSPATH . WPINC . '/class-IXR.php');
// using a timeout of 3 seconds should be enough to cover slow servers
$client = new IXR_Client($server, ((!strlen(trim($path)) || ('/' == $path)) ? false : $path));
$client->timeout = 3;
$client->useragent .= ' -- WordPress/'.$wp_version;
// when set to true, this outputs debug messages by itself
$client->debug = false;
$home = trailingslashit( get_option('home') );
# the extendedPing format should be "blog name", "blog url", "check url" (whatever that is), and "feed url",
# but it would seem as if the standard has been mixed up. it's therefore best to repeat the feed url.
if($client->query('weblogUpdates.extendedPing', get_settings('blogname'), $home, get_bloginfo('rss2_url'), get_bloginfo('rss2_url')))
SUP_log("- ".$server." was successfully pinged (extended format)");
# pinging was unsuccessful, trying regular ping format
if($client->query('weblogUpdates.ping', get_settings('blogname'), $home))
SUP_log("- ".$server." was successfully pinged");
SUP_log("- ".$server." could not be pinged. Error message: “".$client->error->message."”");
$post_title = "";
# Receives the title of the post from a filter below
$post_title = $title;
# Log stuff
$logfile = ABSPATH."wp-content/smart-update-pinger.log";
# for debugging
$fh = @fopen($logfile, "a");
@fwrite($fh, strftime("%D %T")."\t$line\n");
$lines = @file($logfile);
if($lines === false)
return "Error reading log file (".$logfile."). This could mean that the wp-content directory is write-protected and no log data can be saved, that you have manually removed the log file, or that you have recently upgraded the plugin.";
$lines = array_slice($lines, count($lines) - $num);
$msg = "";
foreach($lines as $line)
$msg .= trim($line)." ";
# adds a filter to receive the title of the post before publishing
# adds some hooks
# shows the options in the administration panel
# calls SUP_ping whenever a post is published
# calls SUP_ping_draft when changing the status from private/draft to published
# add_action("private_to_published', 'SUP_ping_draft');
# removes the "WordPress official" pinging hook
# activates pinging if setting doesn't exist in database yet
# (before the user has changed the settings the first time)
if(get_option("SUP_ping") === false)
<title> Step by step drawing cars</title>
Drawing is a fun way of fulfilling your leisure time and if you can make some money from it, then it is even more pleasing. If you like cars and want to learn how to draw them, there are a couple of steps that you can follow:
First, start from the outline. Draw a small rectangle for the top and a big rectangle for the bottom. In this way you get the basic shape of the body of the car, but be careful to draw it with thin lines, not dark and bold, because you are only drawing a sketch of the car, that when you later finish the whole car, are going to have to erase these lines, so the car would look more appealing and more complete.
The next step is to draw the wheels, so draw one whole circle in the front and one in the back, and half circle next to each other so the two wheels will seem that they are on the other side of the car. It doesn’t matter if the circles are precise, because you can always add some shades behind the wheels so it would seem as they are moving.
Now you can add lights in the front and in the back of the big rectangle in order to signify where is the front and where is the back of the car. For the front draw slightly larger lights, that can have a square or cylinder form or any other form that you like, and slightly smaller lights for the back. The next step is to draw the doors of the car so people can enter it Draw a straight line, from the top to the bottom, in the middle of the small and big rectangle, and in the back of the big rectangle only draw a straight line also from the top of it but to the back wheel and be careful it doesn’t exceed the rectangle and it doesn’t reach the back wheel, but it is just above it. In this way you just drew the front and the back door, just add knobs so it would look more authentic.
The only thing that is left for you to add to the car, so it would look complete, is a steering wheel. Draw the steering wheel in the front of the inside part of the car i.e. inside the front window draw a small ellipse shaped circle that ends with a oblique line that touches the right bottom end of the small rectangle. Congratulations, you just finished your first drawing of a car. You can add some curves at the top of the front and at the top of the back of the car in order to give it a more original look. Give a final touch to the car by adding some color by your own choice and erase any lines that you don’t need.