1/** 2 * b247-taboola.js 3 * Taboola widget initializer â reads page type from B247TaboolaConfig, 4 * pushes slot configurations to the _taboola command queue, then flushes. 5 * The CDN loader (loader.js) is enqueued separately in <head> by PHP. 6 */ 7(function (w, d) { 8 'use strict'; 9 10 var cfg = w.B247TaboolaConfig || {}; 11 var pageType = cfg.pageType || 'article'; 12 13 w._taboola = w._taboola || []; 14 15 function pushSlot(slot) { 16 if (!d.getElementById(slot.container)) return; 17 _taboola.push({ 18 mode: slot.mode, 19 container: slot.container, 20 placement: slot.placement, 21 target_type: 'mix' 22 }); 23 } 24 25 // ââ Slot definitions â mirrors the Next.js PWA placements ââââââââââââ 26 // Home + article use article-personalization in the sidebar; category keeps right-rail. 27 var slots = { 28 homepage: [ 29 { mode: 'thumbnails-h', container: 'taboola-home-page', placement: 'Home Page' }, 30 { mode: 'thumbnails-a-1x5-stream', container: 'taboola-article-personalization', placement: 'Article Personalization' }, 31 { mode: 'thumbs-feed-01-b', container: 'taboola-below-home', placement: 'Below Home' } 32 ], 33 article: [ 34 { mode: 'alternating-thumbnails-a', container: 'taboola-below-article-thumbnails-new', placement: 'Below Article Thumbnails New' }, 35 { mode: 'thumbnails-a-1x5-stream', container: 'taboola-article-personalization', placement: 'Article Personalization' } 36 ], 37 category: [ 38 { mode: 'thumbs-feed-01-b', container: 'taboola-below-category-thumbnails', placement: 'Below Category Thumbnails' }, 39 { mode: 'thumbnails-rr-g', container: 'taboola-right-rail', placement: 'Right Rail' } 40 ] 41 }; 42 43 (slots[pageType] || slots.article).forEach(pushSlot); 44 45 _taboola.push({ flush: true }); 46 47}(window, document));
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.