| 开发者 |
hoorayplugins
jbyrne123 |
|---|---|
| 更新时间 | 2026年9月24日 02:19 |
| PHP版本: | 8.0 及以上 |
| WordPress版本: | 7.1 |
| 版权: | GPLv2 or later |
| 版权网址: | 版权信息 |
[hsads_ad slot="..."] shortcode
(anywhere shortcodes work, including page builders and widgets), or
hsads_ad( 'slot-slug' ) in a template.
What counts as a view
A view is counted at most once per ad, per placement, per page load, when at
least half of the advertisement has been continuously on screen for one second
in a tab the reader is actually looking at. Ads below the fold that are never
reached are not counted, and neither are background tabs or quick scroll-pasts.
Both thresholds are adjustable in Settings.
The check runs in the reader's browser, so treat these as first-party publisher
reporting rather than independently audited measurement. No third-party
accreditation is claimed and none is implied. The aim is a number you can
explain to an advertiser and get the same answer twice.
Working alongside a programmatic network
The plugin touches only the elements it created. It uses one namespaced global,
scopes all of its CSS to its own class names, does not use the data-slot
attribute, adds no MutationObserver and no z-index, and makes no third-party
requests. It is intended to sit on the same page as a programmatic network
without interfering with it.
Privacy
Hooray Simple Ads is designed to measure ad performance without building
profiles of your readers.
Reporting consists of aggregate counters by day, slot and ad. No cookies are
set and no browser storage is used. Raw IP addresses, user agents, user IDs
and device identifiers are not stored. There is no plugin-author telemetry,
and no third-party ad-serving service is contacted.
To stop the same view being counted twice, a short-lived scrambled
deduplication record is kept and swept automatically, normally within a day.
Suggested wording for your own privacy policy is added to Tools → Privacy.
Clicking an ad sends the reader to the advertiser's own site, which is outside
this plugin's control.
No. The ads, slots, schedules, reporting history and settings are all the same
records as before. Existing [webpostad] shortcodes, ad slot blocks already in
your posts, and REST calls issued by pages cached before the upgrade keep
working. New placements use [hsads_ad] and hsads_ad().
No. Earlier versions offered an ESI mode that did not work correctly, and it has been removed. The normal delivery path already works on cached pages. The only thing worth checking is that a CDN in front of WordPress is not caching the plugin's REST endpoints; Settings lists them.
Ads → Diagnostics lists every ad assigned to every slot with the reason it
is or is not eligible today. For a live page, add ?hsads_debug=1 to the URL
while logged in as an administrator and check the browser console. Visitors
never see any of this.
See the privacy note in the description. The plugin is designed to measure ad performance without building profiles of your readers.
A page with no ad slot on it loads none of the plugin's files. A page with ads loads a small script and stylesheet. Filling a slot is a separate request that does not depend on the page cache, and counting a view is one more request.
Yes. Every ad-to-slot assignment has a share. Leave them all at 1 for even rotation, or raise one to give that advertiser proportionally more impressions.
It should not. It only reads and modifies the elements it created itself, and it contacts only your own site, so containers belonging to another ad script are left alone.
Nothing is deleted unless you first tick the option in Settings. Deactivating or deleting the plugin otherwise leaves your slots, ads and reporting history in place, so they return if you reinstall.
Yes. Each site gets its own slots, ads and reporting, including sites created after a network activation.
[webpostad] shortcodes, ad slot blocks already in your posts, and
REST calls from pages cached before the upgrade keep working. New placements
use [hsads_ad] and hsads_ad().zra_ad(), zra_the_ad() and
zra_plugin() have been renamed to hsads_ad(), hsads_the_ad() and
hsads_plugin(), with no alias left behind. Change the call and it behaves
exactly as before. Shortcodes and blocks are unaffected.?zra_debug=1 troubleshooting switch is now ?hsads_debug=1, and the
plugin's admin screens are reached from the Ads menu rather than from any
bookmarked address that contains the old prefix.zra_click_params filter was renamed to
hsads_click_params with no alias. The frontend's single global is now
window.HooraySimpleAds.