docs: def add_post(self, title=None, content=None, old_url=None, pub_date=None,
                   tags=None, categories=None, comments=None):
          """
          Adds a post to the post list for processing.
  
          - ``title`` and ``content`` are strings for the post.
          - ``old_url`` is a string that a redirect will be created for.
          - ``pub_date`` is assumed to be a ``datetime`` object.
          - ``tags`` and ``categories`` are sequences of strings.
          - ``comments`` is a sequence of dicts - each dict should be the
            return value of ``add_comment``.
          """
          if not title:
              title = strip_tags(content).split(". ")[0]
          title = decode_entities(title)
          if categories is None:
              categories = []
          if tags is None:
              tags = []
          if comments is None:
              comments = []
          self.posts.append({
              "title": force_text(title),
              "publish_date": pub_date,
              "content": force_text(content),
              "categories": categories,
              "tags": tags,
              "comments": comments,
              "old_url": old_url,
          })
          return self.posts[-1]