Topics covered

Updated for OIO Publisher 3.6.0, October 2026.

Problems installing or activating

“The plugin does not have a valid header” or OIO doesn’t appear

The plugin folder must be called oiopub-direct and sit directly inside wp-content/plugins. If you unzipped the file yourself, check that you don’t have a folder inside a folder, such as oiopub-direct/oiopub-direct. Installing the zip through Plugins > Add New > Upload Plugin avoids this.

“Plugin could not be activated because it triggered a fatal error”

The most common cause is an old version of PHP. OIO 3.6.0 needs PHP 7.2.5 or newer, and we recommend PHP 8. Your host’s control panel usually lets you change the PHP version (in cPanel, look for Select PHP Version or MultiPHP Manager). See the installation requirements.

“Allowed memory size exhausted”

Your site ran out of memory, which can happen on sites with many plugins. Add this line to your wp-config.php file, above the line that says “That’s all, stop editing!”:

define( 'WP_MEMORY_LIMIT', '256M' );

If the error continues, ask your host to raise PHP’s memory limit.

“Please make the directory writable”

OIO needs to save files in its cache and uploads folders. See file and folder permissions below.

File and folder permissions

Wrong permissions are a common cause of odd behavior, such as uploads failing or scheduled tasks not running.

How to check

In your host’s File Manager (or an FTP program such as FileZilla), go to wp-content/plugins/oiopub-direct. Right-click a file or folder and choose Change Permissions (or “File permissions”).

The right settings

  • Files: 644
  • Folders: 755, including the cache and uploads folders on most hosts

If OIO still says a folder isn’t writable at 755, ask your host to check that the folder belongs to the right user. We don’t recommend 777: it lets anyone on the server change those files.

Also check the folders above OIO (public_html, wp-content and plugins). If any are set to 777, change them back to 755.

A stray .htaccess file

An .htaccess file in your plugins folder can block OIO’s files from loading, so the purchase page or ads don’t appear. To test, rename it to something like .htaccess-old and see if the problem goes away.

Stats not being recorded

First: make sure you’re running the latest version of OIO, and remember that default ads aren’t tracked. Only ads bought through OIO, or added under Ad Purchases, get stats.

1. Check whether anything is being recorded

Go to OIO Ad Manager > Ad Stats > Live Stats and look at both clicks and impressions for today.

2. If Live Stats shows nothing

  • Caching plugin? Clear your cache. If stats still don’t appear, turn the caching plugin off briefly and check Live Stats again.
  • Theme footer: your theme must include the standard wp_footer() hook. Almost every theme does; if you’re using a custom theme, check with its developer.
  • Ads on other websites? Add those sites to the referrer whitelist in Ad Stats > Settings.
  • Filters: in Ad Stats > Settings, check you haven’t filtered out normal visitors by mistake.

3. If Live Stats has data but the totals don’t update

Stats are added up by OIO’s scheduled tasks. On the Get Started page, look at the Scheduled Tasks card:

  • If a task shows a negative time, it’s overdue. Click Reset automated tasks on that card.
  • OIO’s scheduled tasks run when people visit your site. On low-traffic sites, or if your host blocks them, set up a real cron job instead. In cPanel, go to Cron Jobs, choose “Twice Per Hour”, and use this command (replace example.com with your site address):
wget -q -O /dev/null "https://example.com/wp-content/plugins/oiopub-direct/cron.php"

Also check the file and folder permissions above, since they can stop scheduled tasks from running.

Known issues

Updating removes files you added to the plugin folder

Updating OIO replaces the whole plugin folder. From 3.6.0 on, advertisers’ banner images are kept automatically, but these aren’t yet:

  • zip files in the downloads folder
  • your own templates in templates/core_custom and any theme folders you created
  • hacks.php
  • edited translations in the lang folder

Workaround: keep copies on your computer and put them back after each update. See Updating to a new version.

“Invalid Request” when saving settings

OIO checks every settings form to protect your site, and the check changes each time an OIO admin page loads. If you have OIO open in more than one browser tab, saving in the older tab can show “Invalid Request”. Refresh the page, make your change again and save, using one OIO tab at a time.

Managing ads from Claude needs WordPress 6.9

On older versions of WordPress, the AI Assistant page will say an update is needed. Everything else in OIO works normally.

Still stuck?

We’re happy to help. Contact us and include:

  • your website address
  • your OIO, WordPress and PHP versions
  • how you show your ads (shortcode, widget, PHP or JavaScript code)
  • any caching or security plugins you use
  • the exact error message, or a screenshot

← Back to all guides