Or configure it: ‘, $daysbefore = '3', $daysafter = '3', $mode='1', $yearsago = ‘1′, $limit = ‘5′); ?> or ‘, $daysbefore = '3', $daysafter = '3', $mode='2', $lastxyears = ‘2′, $limit = ‘5′); ?> or ‘, $daysbefore = '3', $daysafter = '3', $mode='3', $sinceyear = ‘2004′, $limit = ‘5′); ?> Changelog */ function around_this_date ($before = 'This week las year...:', $after = '', $daysbefore = '3', $daysafter = '3', $mode = '1', $yearsago = '1', $lastxyears= '1', $sinceyear='2005', $limit = '4') { global $wpdb; if ($mode == '1') { // "classic" mode $start_ago = (365*$yearsago)+$daysbefore; $end_ago = (365*$yearsago)-$daysafter; $entries = $wpdb->get_results ("SELECT " . "ID, post_title " . "FROM $wpdb->posts " . "WHERE post_status = 'publish' && (( TO_DAYS( NOW() ) - TO_DAYS( post_date ) ) BETWEEN " . $end_ago . " AND " . $start_ago . ")". "ORDER by 'asc'" . "LIMIT $limit" ); if ($entries) { echo "$before"; echo ""; echo "$after"; } } elseif ($mode == '2') { // last x years mode for($year = 1; $year <= $lastxyears; $year++) { $start_ago = (365*$year)+$daysbefore; $end_ago = (365*$year)-$daysafter; $entries = $wpdb->get_results ("SELECT " . "ID, post_title " . "FROM $wpdb->posts " . "WHERE post_status = 'publish' && (( TO_DAYS( NOW() ) - TO_DAYS( post_date ) ) BETWEEN " . $end_ago . " AND " . $start_ago . ")". "ORDER by 'asc'" . "LIMIT $limit" ); if ($entries) { echo "$before"; // echo $year." years ago"; echo ""; echo "$after"; } } } elseif ($mode == '3') { // since year x mode for($year = 1; $year <= (date("Y")-$sinceyear); $year++) { $start_ago = (365*$year)+$daysbefore; $end_ago = (365*$year)-$daysafter; $entries = $wpdb->get_results ("SELECT " . "ID, post_title " . "FROM $wpdb->posts " . "WHERE post_status = 'publish' && (( TO_DAYS( NOW() ) - TO_DAYS( post_date ) ) BETWEEN " . $end_ago . " AND " . $start_ago . ")". "ORDER by 'asc'" . "LIMIT $limit" ); if ($entries) { echo "$before"; // echo $year." years ago"; echo ""; echo "$after"; } } } } ?>