def _update_post_node(node, options, arguments):
    """
    Extract metadata from options and populate a post node.
    """
    node["date"] = arguments[0] if arguments else None
    node["tags"] = options.get("tags", [])
    node["author"] = options.get("author", [])
    node["category"] = options.get("category", [])
    node["location"] = options.get("location", [])
    node["language"] = options.get("language", [])
    node["redirect"] = options.get("redirect", [])
    node["title"] = options.get("title", None)
    node["image"] = options.get("image", None)
    node["excerpt"] = options.get("excerpt", None)
    node["exclude"] = "exclude" in options
    node["nocomments"] = "nocomments" in options
    return node