Generally, it's considered bad form to have a rel=canonical
link pointing to completely different content, and search engines might decide to ignore such links.
As it happens, however, anecdotal evidence suggests that Google, at least, may indeed honor such links and dutifully transfer the old page's PageRank to the new page.
For example, the StackExchange software used on this site currently does just that: when a question gets more than 30 answers, they get split over several pages, with the later pages having a rel=canonical
link pointing to the first page. If you try to search Google for some string that only occurs in one of the answers on the second page, you'll only find mirror sites, since Google only indexes the "canonical" version of the page.
So you could indeed (ab)use rel=canonical
as you suggest. Some search engines might not honor it, but I'm not aware of any that would specifically punish you for it. (And, if they did, they'd end up punishing plenty of other sites too.) If you do this, I would, of course, also suggest adding a normal text link to the new page for visitors who come to the old page from other sites.
Alternatively, you could combine rel=canonical
with Vince Pettit's suggestion of moving the old content into an archive. Specifically, you could do something like this:
Original situation:
www.example.com/oldpage
: old, outdated content
www.example.com/newpage
: new, better content
After update:
www.example.com/archive/oldpage
: old, outdated content, possibly noindex
ed
www.example.com/newpage
: new, better content
www.example.com/oldpage
: same content as newpage
, with a rel=canonical
link pointing to newpage
and a normal text link pointing to archive/oldpage
Of course, I'd prefer to use 301 redirects instead, like this:
After update:
www.example.com/archive/oldpage
: old, outdated content, possibly noindex
ed
www.example.com/newpage
: new, better content, with a text link to archive/oldpage
www.example.com/oldpage
: HTTP 301 redirect to newpage
That way, your visitors will end up directly at the new page, but you can still have a notice there explaining where the old content has gone. You also avoid the need to duplicate any content, and get the full PageRank of the old page transferred to the new one.