1. This site uses cookies. By continuing to use this site, you are agreeing to our use of cookies. Learn More.

Changing WP Post Dates

Discussion in 'White Hat SEO' started by edgematch, Mar 21, 2011.

  1. edgematch

    edgematch Elite Member

    Joined:
    May 24, 2010
    Messages:
    2,539
    Likes Received:
    1,949
    Occupation:
    You can never guess!
    Location:
    :noitacoL
    I posted this as the request of a member but he did not look at his thread later. He was asking for a script which will change the dates of posts between a time interval.

    This script does just that. thanks goes to the original coder. Actually I forgot where I found it, but it is not definitely mine.

    PHP:
    <?php
    // define mysql connect
    $dbname "dbname";
    $dbuser "dbuser";
    $dbpass "dbpass";
    $dbhost "localhost"// this can usually stay 'localhost'

    $wp_table "wp_posts"// define wordpress table name

    $gmt_offset '-8'// -8 for California, -5 New York, +8 Hong Kong, etc.

    $min_days_old 1// the minimum number of days old
    $max_days_old 20// the maximum number of days old

    // connect to db
    mysql_connect($dbhost,$dbuser,$dbpass);
    mysql_select_db($dbname);


    $result mysql_query("SELECT ID FROM $wp_table WHERE post_type = 'post'") or die(mysql_error());
    while (
    $l mysql_fetch_array($result)) {
        
    $post_id $l['ID'];
        echo 
    "Updating: $post_id <br>";

        
    $day rand($min_days_old$max_days_old);
        
    $hour rand(023);

        
    $new_date date'Y-m-d H:i:s'strtotime("-$day day -$hour hour") );
        
    $gmt_new_date date'Y-m-d H:i:s'strtotime("-$day day -$hour hour -$gmt_offset hour") );

        
    mysql_query("UPDATE $wp_table SET post_date='$new_date', post_date_gmt='$gmt_new_date',
        post_modified='
    $new_date', post_modified_gmt='$gmt_new_date' WHERE ID='$post_id'")
        or die(
    mysql_error());

    }

    echo 
    "<hr>DONE!";

    ?>
    1. save this as a php file (cpd.php) (you can tweak dates)
    2. put in the root folder of the domain
    3. run as http://www.mydomain.com/cpd.php