If the adjective could come before OR after the noun, how can we differentiate is this sentence means "The men are knights" or "The knights are men"?
They mean the same thing. It doesn't matter which way around with 'to be' in almost any language, because if you switch up the word order it still carries the same meaning. However with almost any other verb you'd need the accusative case to specify which thing is the object of the sentence, although with 'to be' that is not required.
I thought the same, but "The knights are men" was not an accepted answer by Duolingo's system, so I got confused. That being the case, if I happen to stumble upon the same question again, I'll report a problem. Thanks for the explanation! :)
I see that both verbs are in nominative, so probably the word order indicates the subject and the object.
It reminds me of Polish a bit, where you could say: "Mężczyźni (Nom.) są rycerzami (Instr.)", but more common would be "Mężczyźni (Nom.) to rycerze (Nom.)". In the first case changing the word order wouldn't change sense (since the subject is declined), in the second it would.
I agree. This should be taken as a copular form substantially different from the use of issa/issi/etc. with a predicative adjective.