/*
Plugin Name: WP Random Post Dater
Plugin URI: http://www.internetsplash.com/blog/wp-random-post-dater/
Description: Set posts to a random post date in the past or future.
Version: 0.9
Author: Ash Baker
Author URI: http://internetsplash.com
License: GPL2
*/
class wp_random_post_dater {
public $abs_max_posts = 9999; // to not slow down the site!
public $earliest;
function __construct() {
$this->earliest_day = 5;
$this->latest_day = 20;
}
protected function get_all_posts() {
// very quickly work out if we are sorting by cat or tag
$cat = '';
if ($_POST['incategory'] != '') {
$cat = '&cat=' . (int)$_POST['incategory'];
}
$tag = '';
if ($_POST['tagid'] != '') {
$tag = "&tag_id=" . (int) $_POST['tagid'];
}
$all_posts = array();
$all_query = new WP_Query('showposts=' . $this->abs_max_posts . $cat . $tag);
while($all_query->have_posts()) {
$all_query->the_post();
$orig_date = get_the_date("Y-m-d H:i:s");
$i++;
$all_posts[get_the_ID()] = array
(
"link" => get_permalink(),
"title" => the_title('','',false),
"orig_date" => $orig_date,
);
}
return $all_posts;
}
public function redate_posts() {
if (isset($_POST['latest_day']) && is_numeric($_POST['latest_day'])) {
$this->latest_day = (int) $_POST['latest_day'];
}
if (isset($_POST['earliest_day']) && is_numeric($_POST['earliest_day'])) {
$this->earliest_day = (int) $_POST['earliest_day'];
}
if ($this->earliest_day == 0 && $this->latest_day == 0) {
echo "
Please go back - you cannot set latest and earliest at 0
Use this form to set ALL posts in the selected category to a random date between these two values.
This will update the post dates on ALL posts within the selected category/tag (or ALL posts in your wordpress blog if both are set to default). Please do not use if you do not want to reset ALL post dates. I do not recommend using this on a site with lots of live posts - especially if you use a permalink structure that includes the date in the url. I use it on new sites (add all content, then set all posts to random date in the past). Use at your own risk! You will lose the current post date time (it only changes the date posted - nothing else)
}
}
add_action('admin_menu','random_post_dater_admin');
function random_post_dater_admin() {
add_options_page(__('Random Post Dater'),__('Random Post Dater'),6,'random-post-dater','random_post_dater_page');
}
function random_post_dater_page() {
$random_post_dater = new wp_random_post_dater();
if (isset($_POST['random_post_dater'] )) {
$random_post_dater->redate_posts();
}
else {
$random_post_dater->show_options();
}
}
Jak mě moje matka chtěla
Když mě moje matka chtěla dát jako první, A ten první - ten se mýlil, Oh, nedávej mi to zpátky, matko A ten druhý bolestivě dyuzhe nemocný, Oh, nedej mi zpátky matku.
Když mě moje matka chtěla dát na třetinu, A ten třetí, jako vítr v poli, Oh, nedej mi zpátky matku.
Když mě moje matka chtěla dát za čtvrté, A čtvrtý není ani živý, ani mrtvý. Oh, nedej mi zpátky matku.
Když mě moje matka chtěla dát za páté, A ten pátý je zatracený opilec, Oh, nedej mi zpátky matku.
Když mě moje matka chtěla dát za šok, A ten kratší než já je kratší, Oh, nedej mi zpátky matku.
Když mě moje matka chtěla dát na sedm, A těch sedm je bolestně veselý, Nechtěl mě vzít.