Tag Archives: schedules

AdRotate 3.7.3 Now Available

A bunch of minor tweaks and optimizations to improve AdRotate.

Changelog:

[change] Variable height for ad blocks
[change] Variable height for ads in blocks
[change] New installer (New installs only)
[change] Tweaks to upgrade script (Upgrades from 3.7.2 and older only)
[change] Cleaner debug information for time schedules
[change] Time notation when creating ads now uses WordPress dictated times
[fix] Time notation for schedules, now uses only WordPress dictated times

Nothing too fancy, but important changes none the less.
The time notation should now be consistent everywhere and match up to what time WordPress thinks it is. This will make schedules and such work more reliable. Auto height for blocks obviously brings back the flexible height for blocks for those that have uneven adverts in blocks. The width can *not* use ‘auto’. If that would be allowed the block grid keeps screwing up in several browsers. So that remains fixed width.

Translation files have been updated and have several new or changed lines. So translations need updating.

Beta3 users. Some fixes and changes are not in your beta. So yes, you need to update too.

AdRotate 3.7.3b3 now available

I’ve made some changes to the installer and upgrade script. But more importantly the schedules should now rely completely on WordPress times making ad selection and time restrictions more reliable.

This change in usage of time is a result of various reports that newly created adverts would not display. These changes likely resolve these issues but it needs to be tested on more websites than just my 3 servers to be sure.

Download here.

Temporary workaround for non-beta users!

The way AdRotate works is that this issue likely has been in existence since the very first version of AdRotate, 4 years ago, but never became really visible because the start and end dates were based on full days instead of  to-the-minute precision. Therefor downgrading to older versions will not actually resolve the issue but merely mask it.
Additionally; re-installing the same version, removing all ads and starting over will NOT solve the issue. A larger margin on start and end dates will temporarily make ads work. For instance, If you want an advert to start to display on July 25th, set the schedule for the 24th. While inaccurate, the advert will show on the 25th with an overlap to the 24th. Apply the same rule to the end date, except have it stop a day later than intended.

So what’s actually wrong then – Time is time, right?

You can skip the rest of this post as it only explains my findings and where i think the issue lies with the websites AdRotate is installed on.

Over the past days I’ve discovered that the server (Apache, Nginx, etc.), PHP and WordPress each use their own measure of time.
WordPress relies on PHP and your timezone settings from what I could find.
PHP relies on settings made by the admins and the reported time by the OS.
Apache (or whatever webserver you use) relies on the system clock or OS time.
A lot of links in a chain that shouldn’t be necessary at all. In my opinion everything should rely on the same source. Either a system clock or other central source. But that’s not important right now.

Important is that AdRotate uses WordPress features for certain time notations, for example the translation of month names and am/pm settings.
For other more invisible functions, such as ad selection, AdRotate relies on the PHP times using functions like mktime() (gmmktime()) and date(‘U’).

apparently these times differ in some cases causing the schedules to work unreliable for some people. Even when applying timezone rules vs. using WordPress’ current_time() function the dates can be off by several hours. Even if the system time, PHP time AND WordPress time are in the same timezone.

For example; My development server which stands right here next to me is off by 14 minutes even though ALL reported times throughout the entire machine are exactly the same as my iMac and an analog clock. Both machines are on the same physical desk and internet connection synchronizing to the same time servers. Using the same times and file sharing between the 2 DOES report the right time. This means that PHP is wrong somehow. WordPress is right and the OS is right too, as far as i can tell.

Over the past days I’ve been reading up on all this mumbo jumbo and found all this kind of confusing. Therefor I decided to drop using PHP and System time entirely and have WordPress figure that part out. This will require some trial and error and some rewriting of routines. But at least AdRotate will be in “sync” with WordPress so there can be no conflict there.

I think I’ve covered most of it in this beta3 and this should lead to a more reliable AdRotate where time makes sense again.

AdRotate 3.7.2b1 now available

Following the flurry of posts with vague often indecipherable outcries for help I have updated the schedule filter a bit and this needs testing. Additionally you can now set a float for the entire block. For those needing it.

Please provide feedback via the form on the AdRotate dashboard!

Remember, this is a beta! After installing this you can not downgrade due to the new float setting!
If you want the option to downgrade make a backup of the AdRotate blocks table first. If you don’t know how to do this, do not use beta versions!

Changelog:

[fix] Schedules not counting period stats correctly preventing ads from displaying
[new] Float setting for blocks

Download:

From the beta page!

Read the page carefully! I have this version on my blog and it seems fine but you are encouraged to make a backup first! And use at your own risk.

A preview of what i’m making

It’s been a while since we previewed upcoming features. But these are worth mentioning in advance.
The long standing request for CSV exports will be addressed, as mentioned earlier.

The current changelog so far is this:
[new] Indexes for certain database tables (speed increase)
[new] Scheduler for Adverts
[new] CSV Exports for ads, groups and blocks
[fix] Adverts with errors use row colors appropriately when urgently needing help
[fix] Unnessesary linebreak in blocks with only 1 column (Thanks to Henning Stein).
[fix] Single Ad Graphs now use the WP url
[fix] Groups not saving adverts assigned to them in some cases
[fix] Notifications for new or edited ads
[fix] Improved notifications display when creating new ads
[change] Initial advert time reduced from 1 year to 84 days (12 weeks)
[change] Faster loading of ads in Ad Management (speed increase)
[change] Tracker data is flushed every 3 hours with wp-cron instead of on every page load (speed increase)
[change] Improved loading of ads on the frontside (speed increase)
[change] Improved argument handling for click tracking urls (security)

Schedule your adverts:
Over the past days i’ve been working on improving the new scheduler for ads.
This feature replaces the start and end time of adverts entirely and will allow you to show adverts in a very specific manner.

Example:
Advertiser wants to show an ad, on monday april 9th, tuesday the 10th between 1pm and 5pm, tuesday from 6pm till wednesday the 18th 7am and so on.

Currently – Not possible without manually updating the ad as it happens.
Soon-ish – Possible

scheduler-preview
And boom! epic scheduling feature!

Create as many schedules as you want. Create an as complex timetable as you want. This feature has been implemented today and will be tested over the coming days/weeks and optimized for speed and efficiency.

CSV Exports:
At long last, a way to export your data. I believe i’ve come up with the most simple UI possible that simply cannot go wrong for anyone.
Obviously this is a big feat and needs testing. Initial tests are good and we expect this to become a popular feature that will require a lot of fine tuning to satisfy everyone most people. But this is a great start.
csv-export-demo

As you can see, you can choose from a drop down which month you want (or the whole year) and type in the year you want and click export.
The report is made and downloaded automatically.

Every Report page in AdRotate has a option like this. With the exception of Advertiser reports. They can only download an overview of their stats and therefor only have a simple “Export” button.

If you have ideas, comments or input on this one, voice it on the forum. *every* request will be looked at and weighed in.