"The news/article/post says ..."
Is it correct to say
(a) Der Spiegel sagt, dass ...
(b) Der Artikel sagt, dass ...
(c) Die (Facebook-)Post sagt, dass ...
or should the verb "sagen" not be used here?
The most common way to talk about pieces of writing is using the verb "stehen"
In dem Artikel steht, dass...
Auf Seite 3 steht, dass...
Ich habe einen Flyer und da steht, dass...
In my opinion, it is not inherently wrong to use "sagen" as in your examples, however, it sounds a bit strange to me since "sagen" is commonly used in conjunction with real persons:
Der Autor des Artikels sagt, dass
Der Spiegel-Autor Max Mustermann sagt, dass
Nevertheless, you can sometimes see "Die Bild sagt" in headlines, but usually not in texts of higher level.
In contrast, the verbs "aussagen" and "besagen"* do work with things. Note that both have slightly different meanings though!
(b) Der Artikel sagt aus, dass
(b) The article declares/states that(c) Der (Facebook-)Post besagt, dass
(c) The (facebook) post indicates that
Note: it is der Post (with an English pronunciation) if meant as a contribution or a post on a website.
I'd like to suggest a more formal alternative
Laut X
literally according to X. You don't have to use it every time but it's handy to mix things up. Laut is usually used in reference to a scientist or study or something similar.