dolaxp
هذا الخطأ ظهر لأنني عملت على موقع منصب في مجلد فرعي، ولذلك فلم أعاني من أي مشكلة، أما موقعك فهو منصب على دومين رئيسي، ولذلك ظهر الخطأ.
الكود المعدل التالي، يفترض أن يعمل لديك دون أخطاء. من الضروري أن تتأكد من أنه يعمل بشكل صحيح، لأن أي خطأ يمكن أن يؤدي إلى خسارة ظهور صفحات تريد فهرستها في نتائج البحث. يا ريت تعلمني بالنتيجة لو تكرمت.
function add_noindex_to_pages_by_uri() {
$file_path = WP_CONTENT_DIR . '/noindex-pages.txt';
if (file_exists($file_path)) {
$uris = file($file_path, FILE_IGNORE_NEW_LINES | FILE_SKIP_EMPTY_LINES);
$home_path = wp_parse_url(home_url(), PHP_URL_PATH);
$current_uri = trim(str_replace($home_path ?: '', '', $_SERVER['REQUEST_URI']), '/');
if (in_array($current_uri, $uris)) {
remove_action('wp_head', 'wp_robots');
remove_action('wp_head', 'noindex', 1);
add_action('wp_head', function() {
echo '<meta name="robots" content="noindex, nofollow">' . "\n";
});
}
}
}
add_action('wp_head', 'add_noindex_to_pages_by_uri', 1);
add_filter('wp_robots', 'custom_wp_robots_by_uri');
function custom_wp_robots_by_uri($robots) {
$file_path = WP_CONTENT_DIR . '/noindex-pages.txt';
if (file_exists($file_path)) {
$uris = file($file_path, FILE_IGNORE_NEW_LINES | FILE_SKIP_EMPTY_LINES);
$current_uri = trim(str_replace(wp_parse_url(home_url(), PHP_URL_PATH), '', $_SERVER['REQUEST_URI']), '/');
if (in_array($current_uri, $uris)) {
return array('noindex' => true, 'nofollow' => true);
}
}
return $robots;
}