{"id":332193,"date":"2026-06-28T20:12:07","date_gmt":"2026-06-28T20:12:07","guid":{"rendered":"https:\/\/wordpress.org\/plugins\/truce-label-ads\/"},"modified":"2026-06-28T19:56:33","modified_gmt":"2026-06-28T19:56:33","slug":"truce-label-ads","status":"publish","type":"plugin","link":"https:\/\/wordpress.org\/plugins\/truce-label-ads\/","author":23517725,"comment_status":"closed","ping_status":"closed","template":"","meta":{"version":"1.0.0","stable_tag":"trunk","tested":"7.0","requires":"5.8","requires_php":"7.4","requires_plugins":null,"header_name":"Truce Label Ads","header_author":"Truce Label","header_description":"Lightweight, safe ad manager for vetted networks. Pick a network (AdSense, Google Ad Manager, Media.net, Ezoic) or a direct\/affiliate banner, enter only your IDs, and the plugin generates the correct, controlled ad code for you. No pasting of arbitrary scripts.","assets_banners_color":"626262","last_updated":"2026-06-28 19:56:33","external_support_url":"","external_repository_url":"","donate_link":"","header_plugin_uri":"","header_author_uri":"https:\/\/trucelabel.com","rating":0,"author_block_rating":0,"active_installs":0,"downloads":28,"num_ratings":0,"support_threads":0,"support_threads_resolved":0,"author_block_count":0,"sections":["description","installation","faq","changelog"],"tags":{"1.0.0":{"tag":"1.0.0","author":"trucetech","date":"2026-06-29 06:26:00"}},"upgrade_notice":{"1.0.0":"<p>Initial release.<\/p>"},"ratings":[],"assets_icons":{"icon-128x128.png":{"filename":"icon-128x128.png","revision":3589216,"resolution":"128x128","location":"assets","locale":"","width":128,"height":128},"icon-256x256.png":{"filename":"icon-256x256.png","revision":3589216,"resolution":"256x256","location":"assets","locale":"","width":256,"height":256}},"assets_banners":{"banner-1544x500.png":{"filename":"banner-1544x500.png","revision":3589216,"resolution":"1544x500","location":"assets","locale":"","width":1544,"height":500},"banner-772x250.png":{"filename":"banner-772x250.png","revision":3589216,"resolution":"772x250","location":"assets","locale":"","width":772,"height":250}},"assets_blueprints":{},"all_blocks":[],"tagged_versions":["1.0.0"],"block_files":[],"assets_screenshots":[],"screenshots":{"1":"The Ad Units screen \u2014 each ad as a card with its network, placement, status, and shortcode.","2":"The ad unit editor \u2014 choose a network and enter only your IDs.","3":"Placement and device options for each ad.","4":"Global settings, including the master switch for automatic placement."}},"plugin_section":[],"plugin_tags":[2533,321,148,152751,377],"plugin_category":[35],"plugin_contributors":[267473],"plugin_business_model":[],"class_list":["post-332193","plugin","type-plugin","status-publish","hentry","plugin_tags-ad-manager","plugin_tags-ads","plugin_tags-adsense","plugin_tags-media-net","plugin_tags-monetization","plugin_category-advertising","plugin_contributors-trucetech","plugin_committers-trucetech"],"banners":{"banner":"https:\/\/ps.w.org\/truce-label-ads\/assets\/banner-772x250.png?rev=3589216","banner_2x":"https:\/\/ps.w.org\/truce-label-ads\/assets\/banner-1544x500.png?rev=3589216","banner_rtl":false,"banner_2x_rtl":false},"icons":{"svg":false,"icon":"https:\/\/ps.w.org\/truce-label-ads\/assets\/icon-128x128.png?rev=3589216","icon_2x":"https:\/\/ps.w.org\/truce-label-ads\/assets\/icon-256x256.png?rev=3589216","generated":false},"screenshots":[],"raw_content":"<!--section=description-->\n<p><strong>Truce Label Ads<\/strong> is a lightweight, privacy-friendly way to place ads from popular ad networks on your WordPress site \u2014 without ever pasting raw ad code.<\/p>\n\n<p>Instead of a free-form code box, you simply choose your ad network and enter your own IDs (for example your AdSense publisher and slot IDs). The plugin then generates the correct, known ad markup for that network from a fixed, vetted template. You stay in control, your site stays fast, and there is no opaque third-party code to copy and paste.<\/p>\n\n<h4>Why this approach?<\/h4>\n\n<p>Many ad plugins let you paste arbitrary HTML or JavaScript. That is flexible but risky: a single bad paste can break your layout or expose your site. Truce Label Ads is built the opposite way on purpose. Every supported network has its own carefully written, non-editable template, and you only ever provide validated identifiers. Anything that is not a recognized ID is rejected. This keeps the plugin safe, predictable, and easy to review.<\/p>\n\n<h4>Supported integrations<\/h4>\n\n<ul>\n<li><strong>Google AdSense<\/strong> \u2014 display units (responsive, in-article, and fixed sizes) using your publisher and slot IDs.<\/li>\n<li><strong>Google AdSense Auto Ads<\/strong> \u2014 site-wide auto ads from your publisher ID.<\/li>\n<li><strong>Google Ad Manager (GPT)<\/strong> \u2014 defined by your network code, ad unit path, and sizes.<\/li>\n<li><strong>Media.net<\/strong> \u2014 using your customer ID and ad unit\/tag ID.<\/li>\n<li><strong>Ezoic<\/strong> \u2014 placeholder units for your Ezoic integration.<\/li>\n<li><strong>Direct banner<\/strong> \u2014 upload or link an image with a click-through URL. No scripts at all.<\/li>\n<li><strong>Affiliate banner<\/strong> \u2014 image plus your affiliate link (Amazon Associates banners work here too).<\/li>\n<\/ul>\n\n<h4>Easy placement<\/h4>\n\n<p>Show each ad exactly where you want it:<\/p>\n\n<ul>\n<li>Before, after, or both around your post content<\/li>\n<li>After a specific paragraph<\/li>\n<li>Site-wide in the header (ideal for Auto Ads) or footer<\/li>\n<li>Anywhere manually with the shortcode <code>[tlads_ad id=\"1\"]<\/code> or the included widget<\/li>\n<\/ul>\n\n<h4>Device targeting, the cache-safe way<\/h4>\n\n<p>Hide any ad on desktop, tablet, or mobile using pure CSS visibility. Because it does not branch server-side, it works correctly even behind full-page caching and CDNs.<\/p>\n\n<h4>Lightweight by design<\/h4>\n\n<ul>\n<li>Loads a tiny stylesheet on the front end, and only when an ad is actually present.<\/li>\n<li>No front-end JavaScript of its own \u2014 each network loads its own official script.<\/li>\n<li>No extra database tables and no external calls back to us.<\/li>\n<\/ul>\n\n<h4>Go further with video: Truce Label Video Player (premium)<\/h4>\n\n<p>Want to monetize video, not just display ads? <strong>Truce Label Video Player<\/strong> is our premium plugin that plays your videos with <strong>VAST<\/strong> ad support \u2014 <strong>pre-roll, mid-roll, and post-roll<\/strong> ads \u2014 and lets you <strong>control the mid-roll intervals<\/strong> so ads appear exactly when you want during playback. It is the serious way to earn from video content on WordPress.<\/p>\n\n<p><strong>Start your trial:<\/strong> https:\/\/checkout.freemius.com\/plugin\/31537\/plan\/51775\/?trial=paid<\/p>\n\n<h3>Privacy<\/h3>\n\n<p>Truce Label Ads does not collect, store, or transmit any personal data to the plugin author. It saves only the ad settings you enter (network choice, your IDs, placement and display options) in your own WordPress database.<\/p>\n\n<p>The plugin generates ad markup for third-party ad networks that you choose to use (such as Google AdSense, Google Ad Manager, Media.net, or Ezoic). When an ad from one of those networks is displayed, the network's own code runs in the visitor's browser and is subject to that network's privacy policy and terms. Please review the privacy policy of any ad network you enable, and disclose ad usage to your visitors as required by the laws that apply to you. Direct and affiliate banners load only the image and link you provide and run no third-party scripts.<\/p>\n\n<!--section=installation-->\n<ol>\n<li>Upload the <code>truce-label-ads<\/code> folder to the <code>\/wp-content\/plugins\/<\/code> directory, or install the plugin through the <strong>Plugins<\/strong> screen in WordPress.<\/li>\n<li>Activate the plugin through the <strong>Plugins<\/strong> screen.<\/li>\n<li>Go to <strong>Truce Ads \u2192 Ad Units<\/strong> and click <strong>Add Ad Unit<\/strong>.<\/li>\n<li>Choose your ad network, enter your IDs, pick where the ad should appear, and enable it.<\/li>\n<li>For manual placement, paste the unit's shortcode (e.g. <code>[tlads_ad id=\"1\"]<\/code>) into any post, page, or text widget.<\/li>\n<\/ol>\n\n<!--section=faq-->\n<dl>\n<dt id=\"do%20i%20paste%20my%20ad%20network%20code%20into%20this%20plugin%3F\"><h3>Do I paste my ad network code into this plugin?<\/h3><\/dt>\n<dd><p>No. You only enter your IDs (such as your AdSense publisher and slot IDs). The plugin builds the correct ad code from a fixed template for the network you selected. There is no free-form code field.<\/p><\/dd>\n<dt id=\"which%20ad%20networks%20are%20supported%3F\"><h3>Which ad networks are supported?<\/h3><\/dt>\n<dd><p>Google AdSense (including Auto Ads), Google Ad Manager (GPT), Media.net, and Ezoic via their IDs, plus direct and affiliate image banners that work with virtually any program, including Amazon Associates.<\/p><\/dd>\n<dt id=\"my%20ad%20network%20is%20not%20in%20the%20list.%20can%20i%20still%20use%20it%3F\"><h3>My ad network is not in the list. Can I still use it?<\/h3><\/dt>\n<dd><p>If the network gives you an image and a link (like most affiliate and direct campaigns), use the Direct or Affiliate banner option. Networks that only provide a unique block of script are intentionally not supported here, to keep the plugin safe and reviewable.<\/p><\/dd>\n<dt id=\"will%20ads%20work%20with%20my%20caching%20plugin%3F\"><h3>Will ads work with my caching plugin?<\/h3><\/dt>\n<dd><p>Yes. The plugin adds no server-side device branching; device visibility is handled with CSS, which is cache-friendly. Each ad network's own script handles ad loading as usual.<\/p><\/dd>\n<dt id=\"how%20do%20i%20show%20an%20ad%20in%20a%20specific%20spot%3F\"><h3>How do I show an ad in a specific spot?<\/h3><\/dt>\n<dd><p>Use the shortcode shown on each ad unit, for example <code>[tlads_ad id=\"1\"]<\/code>, or add the <strong>Truce Label Ads<\/strong> widget to any widget area. You can also choose automatic placements such as before\/after content or after a paragraph.<\/p><\/dd>\n<dt id=\"does%20the%20plugin%20track%20my%20visitors%3F\"><h3>Does the plugin track my visitors?<\/h3><\/dt>\n<dd><p>The plugin itself does not collect or send any personal data. Third-party ad networks you enable run their own code; review their privacy policies and disclose ad usage to your visitors as required.<\/p><\/dd>\n<dt id=\"can%20i%20monetize%20videos%20with%20mid-roll%20ads%3F\"><h3>Can I monetize videos with mid-roll ads?<\/h3><\/dt>\n<dd><p>Yes \u2014 that is what our premium <strong>Truce Label Video Player<\/strong> is for. It supports VAST pre-roll, mid-roll, and post-roll ads with adjustable mid-roll intervals. See: https:\/\/checkout.freemius.com\/plugin\/31537\/plan\/51775\/?trial=paid<\/p><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<h4>1.0.0<\/h4>\n\n<ul>\n<li>Initial release.<\/li>\n<li>Controlled, ID-based integrations for Google AdSense, AdSense Auto Ads, Google Ad Manager (GPT), Media.net, and Ezoic.<\/li>\n<li>Direct and affiliate image banners (no scripts).<\/li>\n<li>Automatic placements (before\/after content, after paragraph, header, footer), shortcode, and widget.<\/li>\n<li>Cache-safe device visibility for desktop, tablet, and mobile.<\/li>\n<\/ul>","raw_excerpt":"Lightweight, safe ad manager. Pick a vetted network, enter only your IDs, and the plugin builds the correct ad code for you. No pasting scripts.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/332193","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin"}],"about":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/types\/plugin"}],"replies":[{"embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/comments?post=332193"}],"author":[{"embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/trucetech"}],"wp:attachment":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=332193"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=332193"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=332193"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=332193"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=332193"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=332193"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}