I think this might be the easiest (if you have enough quotations):
Put all the quotations in an unpublished MODx document (one for each day of the year), each prefixed by a tag like:
#QUOTE# One day’s quotation here.
#AUTHOR#Name here
#QUOTE# Another day’s quotation here
#AUTHOR#Another name here
etc.
Then use a snippet to get the document content, "explode" it into an array and then pick today’s quotation based on the day of the year.
The snippet call would be:
[[QuoteOfTheDay? &docID=`33`]]
(replacing 33 with the actual document id of the quotations content document)
The QuoteOfTheDay snippet would look something like this:
global $modx;
$doc = $modx->getDocument((string)$docID, '*', 0); // note: this only looks for unpublished docs
$docString = $doc['content'];
$docArray = explode("#QUOTE#",$docString);
$day=intval(date("z"));
$quote = $docArray[$day];
$parts=explode("#AUTHOR#",$quote);
$output="<h2>Quote of the day</h2> ";
$output .= '<div class="quotation">';
$output .= $parts[0];
$output .= '</div>';
$output .= '<div class="author">';
$output .= $parts[1];
$output .= '</div>';
return $output;
Warning: This is off the top of my head and it’s 3:30 am here.
Bob