If you create Views RSS the <link> element in the RSS channel incorrectly points to the location of the feed and not to the HTML source of the content (generally the home page of the site).
Here is the beginning of the current main RSS feed:
<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xml:base="http://www.teachenglishinasia.net" xmlns:dc="http://purl.org/dc/elements/1.1/">
<channel>
<title>Teach English in Asia | TEFL, ESL, ELT, TESOL, Japan, Korea, China, Asia</title>
<link>http://www.teachenglishinasia.net/allcontent/rss.xml</link>
This is a serious problem when pinging blog search engines because they then send visitors to your RSS feed and not your home page. I think it's a critical problem, but want to make sure it's not a bug on my end before marking it "critical".
You can view the problem here:
http://www.teachenglishinasia.net/allcontent/rss.xml
Comments
Comment #1
merlinofchaos commentedAre you sure this is a Views generated RSS feed? Typically, Views rss feeds include the word 'feed' at the end, not 'rss.xml'.
Comment #2
Z2222 commentedIt's a custom URL alias.
I aliased it because all URLs ending with "feed" are blocked with robots.txt.
Comment #3
Z2222 commentedIs anyone else having this problem? The RSS feed is telling blog search engines to send people to the wrong page on my site -- to the RSS feed instead of to an actual page.
Comment #4
catch//I aliased it because all URLs ending with "feed" are blocked with robots.txt.
If you want those to show, why not remove those statements from robots.txt?
Comment #5
merlinofchaos commentedCan you export the view? I've not heard of this happening lately (it used to, but that was fixed several versions ago).
Comment #6
xjmI can confirm this is happening in Views 1.5 (not sure whether that counts as "several versions ago"). In all my Views-generated RSS feeds, the
<link>tag for the channel contains the feed URL rather than a URL for the view. Here's the relevant code snippet inviews_rss.module$view->real_urlis set inviews.moduleI checked the source for version 1.6 and the critical bit of code in
views_rss.modulehas been corrected to remove the feed "argument" from the URL. So, the OP might want to double-check the version of views. I'm going to install 1.6 on a dev site when I get the chance and confirm whether it resolves the issue for me.Comment #7
Z2222 commentedI don't want any of the feeds that have URLs that end with
/feedto be crawled. I aliased the views feed so that it is not blocked by robots.txt.Comment #8
catchRather than an alias, you should probably use a page view with the rss style, with the actual url you want - especially if it's just for that one feed. Please give that a try and post back
Comment #9
merlinofchaos commentedI requested an export of the view.
Snippets of code from version 1.5 are of no value; there were 5 beta releases and a 1.6 release after that.
Comment #10
Z2222 commentedI'm not sure what you mean. That is the URL that I want (
/allcontent/rss.xml). My situation requires an alias for the feed.Comment #11
xjmThe point of the snippets from 1.5 was to illustrate for the OP why the version made a difference for this particular issue.
Guitarmiami,
The reason you are being asked to test your feed with the default
/feedURL is to determine whether the alias is causing your problem. Views expects feed URLs to have thatfeedargument in them. Consider this function in 1.6 that tries to correct views feed URLs:Since views is specifically looking for the
feedargument in the function above, it could be that your/allcontent/rss.xmlalias is preventing this function from doing its job. So, by disabling the alias as a troubleshooting step, you can determine whether the issue is internal to Views, or whether it is a result of the interaction between your alias and Views.Posting an export of your View will also help the module maintainers test your issue and, possibly, help resolve it.
Comment #12
whalebeach commentedI just found that we can manipulate the $view->feed_url value in Argument Handling Code field in view settings page.
This value will be set between link tag in the RSS feed which is generated by views_rss.module.
Comment #13
sunBased on merlinofchaos' comments, this issue won't fix, because no one attached an export of a 1.6 based view.
Based on xjm's comment, this issue should be fixed in 1.6.
Feel free to re-open this issue, but please update to 1.6 first and ensure that this issue still exists.
Comment #14
Anonymous (not verified) commentedAutomatically closed -- issue fixed for two weeks with no activity.