Description
Google AdSense “ad intents” can turn words inside your content into links, or show chips, that open a dialog with related ads. When this happens inside a table, the result can overlap or break the layout of the table.
Google documents a class named google-anno-skip that excludes a section of a page from ad intents. This plugin adds that class for you: it automatically wraps every table in your post content with a div element, so you do not have to edit each post by hand.
What it does
- Wraps each table in post content with
<div class="no-auto-ads google-anno-skip">. - Handles nested tables (only the outermost table is wrapped).
- Leaves a table alone if it is already wrapped by an element that has the
google-anno-skipclass. - Does not run in the admin area, in feeds, or in embeds.
- Has no settings screen, loads no scripts or styles, makes no external requests and stores no data.
What it does not do
- It does not guarantee that no ads will ever appear near a table. It only adds the exclusion class documented by Google for ad intents. Other ad formats (for example in-page auto ads) are controlled in your AdSense account.
- It does not change your AdSense account or settings.
- It only affects content output through the
the_contentfilter. Tables printed by a theme template outside the post content are not changed.
Customization
You can change the class names with the tnaa_wrapper_class filter. Keep google-anno-skip in the list, otherwise AdSense will not exclude the area.
add_filter( 'tnaa_wrapper_class', function ( $classes ) { return $classes . ' my-extra-class'; } );
Disclaimer
This plugin is not affiliated with, endorsed by, or sponsored by Google. “Google” and “AdSense” are trademarks of Google LLC.
Installation
- Upload the
infovarious-table-no-auto-adsfolder to the/wp-content/plugins/directory, or install the plugin from the Plugins screen in WordPress. - Activate the plugin through the “Plugins” screen.
- View a post that contains a table and check the page source: the table is wrapped by
<div class="no-auto-ads google-anno-skip">.
If you use a page cache, clear the cache after activating the plugin.
FAQ
-
Do I need to change any AdSense settings?
-
No. The
google-anno-skipclass is read by AdSense directly. Changes may take some time to be reflected. -
Does this remove all AdSense ads from tables?
-
No. It targets ad intents (in-text links and chips). Other formats are controlled in your AdSense account.
-
Can I exclude other elements, such as images or lists?
-
Not with this plugin. You can add the
google-anno-skipclass to any other element yourself. -
Does it work with the block editor and the classic editor?
-
Yes. It works on the final HTML output of the post content, regardless of the editor used.
Reviews
There are no reviews for this plugin.
Contributors & Developers
“Infovarious Table No Auto Ads” is open source software. The following people have contributed to this plugin.
ContributorsTranslate “Infovarious Table No Auto Ads” into your language.
Interested in development?
Browse the code, check out the SVN repository, or subscribe to the development log by RSS.
Changelog
1.0.0
- Initial release.