code: def get_entry_url(entry, blog_page, root_page):
      
      if root_page == blog_page:
          return reverse('entry_page_serve', kwargs={
              'year': entry.date.strftime('%Y'),
              'month': entry.date.strftime('%m'),
              'day': entry.date.strftime('%d'),
              'slug': entry.slug
          })
      else:
          # The method get_url_parts provides a tuple with a custom URL routing
          # scheme. In the last position it finds the subdomain of the blog, which
          # it is used to construct the entry url.
          # Using the stripped subdomain it allows Puput to generate the urls for
          # every sitemap level
          blog_path = strip_prefix_and_ending_slash(blog_page.specific.last_url_part)
          return reverse('entry_page_serve_slug', kwargs={
              'blog_path': blog_path,
              'year': entry.date.strftime('%Y'),
              'month': entry.date.strftime('%m'),
              'day': entry.date.strftime('%d'),
              'slug': entry.slug
          })
docs: Get the entry url given and entry page a blog page instances.
      It will use an url or another depending if blog_page is the root page.