modify-date

The modify-date operation shifts a date forwards or backwards. You describe the change in words and the operation works out the new date.

The result always comes back in ISO 8601 format, such as 2024-02-22T15:30:00+00:00, whatever format went in.

How it works

You write the shift in the parameter, in plain English.

Value: 2024-02-21 15:30:00    Change: +1 day        Result: 2024-02-22T15:30:00+00:00
Value: 2024-02-21             Change: -2 months     Result: 2023-12-21T00:00:00+00:00
Value: 2024-02-21             Change: next Monday   Result: 2024-02-26T00:00:00+00:00

Common forms are +30 days, -2 hours, +1 month, next Monday, last day of this month. PHP understands a lot more than that, and the reference at the bottom has the full list.

Using another field in the shift

The change does not have to be fixed. Put a field reference in braces and it is filled in before the date is worked out.

Change: +{period} days

That is how you build an expiry date from a term the customer chose, rather than writing a separate step for every possible length.

The output format is not optional

The result is always ISO 8601. If the advertiser wants something else, follow this step with format-date.

That is the usual pair: shift the date, then write it the way they asked for.

An unreadable date stops the flow

If the value cannot be read as a date, the node fails with an error and the branch stops there.

Put a condition on the step so it only runs when the field holds something. An empty date field is the most common cause by a distance.

Careful with months

Adding a month is not the same as adding thirty days, and the difference shows up at the end of a month. 31 January plus one month lands in March, because February has no 31st and the overflow carries forward.

If you mean a fixed number of days, say days. Use months only when the advertiser’s rule is genuinely expressed in months.

Working with the other date operations

  • modify-date shifts a date
  • format-date writes it a different way
  • unix turns it into a number

Shift first, then convert or format. Doing it the other way round usually means the shift runs on text that is no longer a date.

Reference

See PHP: DateTime::modify and Relative Date and Time Formats for everything the change accepts.

Insights that
helps you grow

  • Release notes 2026/08/14
    This was a big one. We went through roughly 200 pages of our knowledge base and rewrote the whole thing. Clearer structure, consistent terminology, and…
  • Release notes 2026/07/31
    What’s new in PalDock? A lot of this month went into things you won’t see directly – query optimisation, indexing, and general tuning under the…
  • Free Affiliate tracking software
    Many companies (inlcuding YOU) search for free affiliate tracking software because they want to launch an affiliate program without committing to expensive monthly fees. The…