| Project: | FileField Podcaster |
| Version: | 6.x-2.x-dev |
| Component: | Code |
| Category: | feature request |
| Priority: | normal |
| Assigned: | Unassigned |
| Status: | needs review |
Issue Summary
The <link> in the channel section of the feed goes directly to the feed URL. It would be better if this went to either the site URL or to an associated Page display, or something other than pointing back to the feed URL.
I looked at the code to ffpc.module and found this around line 38. The comment isn't clear about which path it's trying to find, but it implies that the global $base_url should be the fallback.
It would be sweet if the URL was actually user-configurable. I'm using this in a case where I'd like to direct users to an arbitrary page node, as there is no Page display associated with my podcast.
(FWIW, I did try creating a Page display and attaching this feed to it, but that didn't change anything.)
Thanks,
Micah
Comments
#1
This is an important feature as iTunes uses the <link> property of the channel feed to populate their website link for the podcast. In the current program users of iTunes are sent to the RSS feed when they try to get to your website.
I patched the Podcast Feed Style to include a "Advertised Link" field. When it's empty, the code behaves as before. When it's included, the contents are included in <link>.
I'm attaching the patch but 1) I've never used CVS before 2) I've never contributed to a project before and 3) I'm not particularly good at programming. I hope someone will help me here specifically:
I've overridden the options_form function from views_plugin_style_rss.inc, but I'm not certain how to simply add a form element and so I copy-pasted the whole function from the views plugin. I'm fairly certain that's not the way to go--it'll surely break when someone modifies views 2. Please help me make this work the way it should.
#2
#3
#4
I talked to mfer about this last Friday. This is basically a Views issue, not really part of FFPC issue, because Views generates the info used by this link.
It's possible to apply a workaround for this in the theme layer, as part of template.php:
<?phpfunction phptemplate_preprocess_feed(&$vars, $hook) {
$vars['channel'] = str_replace('http://example.com/path/to/feed/0', 'http://example.com/', $vars['channel']);
}
?>