The key is using boxes, in this case \parbox
es (which allow for line breaks, as needed on the right) and putting them on the very left and right with \hfill
in between.
Besides that, I wouldn't try to fix up \maketitle
if I don't absolutely have to, but instead just create the title from scratch. To access the values of \author
and \title
, we can use the titling
package.
The section titles can be done with a quick fix, too.
Here are a basic version and one that's closer to your image:
\documentclass{article}
\usepackage{titling}
\author{Author}
\title{Class Plan}
\date{\today}
\usepackage{xcolor}
\definecolor{titlebg}{RGB}{186,48,39}
\usepackage{lmodern}
\usepackage[T1]{fontenc}
\usepackage{blindtext}
\renewcommand{\thesection}{Week \arabic{section}\hspace{1em}|}
\begin{document}
Basic version: \bigskip
\noindent\parbox{\linewidth}{%
\parbox{.4\linewidth}{\fontsize{24}{28}\selectfont\thetitle}\hfill%
\parbox{.4\linewidth}{\fontsize{12}{14}\selectfont\raggedleft\today\\\theauthor%
}}
\bigskip Fancier version: \bigskip
\noindent\colorbox{titlebg}{%
\parbox{\dimexpr\linewidth-2\fboxsep}{\color{white}%
\parbox{.4\linewidth}{\fontsize{24}{28}\selectfont\sffamily\bfseries\thetitle}\hfill%
\parbox{.4\linewidth}{\fontsize{12}{14}\selectfont\raggedleft\thedate\\\theauthor%
}}}
\section{Less is More}
\blindtext
\end{document}

Edit:
As egreg said, just redefine \maketitle
as a whole and put this in a .sty file:
\renewcommand*{\maketitle}{\noindent\colorbox{titlebg}{%
\parbox{\dimexpr\linewidth-2\fboxsep}{\color{white}%
\parbox{.4\linewidth}{\fontsize{24}{28}\selectfont\sffamily\bfseries\thetitle}\hfill%
\parbox{.4\linewidth}{\fontsize{12}{14}\selectfont\raggedleft\today\\\theauthor%
}}}}
I'm not familiar with emacs at all, so I can't help you with that, if the package solution is not what you're looking for. In that case, I would probably recommend asking a separate question about what you're trying to do because it seems to be independent from the styling of the title (obeying our one-issue-per-question guideline).
Some resources on writing a package (= .sty file):