Sitemap Generator Language Table of Contents
 Japanese [日本語]  
 English [英語]  
 Korean [韓国語]  
 Simplified Chinese [简体中文]  
 Traditional Chinese [繁體中文]  
 Español [スペイン語]  
 Français [フランス語]  
 Português [ポルトガル語]  
 Arabic العربية [アラビア語]  
 Deutsch [ドイツ語]  
 Italiano [イタリア語]  
 Russian [ロシア語]  
 Turkish [トルコ語]  
 Hindi [ヒンディー語]  
 Vietnamese [ベトナム語]  
 Thai [タイ語]  
 Dutch [オランダ語]  
 Indonesian [インドネシア語]  
 Malay [マレー語]  
 Filipino [フィリピン語]  
 Swedish [スウェーデン語]  
 Norwegian [ノルウェー語]  
 Danish [デンマーク語]  
 Finnish [フィンランド語]  
 Polish [ポーランド語]  
 Czech [チェコ語]  
 Hungarian [ハンガリー語]  
 Greek [ギリシャ語]  
 Romanian [ルーマニア語]  

XML साइटमैप जनरेशन प्रोग्राम
XML साइटमैप जेनरेटर
कोड की नकल करें और प्रोग्राम बनाएं।.
सैम्पल XML साइटमैप

परिचय
साइटमैप एक पृष्ठ या फ़ाइल है जो आपकी वेबसाइट की संरचना और सामग्री की सूची बनाता है, जिससे उपयोगकर्ताओं और सर्च इंजन को आपकी साइट पर जानकारी समझने में और नेविगेशन में मदद होती है।
हालाँकि इस पृष्ठ का शीर्षक 'XML साइटमैप जनरेशन प्रोग्राम' है, लेकिन वर्तमान पृष्ठ साइटमैप बनाने का उपकरण नहीं है।
इस पृष्ठ पर, आपको XML प्रारूप में साइटमैप जनरेट और पुनरापन्न करने के लिए कोड मिलेगा।  नीचे दिए गए कोड को  अपनी साइट सर्वर पर अपलोड करें और जब आपको अपनी साइट के लिए XML साइटमैप की आवश्यकता हो, तो प्रोग्राम को चलाएं। आप कोड में परिवर्तन करने में स्वतंत्र हैं। कृपया इसका उपयोग करें।
डिसक्लेमर
आपकी साइट की संरचना के आधार पर, इस प्रोग्राम से साइटमैप सफलतापूर्वक उत्पन्न नहीं हो सकता है की संभावना है।
प्रोग्राम इस मानक का उपयोग करके साइट बनाई जा रही है की स्थिति का अनुमान है। हालांकि, यदि पूरी सामग्री UTF-8 में है, तो यदि HTML टैग प्रोग्राम के पैटर्न के साथ मेल नहीं खाते हैं, तो यह कार्य नहीं कर सकता है।
जोखिम
इस प्रोग्राम को ऑनलाइन वातावरण में कार्यान्वित करने के लिए डिज़ाइन किया गया है। इसके साथ निम्नलिखित जोखिम जुड़े हुए हैं।
  1. तृतीय-पक्ष के हस्तक्षेप का जोखिम: दुर्भाग्यपूर्ण तृतीय-पक्ष PHP प्रोग्राम को कार्यान्वित कर सकते हैं, संभावना है कि मूल को बदल दें।
  2. सर्वर प्रदर्शन: अनेक फ़ाइलों/निर्देशिकाओं के साथ, यह समय और मेमोरी खा सकता है, सर्वर लोड पर प्रभाव डाल सकता है।
  3. Googlebot पर प्रभाव: Googlebot की साइटमैप को संदर्भित करते समय, यदि प्रोग्राम लिखते समय क्रॉल होता है, तो सही जानकारी बॉट तक नहीं पहुंच सकती है।
उपाय किए गए हैं
हमने जोखिम को कम करने के लिए निम्नलिखित उप
  1. उत्पन्न फ़ाइलों का भंडारण: उत्पन्न साइटमैप फ़ाइल की सुरक्षा को बढ़ाने के लिए, कार्यक्रम इन कदमों का पालन करता है:
    1. अस्थायी भंडारण: साइटमैप फ़ाइलें पहले से ही एक स्थान पर अस्थायी रूप से भंडारित की जाती हैं, जो वेब सर्वर पर कुटिल तीसरे पक्ष द्वारा सीधे लेखन या उसमें हस्तक्षेप को रोकता है।
    2. फ़ाइल नामकरण: उत्पन्न साइटमैप फ़ाइल को अस्थायी भंडारण के बाद पुनः नामकरण किया जाता है, मूल फ़ाइल के नाम को बदलकर हस्तक्षेप के जोखिम को कम करता है।
उच्चरित उपाय
आपके जोखिम को कम करने के लिए, कृपया निम्नलिखित का ध्यान रखें:
  1. कार्यक्रम फ़ाइल हटाएं: साइटमैप उत्पन्न होने के बाद, सर्वर से अपलोड की गई प्रोग्राम फ़ाइल को त्वरित हटा दें।
  2. एक सुरक्षित वातावरण में क्रियान्वित होना: दूरस्थ सर्वर पर फ़ाइलें रखने के बारे में सावधान रहें और यदि आपको लगता है कि वे जोखिम में हैं, तो उन्हें स्थानीय रूप से क्रियान्वित करने का विचार करें।
  3. लोड मॉनिटरिंग: यदि सर्वर लोड बढ़ता है, तो सीधे उपयोग को बंद करें ताकि प्रदर्शन समस्याएँ न हों।
  4. Googlebot के लिए उपाय: के लिए उपाय: साइटमैप उत्पन्न करने के बाद, Google Search Console में क्रॉलिंग सफलता की सत्यापन करें। आवश्यकता हो तो मैन्युअल क्रॉलिंग आरंभ करने का विचार करें।
  • यदि आपके पास WordPress जैसा साइटमैप जनरेट करने का प्लगइन नहीं है, तो आपको स्वयं साइटमैप जेनरेट करना होगा। उस स्थिति में, कृपया यहां प्रस्तुत कोड का उपयोग करें।
  • साइटमैप संरचना और आवश्यकता के बारे में विस्तृत जानकारी बहुत सी वेबसाइटों पर मिल सकती है, इसलिए यहां यह छोड़ा गया है, केवल PHP कोड प्रदान किया जाता है।
  • कोड में प्रत्येक आइटम में टिप्पणियाँ हैं; अपनी पसंद के अनुसार विधि चुनें।
  • उत्पन्न XML फ़ाइल (.xml) निम्नलिखित रूप में दिखाई देती है, जिसमें Google पंजीकरण के लिए आवश्यकता के कम से कम आइटम के साथ एक नमूना है। इसके अलावा, आप "पृष्ठ शीर्षक," "परिवर्तन अवकाश," और "प्राथमिकता" भी पुनर्प्राप्त कर सकते हैं।
    सैम्पल XML साइटमैप
    ・आखिरी संशोधन तिथि (<lastmod>) को समन्वित विश्व समय (UTC) में प्राप्त किया जाता है।
    ・उदाहरण के लिए, जापान समय को प्रदर्शित समय में 9 घंटे जोड़ता है।
  • स्थापना कदम
    1. "sitemap" जैसे नाम के एक निर्दिष्टरूप की डायरेक्टरी (फ़ोल्डर) तैयार करें।
    2. इस कोड को नीचे   कॉपी करें और अपने वेब पृष्ठ संपादक में पेस्ट करें।
    3. कोड में टिप्पणियों का पालन करें और प्रत्येक आइटम को उस सामग्री से बदलें जो आपकी स्थितियों के साथ मेल खाती है।
    4. फ़ाइल का नाम, उदाहरण के लिए, 'sitemapgenerator.php' रखें और संपादित पृष्ठ को '.php' नहीं, '.html' के साथ सहेजें।
    5. इसे अपने वेब सर्वर पर अपलोड करें। यदि आप पृष्ठ तक पहुँच सकते हैं और एक ऐसे स्क्रीन को देख सकते हैं जो नीचे दिए गए के तरह है, तो जनरेशन सफल है।
      । उपयोग के लिए एक विकास वातावरण में 20,000 पृष्ठों के आस-पास, फ़ाइल का आकार लगभग 6MB है (सेटिंग्स में उपलब्ध सभी विकल्पों का चयन करना), और यह लगभग 3 सेकंड लगता है।
      MTML खंड समाहित प्रकार की सफल उदाहरण
      【MTML खंड समाहित प्रकार की सफल उदाहरण】
      केवल PHP खंड समाहित प्रकार की सफल उदाहरण
      【केवल PHP खंड समाहित प्रकार की सफल उदाहरण】
    6. अपने ब्राउज़र में सहेजी गई "XML फ़ाइल" को खोलें और इसे जाँचें, या सहेजी गई ".xml" फ़ाइल को डाउनलोड करें और इसे जाँचें, और यदि यह सही रूप से उत्पन्न होता है, इसेGoogle Search Console  Bing Webmaster Tools  आदि में पंजीकृत करें।
      *यदि फ़ाइल का आकार बड़ा है, तो आप इसे ब्राउज़र में नहीं खोल सकते हैं। पुष्टि के लिए वेब सर्वर से ".xml" फ़ाइल को डाउनलोड करें।
      * ब्राउज़र के आधार पर, जब इसे खोला जाता है, तो यह सही ढंग से प्रदर्शित नहीं हो सकता।
      * หากคุณเปิดในเบราว์เซอร์ "การประกาศ XML" ในบรรทัดแรกอาจไม่ปรากฏขึ้น
    7. इसे पहली बार उपयोग करते समय, उचित जनरेशन सुनिश्चित करें और अनावश्यक आइटमों की जाँच करें।
    8. यदि पृष्ठ तक पहुँचते समय "इंकोडिंग त्रुटि" का सामना करते हैं, तो इसे विशिष्ट वर्णों के कारण हो सकता है।
      कोड में इंकोडिंग त्रुटि का उदाहारण
      उदाहरण के लिए, वर्ण जैसे [&] को नीचे दिए गए सारणियों में दिखाए गए एस्केप कोड्स के रूप में पुनर्लेखित किया जाना चाहिए।
      * एस्केप कोड्स को क्लिक करके कॉपी किया जा सकता है।
    9. वर्ण  एस्केप कोड 
      Ampersand
      &➡️
      &amp;
      Single Quote
      ➡️
      &apos;
      Double Quote
      ➡️
      &quot;
      Greater Than
      >➡️
      &gt;
      Less Than
      <➡️
      &lt;
      "इंकोडिंग त्रुटि" के सामान्य कारण::  
      An "Encoding Error" is an error message that occurs when an XML file is not correctly encoded with a specific character encoding. The following issues may be considered:
      1. Invalid characters are present
        [Cause] XML demands certain characters ([&][']["][>][<], etc.) to be escaped. An error occurs if these characters are not properly escaped.
        [Fix] Escape invalid characters or ensure they are correctly escaped.
      2. Correct encoding is not specified
        [Cause] If the XML file declaration at the beginning, such as <?xml version="1.0"?>, is present, and the encoding attribute is not correctly specified afterward, an error occurs.
        [Fix] Specify the correct encoding, for example, <?xml version="1.0" encoding="UTF-8"?>.
      3. Declaration section is incorrect
        [Cause] An error occurs if the declaration section is incorrect or if there is an error between "<?xml" and "?>".
        [Fix] Correct the declaration section.
      4. File encoding doesn't match the declaration
        [Cause] An error occurs if the actual encoding of the file does not match the encoding specified in the XML declaration.
        [Fix] Adjust the file encoding to match the declaration.
      5. File is corrupted
        [Cause] Errors occur if the file is not saved correctly or is corrupted.
        [Fix] Resave the file and ensure it can be loaded successfully.
    10. जब हमने इसे एक परीक्षण वातावरण में सत्यापित किया, जब कोई अपवाद निर्दिष्ट नहीं किए गए थे, तो एक XML फ़ाइल में इस साइट पर एक वेब पृष्ठ निर्देशिका (फ़ोल्डर) के रूप में उपयोग नहीं होने वाली "सिस" जैसी डायरेक्टरी पाई गई थी। यदि पुष्टि होती है, तो कृपया 'डायरेक्टरी छोड़ें' आइटम में डायरेक्टरी का नाम निर्दिष्ट करें, उदाहरण के लिए, "$excludeDirectories = ['sys']"।
      या फिर, "एक्सक्लूड मेटा टैग्स" खंड में कुछ निर्दिष्ट करने की कोशिश करें, उदाहरण के लिए, "$excludeMetaTags = ['NOINDEX']"। नीचे दिए गए PHP कोड में "NOINDEX" का उपयोग डिफ़ॉल्ट सेटिंग के रूप में किया गया है।.
* प्रोग्राम में "font-family" को आवश्यकतानुसार अपनी साइट के अनुसार समायोजित करें।
《 XML साइटमैप जनरेशन PHP कोड 》
फ़ाइल को ".php" एक्सटेंशन के साथ सहेजें।

<!DOCTYPE html>
<html lang="hi">
<head>
<meta charset="UTF-8">
<title>XML Sitemap उत्पन्न PHP प्रोग्राम</title>
<meta name="robots" content="NOINDEX,NOFOLLOW">
<!-- नि: उपयोग होने पर हटा सकते हैं: मुक्त प्रतीक फॉन्ट लोड करें -->
<link href="https://use.fontawesome.com/releases/v6.2.0/css/all.css" rel="stylesheet">
</head>
<body>
<h2>&nbsp;&nbsp;<i class="fa-regular fa-pen-to-square fa-2x" style="color: crimson"></i>&nbsp;XML साइटमैप निर्माण</h2>
<hr>
<div style="margin:15px 5px 10px 20px;padding: 0 15px 0 0; font-size: 14px;background-color: lavenderblush; border: gray 1px solid; border-radius: 4px;">
<div style="margin:15px 0 0 20px">
    <form method="post">
        <input type="submit" name="downloadLocal" value="XML फ़ाइल स्थानीय रूप से डाउनलोड करें" style="background-color: white;border-radius: 5px;cursor: pointer;">
    </form>
</div>
<ul>
<li>यहाँ से डाउनलोड की गई XML फ़ाइल पृष्ठ के HTML हिस्से को समाहित करती है।</li>
<li>यदि आपको एक शुद्ध XML फ़ाइल चाहिए, इसे एक रिमोट सर्वर से डाउनलोड करें। या, डाउनलोड की गई फ़ाइल के HTML हिस्से को हटा दें। "&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot;?&gt;" से "&lt;/urlset&gt;" तक की XML फ़ाइलें हैं।</li>
</ul>
</div>
<hr>
<?php
//************************************************
// XML साइटमैप उत्पन्न PHP प्रोग्राम
// प्रदान किया गया प्रोग्राम: हर किसी के ज्ञान एक छोटी उपयोगी पुस्तक
//        मिन्ना नो चिशिकि छोट्टो बेनरीचो
//        みんなの知識 ちょっと便利帳
// https://www.benricho.org/Tips/sitemapgenerator/
// जारी की गई: 30 जनवरी, 2024
//************************************************

// वेब सर्वर का दस्तावेज़ रूट। स्वचालित रूप से प्राप्त किया गया।
$sitemapDirectory = $_SERVER['DOCUMENT_ROOT'];

// .xml फ़ाइल का नाम (अंतिम फ़ाइल का नाम)
// .xml फ़ाइल का नाम बदल सकता है। हालांकि, कई सर्च इंजन "sitemap.xml" का मानक नामकरण का उपयोग करते हैं, इसलिए "sitemap.xml" का उपयोग करना सुझाया जाता है।
$finalSitemapFilename = 'sitemap.xml';

// साइटमैप फ़ाइल सहेजने के लिए निर्देशित डायरेक्टरी (अंतिम निर्देशिका - रूट)
$finalSitemapPath = $sitemapDirectory . '/' . $finalSitemapFilename;

// साइटमैप उत्पन्न करने के लिए निर्देशित डायरेक्टरी
$rootDirectory = $_SERVER['DOCUMENT_ROOT'];

// .xml फ़ाइल का नाम (अस्थायी फ़ाइल का नाम)
$tempSitemapFilename = 'temporarysitemap.xml';

// साइटमैप फ़ाइल सहेजने के लिए निर्देशित डायरेक्टरी (अस्थायी निर्देशिका)
$tempSitemapPath = $sitemapDirectory . '/' . $tempSitemapFilename;

// एक अस्थायी निर्देशिका बनाएँ यदि यह मौजूद नहीं है
$tempDirectory = dirname($tempSitemapPath);
if (!file_exists($tempDirectory)) {
    mkdir($tempDirectory, 0777, true);
}

// पुराने साइटमैप को हटाएं और नए साइटमैप को नाम बदलें (शैल कमांड का उपयोग करके)
$oldSitemapFilename = 'old-' . $finalSitemapFilename;
$oldSitemapPath = $sitemapDirectory . '/' . $oldSitemapFilename;

// पुराने साइटमैप को हटाएं यदि यह मौजूद है
if (file_exists($oldSitemapPath)) {
    unlink($oldSitemapPath);
}

// नए साइटमैप के लिए नाम बदलें
if (file_exists($tempSitemapPath)) {
    rename($tempSitemapPath, $oldSitemapPath);
}

// जाँचें कि क्या डाउनलोड बटन क्लिक किया गया है
if (isset($_POST['downloadLocal'])) {
    // साइटमैप को अस्थायी निर्देशिका में कॉपी करें
    copy($finalSitemapPath, $tempSitemapPath);

    // डाउनलोड के लिए हेडर सेट करें
    header('Content-Type: application/octet-stream');
    header('Content-Disposition: attachment; filename="' . $finalSitemapFilename . '"');
    header('Content-Length: ' . filesize($tempSitemapPath));

    // फ़ाइल को आउटपुट करें
    readfile($tempSitemapPath);

    // डाउनलोड के बाद, अस्थायी निर्देशिका में सहेजे गए साइटमैप को हटाएं
    unlink($tempSitemapPath);
    exit;
}

///// असमावेश सेटिंग्स /////
// छोड़ने के लिए निर्देशिकाएँ। केवल निर्देशिका नामों को निर्दिष्ट करें। ['dir-1', 'dir2'] आदि।
// यदि आवश्यक नहीं है तो रिक्त सरणी पर सेट करें। $excludeDirectories = [];
$excludeDirectories = [];

// छोड़ने के लिए फ़ाइलें। केवल फ़ाइल नामों को निर्दिष्ट करें। ['aaa.html', 'bbb.php'] आदि।
// यदि आवश्यक नहीं है तो रिक्त सरणी पर सेट करें। $excludeDirectories = [];
$excludeFiles = [];

// निर्देशिकाएँ / फ़ाइलें छोड़ने ['dir-1/dir1/file1.html', 'dir2/file2.php'] आदि।
// छोड़ने वाले पथों में प्रमुख "/" शामिल नहीं होना चाहिए।
// यदि आवश्यक नहीं है तो रिक्त सरणी पर सेट करें। $excludeDirectories = [];
$excludePaths = [];

// मेटा टैग्स जिनमें ['NOINDEX', 'NOFOLLOW', 'REFRESH'], आदि शामिल हैं उन्हें छोड़ने के लिए
// यदि आवश्यक नहीं है तो रिक्त सरणी पर सेट करें। $excludeDirectories = [];
// ['NOINDEX'] की निर्देशित करना सिफारिश है
$excludeMetaTags = ['NOINDEX'];

///// साइटमैप उत्पन्न करने की शर्तें /////
// पृष्ठ शीर्षक प्राप्त करें (1: हाँ, 2: नहीं)
// * Google Search Console द्वारा सिफारिश नहीं की जाती
// * Google Search Console के साथ पंजीकरण कर रहे हैं तो "2: नहीं" पर सेट करें
// * "1: प्राप्त" पर सेट किया जाता है तो Google Search Console एक चेतावनी प्रदर्शित कर सकता है, "शीर्षक टैग मान्यता प्राप्त नहीं है। कृपया सुधार करें।" कहकर
$getTitle = 2;
// पृष्ठ शीर्षक से निर्दिष्ट स्ट्रिंग्स को हटाएं
// * शीर्षक से निर्दिष्ट स्ट्रिंग्स को हटा सकते हैं। ['of', 'is'] आदि।
// यदि आवश्यक नहीं है तो रिक्त सरणी पर सेट करें। $excludeDirectories = [];
$removeTitleStrings = [];

// फ़ाइल की आखिरी संशोधन तिथि प्राप्त करें (1: हाँ, 2: नहीं)
// * Google Search Console द्वारा सिफारिश किया गया
$getLastMod = 1;

// पृष्ठ अद्यतितता
// * Google द्वारा अनदेखा किया जाता है। इसे मूल्य जोड़ने की सिफारिश नहीं की जाती है।
// पृष्ठ अद्यतितता (1: हाँ, 2: नहीं) का उपयोग करें
$useChangeFreq = 2;
// "1" का चयन करने पर अद्यतितता के लिए तत्व चयन करें
// ['always', 'hourly', 'daily', 'weekly', 'monthly', 'yearly', 'never']
// अपनी साइट की अद्यतितता के लिए लागू होने वाले मूल्यों का चयन करें
$changefreqValues = ['आपकी साइट के लिए उपयुक्त तत्व'];

// पृष्ठ प्राथमिकता
// * Google द्वारा अनदेखा किया जाता है। इसे मूल्य जोड़ने की सिफारिश नहीं की जाती है।
// प्राथमिकता प्राप्त करें (1: हाँ, 2: नहीं)
$getPriority = 2;

// साइटमैप उत्पन्न संदेश
$successMessage = "<p>・ साइटमैप XML फ़ाइल उत्पन्न हो गई है।</p><p>・ इसे दूरस्थ सर्वर की मूल डायरेक्टरी में '{$finalSitemapFilename}' के रूप में सहेजा गया है।<br>・ सुरक्षा कारणों से, कृपया दूरस्थ सर्वर से प्रोग्राम फ़ाइल को हटा दें।</p><p>・ <a href='/{$finalSitemapFilename}' target='_blank'>ब्राउज़र में 'XML फ़ाइल' खोलें [नई टैब में]।</a></p>";

// साइटमैप XML हेडर (अंतिम साइटमैप फ़ाइल के लिए)
$xmlFinal = <<<XML
<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
XML;

// निर्देशिका के भीतर फाइलें रिकर्सिवली प्रोसेस करें (अंतिम साइटमैप फ़ाइल के लिए)
function generateSitemap($directory, $excludeDirs, $excludeFiles, $getTitle, $removeTitleStrings, $getLastMod, $excludeMetaTags, $useChangeFreq, $changefreqValues, $getPriority, $excludePaths, &$xmlFinal) {
    $dir = new DirectoryIterator($directory);
    foreach ($dir as $fileInfo) {
        if ($fileInfo->isDot()) continue;

        $filename = $fileInfo->getFilename();
        $filepath = $fileInfo->getPathname();
        $fileExtension = pathinfo($filename, PATHINFO_EXTENSION);

        // यह एक बाह्यित निर्देशिका / फ़ाइल है या नहीं यह जाँचें
        $excludePath = str_replace($_SERVER['DOCUMENT_ROOT'], '', $filepath);
        if (in_array(ltrim($excludePath, '/'), $excludePaths)) {
            continue;
        }
        if ($fileInfo->isDir()) {
            if (in_array($filename, $excludeDirs)) {
                continue;
            } else {
                generateSitemap($filepath, $excludeDirs, $excludeFiles, $getTitle, $removeTitleStrings, $getLastMod, $excludeMetaTags, $useChangeFreq, $changefreqValues, $getPriority, $excludePaths, $xmlFinal);
            }
        } else {
            if (in_array($filename, $excludeFiles) || in_array($filename, $excludeDirs)) {
                continue;
            }

            if (in_array($fileExtension, ['html', 'php'])) {
                processFile($filepath, $getTitle, $removeTitleStrings, $getLastMod, $excludeMetaTags, $useChangeFreq, $changefreqValues, $getPriority, $xmlFinal);
            }
        }
    }
}

// फ़ाइल को प्रोसेस करें (अंतिम फ़ाइल के लिए)
function processFile($filepath, $getTitle, $removeTitleStrings, $getLastMod, $excludeMetaTags, $useChangeFreq, $changefreqValues, $getPriority, &$xmlFinal) {
    $content = file_get_contents($filepath);
    if (shouldExcludeContent($content, $excludeMetaTags)) {
        return;
    }

    $url = getRelativeUrl($filepath);
    // UTC (समन्वित वैश्विक समय) स्वरूप में आख़िरी संशोधन तिथि सेट करें (जिसे "+00:00" द्वारा संकेतित किया गया है)
    $lastMod = ($getLastMod == 1) ? getLastModifiedDateUTC($filepath) : '';

    $xmlFinal .= "\n <url>";
    $xmlFinal .= "\n <loc>{$url}</loc>";

    if ($getTitle == 1) {
        $title = getTitleFromContent($content);
        if (!empty($title)) {
            $title = str_replace($removeTitleStrings, '', $title);
            $xmlFinal .= "\n <title>{$title}</title>";
        }
    }

    // आखिरी संशोधन तिथि प्रदर्शित करें
    if (!empty($lastMod)) {
        $xmlFinal .= "\n <lastmod>{$lastMod}</lastmod>";
    }

    // अद्यतितता प्रदर्शित करें
    if ($useChangeFreq == 1) {
        $changefreq = $changefreqValues[array_rand($changefreqValues)];
        $xmlFinal .= "\n <changefreq>{$changefreq}</changefreq>";
    }

    // प्राथमिकता प्रदर्शित करें
    if ($getPriority == 1) {
        $priority = getPriorityFromDepth($filepath);
        $xmlFinal .= "\n <priority>{$priority}</priority>";
    }

    $xmlFinal .= "\n </url>";
}

// गहराई पर आधारित प्राथमिकता की गणना करें (अंतिम फ़ाइल के लिए)
function getPriorityFromDepth($filepath) {
    $depth = substr_count($filepath, DIRECTORY_SEPARATOR);
    return 1 - ($depth * 0.1);
}

// मेटा टैग्स को छोड़ना चाहिए या नहीं यह जाँचें (अंतिम फ़ाइल के लिए)
function shouldExcludeContent($content, $excludeMetaTags) {
    foreach ($excludeMetaTags as $tag) {
        if (stripos($content, '<meta name="robots" content="' . $tag) !== false) {
            return true;
        }
    }

    return false;
}

///// फ़ाइल की आखिरी संशोधन तिथि प्राप्त करें - साइटमैप XML एलिमेंट में UTC (समन्वित वैश्विक समय) का उपयोग करना सिफारिश है
// आख़िरी संशोधन तिथि को UTC (समन्वित वैश्विक समय) स्वरूप में सेट करें (जिसे "+00:00" द्वारा संकेतित किया गया है)
function getLastModifiedDateUTC($filepath) {
    $lastModTimestamp = filemtime($filepath);
    $lastModDateTime = new DateTimeImmutable('@' . $lastModTimestamp);
    return $lastModDateTime->format('c');
}

// HTML फ़ाइल से शीर्षक प्राप्त करें (अंतिम फ़ाइल के लिए)
function getTitleFromContent($content) {
    $dom = new DOMDocument;
    libxml_use_internal_errors(true); // HTML पार्सिंग के दौरान त्रुटियों को दबाएं
    $dom->loadHTML($content);

    $titleElements = $dom->getElementsByTagName('title');
    if ($titleElements->length > 0) {
        $title = $titleElements->item(0)->textContent;
        return $title;
    }

    return '';
}

// फ़ाइल का सामान्य URL प्राप्त करें (अंतिम फ़ाइल के लिए)
function getRelativeUrl($filepath) {
    $relativeUrl = str_replace($_SERVER['DOCUMENT_ROOT'], '', $filepath);
    return $_SERVER['REQUEST_SCHEME'] . '://' . $_SERVER['SERVER_NAME'] . str_replace('\\', '/', $relativeUrl);
}

// साइटमैप उत्पन्न करना शुरू करें (अंतिम फ़ाइल के लिए)
generateSitemap($rootDirectory, $excludeDirectories, $excludeFiles, $getTitle, $removeTitleStrings, $getLastMod, $excludeMetaTags, $useChangeFreq, $changefreqValues, $getPriority, $excludePaths, $xmlFinal);

// साइटमैप फ़ूटर (अंतिम फ़ाइल के लिए)
$xmlFinal .= "\n</urlset>";

// साइटमैप को एक फ़ाइल में सहेजें (अंतिम फ़ाइल के लिए)
file_put_contents($finalSitemapPath, $xmlFinal);

// सफलता संदेश प्रदर्शित करें (जिससे यह प्रदर्शित हो कि अंतिम साइटमैप फ़ाइल उत्पन्न और सहेजी गई है)
echo $successMessage;
?>
<hr>
<p style="margin-top: 20px">
<!-- <a> टैग में इस PHP प्रोग्राम की फ़ाइल नाम सेट करें। एक्सटेंशन ".php" है -->
<a href="File name of this program.php" style="margin-left: 20px;text-decoration: none;"><i class="fa-solid fa-check" style="color: #005eff;"></i> "XML फ़ाइल" को पुनः उत्पन्न करें&nbsp;&nbsp;<i class="fa-solid fa-rotate fa-spin fa-2x" style="color:crimson"></i>&nbsp;&nbsp;&nbsp;[पृष्ठ पुनः लोड करें]</a>
</p>
<p>
<!-- उत्पन्न "XML फ़ाइल" को ब्राउज़र में खोलें -->
<a href='<?php echo '/' . $finalSitemapFilename; ?>' target='_blank' style='margin-left: 20px;text-decoration: none;'><i class="fa-solid fa-check" style="color: #005eff;"></i> ब्राउज़र में "XML फ़ाइल" खोलें&nbsp;&nbsp;<i class="fa-solid fa-chalkboard-user fa-beat-fade fa-2x" style="color:green"></i>&nbsp;&nbsp;&nbsp;[अलग टैब]</a>
<div style="margin-left: 30px;font-size: 12px;color: gray">* यदि फ़ाइल का आकार बड़ा है, तो आप इसे अपने ब्राउज़र में नहीं खोल सकते हैं। यदि आप इसे अपने ब्राउज़र में नहीं खोल सकते हैं, तो कृपया वेब सर्वर से ".xml" फ़ाइल को डाउनलोड करें और इसे जाँचें।</div>
</p>
<hr>
<!-- "Google" साइटमैप की जोड़ / अद्यतन की पुष्टि करें -->
<p>
<!-- <a> टैग में अपना खुद का URL सेट करें -->
<a href="https://search.google.com/search-console/sitemaps?resource_id=your own URL" target="_blank" style="margin-left: 20px;text-decoration: none;"> <i class="fa-solid fa-check" style="color: #005eff;"></i>&nbsp;[<strong>Google</strong>]&nbsp;साइटमैप की जोड़ / अद्यतन की पुष्टि करें&nbsp;&nbsp;<i class="fa-solid fa-arrow-up-from-bracket fa-bounce fa-2x" style="color: #db0016;"></i></a>
</p>
<!-- [Google Search Console] -->
<p>
<!-- <a> टैग में वह "Sitemap" पृष्ठ का URL सेट करें जिसे आपने Google Search Console में पंजीकृत किया है। -->
<a href="https://search.google.com/search-console?resource_id=your own URL" target="_blank" style="margin-left: 20px;text-decoration: none;"><i class="fa-solid fa-check" style="color: #005eff;"></i>&nbsp;[<strong>Google Search Console</strong>]&nbsp;&nbsp;&nbsp;<i class="fa-solid fa-up-right-from-square fa-beat fa-2x" style="color: blue"></i></a>
<div style="font-size: 13px; margin: 0 40px">* यह माना जाता है कि आपने पहले ही "Google Search Console" में पंजीकृत कर लिया है।</div>
</p>
<hr>
<!-- “Bing” साइटमैप की जोड़ / अद्यतन की पुष्टि करें -->
<p>
<!-- <a> टैग में उस Bing "Webmaster Tools" पृष्ठ का URL सेट करें जिसे आपने पंजीकृत किया है और जिसे आपने "$sitemapFilename" में सेट किया है। फ़ाइल का नाम "$sitemapFilename" में सेट किए गए फ़ाइल के नाम से मेल खाना चाहिए। -->
<a href="https://www.bing.com/webmasters/sitemaps?siteUrl=your own URL/&sitemap=your own URL/sitemap.xml" target="_blank" style="margin-left: 20px;text-decoration: none;"> <i class="fa-solid fa-check" style="color: #005eff;"></i>&nbsp;[<strong>Bing</strong>]&nbsp;साइटमैप की जोड़ / अद्यतन की पुष्टि करें&nbsp;&nbsp;<i class="fa-solid fa-arrow-up-from-bracket fa-bounce fa-2x" style="color: #db0016;"></i></a>
</p>
<!-- [Bing webmaster Tools] -->
<p>
<!-- <a> टैग में वह Bing "Webmaster Tools" पृष्ठ का URL सेट करें जिसे आपने पंजीकृत किया है। -->
<a href="https://www.bing.com/webmasters/home?siteUrl=your own URL" target="_blank" style="margin-left: 20px;text-decoration: none;">
<i class="fa-solid fa-check" style="color: #005eff;"></i>&nbsp;[<strong>Bing webmaster Tools</strong>]&nbsp;&nbsp;&nbsp;<i class="fa-solid fa-up-right-from-square fa-beat fa-2x" style="color: blue"></i></a>
<div style="font-size: 13px; margin: 0 40px">* यह माना जाता है कि आपने "Bing Webmaster Tools" में पंजीकृत कर लिया है या "Google Search Console" के साथ सहयोग पूरा कर लिया है।</div>
</p>
<hr>
<!-- साइट का नाम, आदि प्रदर्शित करता है। यदि आपको इसे प्रदर्शित करने की आवश्यकता नहीं है, तो कृपया इसे हटा दें। -->
<h3 align="center"><i class="fa-solid fa-house" style="color: crimson"></i>&nbsp;आपका साइट नाम आदि&nbsp;<i class="fa-solid fa-house" style="color: crimson"></i></h3>
<!-- आप इसे हटा सकते हैं -->
<h4 align="center"><a href="https://www.benricho.org/" target="_blank" style="text-decoration: none;"><i class="fa-solid fa-house" style="color: blue"></i>&nbsp;मिन्ना नो चिशिकी छोट्टो बेनरिचो&nbsp;<i class="fa-solid fa-house" style="color: blue"></i></h4>
</body>
</html>
फ़ाइल को ".php" एक्सटेंशन के साथ सहेजें।
 केवल PHP हिस्से के साथ ZIP फ़ाइल डाउनलोड करें   
आप केवल PHP सेक्शन के साथ ही प्रोग्राम को चला सकते हैं।
इससे हमारा XML साइटमैप जनरेटर के लिए PHP कोड का परिचय समाप्त होता है।
इस कोड का उपयोग करके, आप सर्च इंजन्स से प्रभावी क्रॉलिंग और इंडेक्सिंग हासिल कर सकते हैं, साइट के संचालन को सुगम बनाए रखते हुए।
जबकि स्वचालित अपडेट जैसी उन्नत सुविधाओं के साथ भुगतान किए गए कार्यक्रम हैं, यहां, आवश्यक कार्यक्षमता प्रदान करने पर ध्यान केंद्रित किया गया था।
इसमें शब्दों में गड़बड़ी हो सकती है क्योंकि यह जापानी संस्करण से अनुवाद है। हम कष्ट के लिए खेद प्रकट करते हैं, लेकिन यदि कोड में शब्दों में कोई गड़बड़ी है, तो कृपया उसे स्वयं सही करें या समायोजित करें।
इस कोड का उपयोग करने पर आपकी प्रतिक्रिया की क़दर की जाती है। कृपया ध्यान दें कि मैं सवालों का जवाब नहीं दे सकता हूँ।

おすすめサイト・関連サイト…

Last updated : 2024/06/29