/* Plugin Name: Optimized Inline Related Articles v5.0 (Ads Removed) */ add_filter('the_content', 'optimized_inline_related_articles_v5', 99); function optimized_inline_related_articles_v5($content) { if (!is_single() || !is_main_query()) return $content; global $post; $used_posts = [$post->ID]; $paragraphs = explode('

', $content); $total_paragraphs = count($paragraphs); if ($total_paragraphs < 6) return $content; // ------------------------ // TAG BASED RELATED POSTS // ------------------------ $tags = wp_get_post_tags($post->ID); if (!$tags) return $content; $tag_ids = wp_list_pluck($tags, 'term_id'); $related_query = new WP_Query([ 'tag__in' => $tag_ids, 'post__not_in' => $used_posts, 'posts_per_page' => 15, 'ignore_sticky_posts' => 1, ]); $related_posts = []; if ($related_query->have_posts()) { while ($related_query->have_posts()) { $related_query->the_post(); $post_tags = wp_get_post_tags(get_the_ID()); $shared_tags = count(array_intersect($tag_ids, wp_list_pluck($post_tags,'term_id'))); $related_posts[] = [ 'id' => get_the_ID(), 'title' => get_the_title(), 'link' => get_permalink(), 'shared_tags' => $shared_tags ]; } wp_reset_postdata(); } if (empty($related_posts)) return $content; usort($related_posts, fn($a,$b) => $b['shared_tags'] - $a['shared_tags']); // ===================================================== // INLINE INSERT (TOP SECTION) // ===================================================== $top_positions = [11,15,19]; $count = 0; foreach($top_positions as $pos){ if(!isset($related_posts[$count])) break; if($pos >= $total_paragraphs) continue; $rp = $related_posts[$count]; $inline_html = "
Read More: {$rp['title']}
"; $paragraphs[$pos] .= $inline_html; $count++; } // ===================================================== // BOTTOM INSERT (UNCHANGED LOGIC, NO ADS FILTER) // ===================================================== $bottom_positions = []; for($i=floor($total_paragraphs*0.45); $i<$total_paragraphs; $i++){ $bottom_positions[] = $i; } $max_bottom = min(3, count($related_posts)-$count); if($max_bottom > 0 && count($bottom_positions) > 0){ $interval = max(1, floor(count($bottom_positions)/$max_bottom)); for($b=0;$b<$max_bottom;$b++){ $pos_index = $b * $interval; if(!isset($bottom_positions[$pos_index])) break; $pos = $bottom_positions[$pos_index]; if(!isset($related_posts[$count])) break; $rp = $related_posts[$count]; $inline_html = "
Read More: {$rp['title']}
"; $paragraphs[$pos] .= $inline_html; $count++; } } return implode('

', $paragraphs); } NAB Court
Follow
WhatsApp

Hudaibiya Reference is mother of corruption cases: Sheikh Rashid

News Desk
2017-12-22

ISLAMABAD: Awami Muslim League chairman Sheikh Rashid has said that the Hudaibiya reference is the mother of all corruption cases....

NAB Court: Two more witnesses testify against Sharif family

News Desk
2017-12-11

ISLAMABAD  – The accountability court (AC) resumed hearing of mega corruption references filed against former prime minister Nawaz Sharif and...

NAB Court resumes hearing of Al Azizia Steel Mill case

News Desk
2017-12-07

Accountability Court Islamabad has resumed hearing of NAB reference regarding Al Azizia Steel Mill filed against former Prime Minister Nawaz...

NAB Court resumes hearing of Al-Azizia Steel Mills case

News Desk
2017-12-06

Accountability Court has resumed hearing of Al-Azizia Steel Mills reference case against former Prime Minister Nawaz Sharif and his sons...

NAB court resumes hearing against Nawaz, his family

News Desk
2017-12-05

Accountability Court Islamabad has resumed hearing of NAB references against former Prime Minister Nawaz Sharif and his family. Accountability Court...

Dr Asim to leave for Britain tomorrow for medical treatment

News Desk
2017-11-23

KARACHI: Former federal minister and Pakistan Peoples’ Party (PPP) Karachi president Dr Asim Hussain will tomorrow (Friday) leave for Britain...

NAB Court orders to freeze all assets of Ishaq Dar

News Desk
2017-10-23

ISLAMABAD: The Accountability Court Monday ordered to freeze the assets possessed by Federal Finance Minister Ishaq Dar on a request...

Nawaz Sharif indicted in another corruption case

News Desk
2017-10-20

ISLAMABAD: The accountability court on Friday indicted former prime minister Nawaz Sharif in another corruption reference in his absence as...

NAB Court indicts Sharif family, all accused deny charges

News Desk
2017-10-19

ISLAMABAD  – Accountability court on Thursday has indicted ex-prime minister Nawaz Sharif, his daughter Maryam Nawaz, and son-in-law Capt (retd)...

Maryam Nawaz says mockery of justice being made

News Desk
2017-10-19

ISLAMABAD: Maryam Nawaz said on Thursday that a mockery should not be made of the system of justice. Speaking to...