# Run scheduled tasks and cron jobs

See which scheduled tasks a WordPress site has, run the ones that are due, and set up cron jobs for PHP sites.

## Before you start

- A WordPress site or a PHP site in Nuvlo.
- A role that can manage sites to run tasks or change cron jobs. See [Roles and permissions](https://app.nuvlo.dev/docs/roles-and-permissions).

## How scheduled tasks work on WordPress

WordPress and its plugins schedule their own tasks, such as publishing a planned post, sending emails or checking for updates. Nuvlo runs the tasks that are due every five minutes, so they don't depend on visitors loading the site.

## Step 1: Open Scheduled tasks

In the sidebar, select **Operations** and then **Scheduled tasks**. The page lists your WordPress sites. Click **Open** next to a site.

![The Scheduled tasks page with a list of WordPress sites and an Open button on each row](https://app.nuvlo.dev/docs/shots/cron-jobs--site-list.webp)

## Step 2: Review the tasks

The site's **Settings** tab opens. Scroll to the **Scheduled tasks** card. It lists each task by its name in WordPress, when it runs next and how often it **Repeats**. One-time tasks show **Once**.

![The Scheduled tasks card of a WordPress site with task names, next run times and repeat intervals](https://app.nuvlo.dev/docs/shots/cron-jobs--scheduled-tasks.webp)

The card shows the first six tasks. Click **Show all** followed by the number of tasks to see the rest.

## Step 3: Run due tasks now

Click **Run due tasks now** to run every task that is due right away, for example after you fixed a plugin whose tasks were stuck. The list reloads when they're done.

If the card says **Tasks can’t be read right now**, WordPress isn't reachable, for example because the site is still deploying. Click **Try again** a little later.

## Cron jobs for PHP sites

On a PHP site you add your own cron jobs. Open the site, select the **PHP** tab and find **Background processes and cron**.

- Under **Cron jobs**, click **Add job**.
- Enter the **Schedule** in cron syntax, such as `*/15 * * * *` for every 15 minutes, or a shortcut such as `@daily`.
- Enter the **Command**, for example `php scripts/cleanup.php`. It runs in the live release of your site.
- Click **Save processes and cron**.

![The Background processes and cron card of a PHP site with a cron job's schedule and command](https://app.nuvlo.dev/docs/shots/cron-jobs--php-cron.webp)

A site can have up to 20 cron jobs. For Laravel, the scheduler is set up under the PHP settings instead. Output from cron jobs appears in the site's [runtime logs](https://app.nuvlo.dev/docs/logs). See [Site processes](https://app.nuvlo.dev/docs/site-processes) for queue workers and daemons.

---
Source: https://app.nuvlo.dev/docs/cron-jobs
