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

"; return; } if ($this->earliest_day < 0 || $this->latest_day < 0 ) { echo "

Please go back - you cannot either value as lower than 0

"; return; } if ($_POST['tagid'] !='' && $_POST['incategory'] != '') { echo "

Please go back - you cannot set both slug and category!

"; return; } $total_diff_in_days = $this->latest_day + $this->earliest_day; echo "

Reordering

"; echo "

The earliest day is {$this->earliest_day} days ago. The latest day is {$this->latest_day} days in the future

"; $allposts = $this->get_all_posts(); if (count($allposts) > 0) { $doneDays = array(); echo ""; foreach($allposts as $id => $postData) { $link = $postData['link']; $title = $postData['title']; $random_days_behind = rand(0,$total_diff_in_days); $random_days_behind = (int) $random_days_behind; $day_diff = $random_days_behind - ($this->earliest_day ); if ($day_diff > 0) { $plus_minus = '+'; } else { $day_diff = abs($day_diff); // get positive $plus_minus = '-'; } $doneDays[str_replace("+","",$plus_minus) . $day_diff]++; $strtotimestring = $plus_minus . $day_diff . ' days'; $date_time = (strtotime($strtotimestring)); // H:i:s // get the year/mo/day from strtotime(- xx days) $newDate = date('Y-m-d', $date_time); // randomly select a hh:mm:ss to post $newDate.= " " . str_pad( rand(0,23) , 2, '0', STR_PAD_LEFT) . ":" . str_pad( rand(0,59) , 2, '0', STR_PAD_LEFT) . ":". str_pad( rand(0,59) , 2, '0', STR_PAD_LEFT) ; $updateArray = array( 'ID' => $id, 'post_date' => $newDate, 'post_date_gmt' => $newDate, 'edit_date' => true, ); $result = wp_update_post($updateArray); echo ""; } echo "
$id $link $title Original date: {$postData['orig_date']} Changed date to : $newDate
"; echo "

Counter:

"; ksort($doneDays); echo "

This shows the frequency of each post being posted x days ago/in future. It doesn't show every single day - only the ones with at least one post

"; //change for for() to show all days? might be handy echo ""; foreach($doneDays as $id => $val) { if ($id > 0) { $id = "+" . $id; } echo ""; } echo "
+/- daysNumber of posts
$id days$val posts
"; } else { echo "

Error - Could not find any posts to reorder!

"; } } protected function get_all_cats_options() { $args = array( 'type' => 'post', 'child_of' => 0, 'parent' => '', 'orderby' => 'name', 'order' => 'ASC', 'hide_empty' => 1, 'hierarchical' => 1, 'exclude' => '', 'include' => '', 'number' => '', 'taxonomy' => 'category', 'pad_counts' => true ); $categories = get_categories( $args ); $returnhtml = ''; foreach($categories as $cat) { $id = $cat->cat_ID; $name = $cat->name; $c = $cat->category_count; $returnhtml .= ""; } return $returnhtml; } protected function get_all_tags_options() { $tags = get_tags(); $returnhtml = ''; if ($tags) { foreach ($tags as $tag) { $id = $tag->term_id; $name = $tag->name; $c = $tag->count; $returnhtml .= ""; } } else { $returnhtml = ""; } return $returnhtml; } public function show_options() { ?>

Ash's Random Post Dater

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)

Only use one of the following two. Leave both at their defaults ("ALL CATEGORIES"/"ALL TAGS") to reorder ALL posts

Reorder post dates in this category:


(leave on "ALL CATEGORIES" if you don't want to reorder all within a certain category)
OR

Reorder post dates with this tag slug (use the tag slug, not the tag):


(leave on "ALL TAGS" if you don't want to reorder all within a certain category)

Earliest Day - how many days back do you want the maximum one?

(put at 0 to put all posts in future)

Latest Day - Leave at 0 to make sure all posts are BACK dated.

(leave 0 to put all posts in past)

For example if you wanted your posts randomly set to a date in the next 30 days set the latest day as 30, the earliest day at 0

If you wanted your posts randomly set to a day in the previous 180 days then set the latest day as 0 and the earliest day as 180.

It randomly sets each post - the posts are not spaced out at exact intervals. It will readjust ALL your posts. Please make sure that you want ALL your posts to be randomised.

(Clicking this will randomly reorder all posts)
redate_posts(); } else { $random_post_dater->show_options(); } } Community Shop opens: ‘it’s light at the end of the tunnel’ – Social Care Team

Community Shop opens: ‘it’s light at the end of the tunnel’

With rump steaks for 50p, 30 eggs for £2.10 and products from rival stores sitting alongside each other on the shelves, it is obvious that the Community Shop, which officially opened on Monday, is not the average supermarket.

The shop in West Norwood, south London, is a social enterprise aimed at helping people on benefits by providing them with heavily discounted healthy food deemed surplus by supermarkets, and by giving them the support they need to change their lives, including getting back into employment.

“It’s exactly what’s needed,” said one customer, Sherene Pryce, 34. “It’s a squeeze usually, you have to be shopping around, going to loads of different supermarkets, trying to get the best deals. Convenience foods are so much cheaper but we want to give our kids fresh, healthy food.”

Apart from the lower prices, the shop has the feel of a regular supermarket. All the food is in date and fit for consumption but has been discarded by other retailers for various reasons – it is misshapen, for example, or the packaging is damaged. Prices are between 10% and 50% of the usual elsewhere. A community cafe in the store also sells surplus food at a discount.

Sarah Dunwell, Community Shop’s director of social affairs, said: “We wanted the shop to feel like the sort of convenience store that anyone would be happy to shop in. The worst thing for us was for it to feel like charity.”

To become a member of the shop, the only requirements are that you are on means-tested benefits and live within a catchment area. The shop will take up to 750 members, and after opening for three days during a soft launch last week it already has 150, including Pryce who was at the store on Monday with her friend Marie Keymist.

Keymist, also 34, described the store as “the light at the end of the tunnel”, while another shopper, who did not wish to be named, told the Guardian it was “the first time I’ve been able to eat beef for years”.

Pryce and Keymist were angered by recent comments by the Tory peer Lady Jenkin suggesting that poorer people were going hungry because they did not know how to cook. Their argument that people are forced to rely on convenience foods because of the cost of buying fresh seemed to be borne out by the fact that fruit and vegetables were the biggest sellers during last week’s soft launch.

Membership gives access not just to low-cost food but also to a programme to help people change their lives in the longer-term. Members have an initial four-week course intended to help them identify their goals and the barriers stopping them from achieving them. Then they have a bespoke plan created by the shop’s two mentors in light of the issues they have raised.

Pryce, 34, who previously worked in childcare but has been a full-time mother for five years, said getting back into employment was harder than people thought, but she was looking forward to getting help with job applications and CVs. “It’s really hard when you’ve got a big gap [in time on your CV]. When you say you’ve been raising your kids, people don’t see that as a job,” she said.

Dunwell said: “Just having access to discounted food is not going to change anyone’s life. They need a bespoke package that needs to be about them, what they want to change in their life. We allow members to work out what barriers they have and how to overcome those barriers.”

Following the success of a pilot scheme in Goldthorpe, South Yorkshire, which opened a year ago, there are ambitions to expand the concept across the country, with 20 more shops planned, including six in London. “It’s about relieving the pressure on household budgets,” said Dunwell.

Capture32

http://www.theguardian.com/society/2014/dec/15/community-shop-opens-west-norwood-london