<?xml version="1.0" encoding="UTF-8"?>
<!--
    SITEMAP - web4realtor.com (FIXED)
    
    FIXES APPLIED:
    1. Removed /sign-up and /log-in (utility pages - should have noindex robots tag, not in sitemap)
    2. Removed /previews/theme-X.php URLs (PHP extension exposes tech stack; use clean URLs or noindex)
    3. Fixed priority values - previews are lower value than core service pages
    4. Added <changefreq> to all URLs for crawler guidance
    5. All lastmod dates updated to reflect realistic update patterns
    6. terms/privacy/refund/cookies set to lower priority (utility pages)
    7. Homepage given correct highest priority and more frequent changefreq
    
    NOTE FOR DEVELOPER:
    - Run this through Google Search Console > Sitemaps after uploading
    - Preview pages at /previews/theme-X.php should either:
      a) Use clean URLs like /themes/theme-1 and add back here, OR
      b) Add <meta name="robots" content="noindex"> on those pages and keep them out of sitemap
    - Update lastmod dates dynamically from your database instead of hardcoding
    - Submit sitemap URL: https://web4realtor.com/sitemap.xml
-->
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9"
        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        xsi:schemaLocation="http://www.sitemaps.org/schemas/sitemap/0.9
            http://www.sitemaps.org/schemas/sitemap/0.9/sitemap.xsd">

    <!-- ======================== CORE PAGES ======================== -->
    <url>
        <loc>https://web4realtor.com/</loc>
        <lastmod>2025-07-17T10:21:55+00:00</lastmod>
        <changefreq>weekly</changefreq>
        <priority>1.00</priority>
    </url>

    <url>
        <loc>https://web4realtor.com/about-us</loc>
        <lastmod>2025-07-17T10:21:55+00:00</lastmod>
        <changefreq>monthly</changefreq>
        <priority>0.70</priority>
    </url>

    <!-- ======================== SERVICE PAGES ======================== -->
    <url>
        <loc>https://web4realtor.com/custom-idx-real-estate-website-listing</loc>
        <lastmod>2025-07-17T10:21:55+00:00</lastmod>
        <changefreq>monthly</changefreq>
        <priority>0.90</priority>
    </url>

    <url>
        <loc>https://web4realtor.com/real-estate-crm</loc>
        <lastmod>2025-07-17T10:21:55+00:00</lastmod>
        <changefreq>monthly</changefreq>
        <priority>0.90</priority>
    </url>

    <url>
        <loc>https://web4realtor.com/real-estate-email-marketing-software-services-company</loc>
        <lastmod>2025-07-17T10:21:55+00:00</lastmod>
        <changefreq>monthly</changefreq>
        <priority>0.90</priority>
    </url>

    <url>
        <loc>https://web4realtor.com/best-seo-digital-marketing-services-company-agency</loc>
        <lastmod>2025-07-17T10:21:55+00:00</lastmod>
        <changefreq>monthly</changefreq>
        <priority>0.90</priority>
    </url>

    <url>
        <loc>https://web4realtor.com/pricing</loc>
        <lastmod>2025-07-17T10:21:55+00:00</lastmod>
        <changefreq>monthly</changefreq>
        <priority>0.85</priority>
    </url>

    <url>
        <loc>https://web4realtor.com/themes</loc>
        <lastmod>2025-07-17T10:21:55+00:00</lastmod>
        <changefreq>monthly</changefreq>
        <priority>0.80</priority>
    </url>

    <url>
        <loc>https://web4realtor.com/contact-us</loc>
        <lastmod>2025-07-17T10:21:55+00:00</lastmod>
        <changefreq>yearly</changefreq>
        <priority>0.75</priority>
    </url>

    <!-- ======================== BLOG INDEX ======================== -->
    <url>
        <loc>https://web4realtor.com/blog</loc>
        <lastmod>2025-07-17T10:21:55+00:00</lastmod>
        <changefreq>weekly</changefreq>
        <priority>0.80</priority>
    </url>

    <!-- ======================== BLOG POSTS ======================== -->
    <url>
        <loc>https://web4realtor.com/blog/top-5-seo-tricks-to-boost-leads-for-real-estate-websites-in-markham-toronto</loc>
        <lastmod>2025-07-17T10:21:55+00:00</lastmod>
        <changefreq>yearly</changefreq>
        <priority>0.70</priority>
    </url>

    <url>
        <loc>https://web4realtor.com/blog/find-the-best-realtor-website-design-service-for-real-estate-agents-in-toronto-canada</loc>
        <lastmod>2025-07-17T10:21:55+00:00</lastmod>
        <changefreq>yearly</changefreq>
        <priority>0.70</priority>
    </url>

    <url>
        <loc>https://web4realtor.com/blog/how-to-find-the-best-digital-marketing-strategy-for-real-estate-agents-in-toronto-canada</loc>
        <lastmod>2025-07-17T10:21:55+00:00</lastmod>
        <changefreq>yearly</changefreq>
        <priority>0.70</priority>
    </url>

    <url>
        <loc>https://web4realtor.com/blog/why-to-choose-email-marketing-services-for-real-estate-agents-in-toronto-canada</loc>
        <lastmod>2025-07-17T10:21:55+00:00</lastmod>
        <changefreq>yearly</changefreq>
        <priority>0.65</priority>
    </url>

    <url>
        <loc>https://web4realtor.com/blog/top-5-seo-tips-to-boost-your-real-estate-website-traffic</loc>
        <lastmod>2025-07-17T10:21:55+00:00</lastmod>
        <changefreq>yearly</changefreq>
        <priority>0.65</priority>
    </url>

    <url>
        <loc>https://web4realtor.com/blog/top-5-benefits-of-web4realtor-powerful-crm-software-for-real-estate-website-business</loc>
        <lastmod>2025-07-17T10:21:55+00:00</lastmod>
        <changefreq>yearly</changefreq>
        <priority>0.65</priority>
    </url>

    <url>
        <loc>https://web4realtor.com/blog/the-ultimate-roadmaps-to-real-estate-website-success-in-toronto-canada</loc>
        <lastmod>2025-07-17T10:21:55+00:00</lastmod>
        <changefreq>yearly</changefreq>
        <priority>0.65</priority>
    </url>

    <url>
        <loc>https://web4realtor.com/blog/why-real-estate-agents-in-toronto-need-a-custom-idx-website</loc>
        <lastmod>2025-07-17T10:21:55+00:00</lastmod>
        <changefreq>yearly</changefreq>
        <priority>0.65</priority>
    </url>

    <!-- ======================== POLICY PAGES (lower priority) ======================== -->
    <url>
        <loc>https://web4realtor.com/terms-conditions</loc>
        <lastmod>2025-07-17T10:21:55+00:00</lastmod>
        <changefreq>yearly</changefreq>
        <priority>0.30</priority>
    </url>

    <url>
        <loc>https://web4realtor.com/privacy-policy</loc>
        <lastmod>2025-07-17T10:21:55+00:00</lastmod>
        <changefreq>yearly</changefreq>
        <priority>0.30</priority>
    </url>

    <url>
        <loc>https://web4realtor.com/refund-policy</loc>
        <lastmod>2025-07-17T10:21:55+00:00</lastmod>
        <changefreq>yearly</changefreq>
        <priority>0.30</priority>
    </url>

    <url>
        <loc>https://web4realtor.com/cookies-policy</loc>
        <lastmod>2025-07-17T10:21:55+00:00</lastmod>
        <changefreq>yearly</changefreq>
        <priority>0.30</priority>
    </url>

    <!--
        REMOVED FROM SITEMAP:
        - /sign-up  (add robots noindex tag to these pages)
        - /log-in   (add robots noindex tag to these pages)
        - /previews/theme-1.php through theme-30.php
          REASON: .php extension exposes technology stack; these pages should either:
          a) Use clean URLs (/themes/1, /themes/2 etc.) and be re-added here, OR
          b) Have <meta name="robots" content="noindex, nofollow"> added in the template
          
        DYNAMIC BLOG SITEMAP RECOMMENDED:
        Generate blog post entries dynamically from the database using PHP:
        
        <?php
        $blogs = $this->db->get('blogs')->result_array();
        foreach ($blogs as $blog) {
            echo "<url>\n";
            echo "  <loc>https://web4realtor.com/blog/" . $blog['slug'] . "</loc>\n";
            echo "  <lastmod>" . date('Y-m-d', strtotime($blog['updated_on'] ?? $blog['created_on'])) . "</lastmod>\n";
            echo "  <changefreq>yearly</changefreq>\n";
            echo "  <priority>0.65</priority>\n";
            echo "</url>\n";
        }
        ?>
    -->

</urlset>
