OrchardCMS / Orchard

Orchard is a free, open source, community-focused Content Management System built on the ASP.NET MVC platform.
https://orchardproject.net
BSD 3-Clause "New" or "Revised" License
2.37k stars 1.12k forks source link

Projection RSS should be disable-able #4172

Open orchardbot opened 10 years ago

orchardbot commented 10 years ago

@StanleyGoldman created: https://orchard.codeplex.com/workitem/20343

Projection RSS should be disable-able.

I even venture to argue that projection RSS should be disabled by default, as you might negatively impact your SEO without realizing.

orchardbot commented 10 years ago

@jtkech commented:

before any update, and for info for all others, currently I use in my robots.txt: Disallow: /rss

orchardbot commented 10 years ago

@bleroy commented:

Why? How is it impacting SEO?

orchardbot commented 10 years ago

@jtkech commented:

On my side, about one year ago, with an SEO tool under WebMatrix, the results was with many duplicate contents. That's why I have put this disallow

But I'm not used to use rss feeds. Maybe Google make the distinction between html and xml rss feed... I have to check

orchardbot commented 10 years ago

@StanleyGoldman commented:

Before I was better at Orchard...

My Site Url in Azure was the intial http://[guid].cloudapp.net that you get from a staging environment. I never noticed the impact, but I did notice that search results in Google for content to one of my sites at the url http://[guid].cloudapp.net. Google found the RSS and read it indexed it.

In another situation use of projections in combination with the default content display route (/Contents/Item/Display/*) led to urls in Google pointing to Content Items that were otherwise unlinked throughout the site.

orchardbot commented 10 years ago

@bleroy commented:

That's a completely different issue. What needs to be fixed is for the RSS to point to the right URL in this case. Also, if your projection points to an item, you can't say that it was unlinked otherwise, can you? Disabling RSS sounds like entirely the wrong thing to do, and modifying core to this end sounds worse.

orchardbot commented 10 years ago

urbanit commented:

I have to add, that RSS links should use baseurl instead of hosting url. If someone uses proxy, then the ip of the server shows up instead of domain.

orchardbot commented 10 years ago

@StanleyGoldman commented:

I'm getting the impression that maybe my statements weren't too clear, because I didn't expect to get this resistance (I'm sure my SEO comments didn't help). Otherwise, please excuse my ignorance, because I don't see what's wrong.

I don't want to disable the FeedManager/RSS. I just want the option to disable the RSS output that a Projection Page/Widget generates.

On Tptstr.com and several other sites I operate, the homepage, category page, and tag pages are generated by multiple projections, displaying the same query, taking 3 or 4 elements each, each with a sequential offset. That way my design team can reorganize the layout of the homepage simply as well as place "advertising widgets" in between. Without my pull request, I end up with several RSS Links on my page that I cannot prevent from appearing that all return the same content. If I had a user that wanted to use my RSS feed via some RSS Reader, Newsblur (or your personal favorite), would be confused.

<link href="/rss?projection=51" title="Homepage Projection Widget 1 to 4" type="application/rss+xml" rel="alternate">
<link href="/rss?projection=52" title="Homepage Projection Widget 5 to 8" type="application/rss+xml" rel="alternate">
<link href="/rss?projection=53" title="Homepage Projection Widget 9 to 11" type="application/rss+xml" rel="alternate">
<link href="/rss?projection=54" title="Homepage Projection Widget 12 to 15" type="application/rss+xml" rel="alternate">
<link href="/rss?projection=55" title="Homepage Projection Widget 16 to 18" type="application/rss+xml" rel="alternate">

Orchard.Projections use Feeds at two junctions, both of which need a simple boolean check to disable.

The first is when the shape Parts_ProjectionPart_List is called for. A "RSS Link" to the projection is registered with the FeedManager by id.

The second is in QueryFeedQuery when the FeedManager looks for the aforementioned "RSS Link by Projection Id". If it is found, it executes the projection and returns the results.

I wrapped up my changes in a pull request here: Issue 20343 Pull Request

After my changes I can now create an explicit Projection and hide it's html output via an alternate, as I still need the shape to display for the RSS Link to appear.

<link href="/rss?projection=4100" title="Tpstr RSS" type="application/rss+xml" rel="alternate">

And now when Newsblur looks at Tpstr.com, it finds only the RSS feed i intend for it to find.

orchardbot commented 10 years ago

@StanleyGoldman commented:

Regarding linking items that were otherwise unlinked.

This problem was a different scenario, where Projections were being used to display supplemental data.

I can definitely say that the content items in the projection were otherwise unlinked, because I changed the projections template to make sure of that.

Much to my surprise when Google had links to my otherwise unlinked content items.

orchardbot commented 10 years ago

@bleroy commented:

Today's discussion at the weekly meeting clarified this:

orchardbot commented 10 years ago

@agriffard commented:

Fixed in changeset 7b19ce6675ea02610c70dfe8f54d2627cbaa9c6a

orchardbot commented 10 years ago

@agriffard commented:

pull request to reactive

orchardbot commented 10 years ago

@StanleyGoldman commented:

agriffard, what was wrong with the pull request

orchardbot commented 10 years ago

@agriffard commented:

I had tried to integrate it but badly pulled it so Seb remove the changes. Reopen if you can because it closed it when I made it applied.

orchardbot commented 10 years ago

@StanleyGoldman commented:

I re-submitted the Pull Request to 1.x, although I am using it in 1.7.x, I'm not sure where it is wanted

orchardbot commented 10 years ago

@Piedone commented:

Isn't this done now?

orchardbot commented 10 years ago

@sebastienros commented:

not yet pulled