There's two issues I'm seeing that are causing iTunes Music Store to reject FFPC feeds.

  1. The iTunes:Subtitle tag has a limit of 255 characters. FFPC is not putting any limit on character length and therefore is not validating when exceeding that character limit.
  2. The iTunes:Summary should not contain any HTML (which will frequenly happen if a node contains any html in the body). This HTML should be stripped out when outputting the feed.
CommentFileSizeAuthor
#1 ffpc_xmloutput.patch1.83 KBRob_Feature

Comments

Rob_Feature’s picture

Status: Active » Needs review
StatusFileSize
new1.83 KB

Wow. Ok, someone like me should probably not be writing patches. But I figured I'd give it a whirl. This, at least, outputs a valid feed. But you should note the itunes:email section doesn't seem to validate correctly when it's un-commented. Validator says it's not a valid tag even though it appears to output correctly.

I'd love to get some feedback on, this, my first patch...

micahw156’s picture

Rob,

I haven't really looked at ffpc yet, but may need it soon, so I'd like to help get it working. My comments are just on what I see happening in the patch, not actual experience with the module.

Unless the site_mail section gets fixed, I'd take it out for now and create it as a new issue. No sense in adding code that's commented out.

I'm not sure I'm comfortable about simply hard-coding a length from $node->body to populate itunes:subtitle. If subtitle is an optional tag (and I believe it is) then I think it would be better served by its own (optional) text field, but from what I can see about how ffpc works, that wouldn't be a simple thing to do. Maybe I'll look into that some time next week and open a new issue on it if I come up with any reasonably sane ideas. In the meantime, maybe use teaser if it's less than 255 characters?

Also, should strip_tags be used on the subtitle data, or is it safe to leave those in there?

I'm guessing that the only part that really needs to be here to make the feed validate is adding the node URL into the format_rss_item call. That part looks like it should work fine.

Micah

Rob_Feature’s picture

A couple things @micah:

  1. The developer asked that the e-mail stuff remain in the patch and commented out so he could see if he could get it working...so I left it in
  2. The issue before was the fact that itunes:subtitle (in the apple specs) must never be longer than 255 characters. We want that field to be included, but we don't ever want it to go over 255. That's why we're truncating it at 255. Make sense?
  3. The strip_tags does need to be included (unless there's a better way to make sure no html is in the output). Another Apple spec thing...no html is allowed in the itunes:summary so we're, again, taking the body and using it (without any html)

Make sense? Follow up if I was missing what you were getting at with this stuff.

mfer’s picture

Status: Needs review » Fixed

@Rob_Feature I'm impressed with your first patch. It wasn't too shabby.

Due to the major overhaul that I wrote I wasn't able to use the patch but I used the same concepts in the places I moved the functionality to with one exception. I moved the email from the item to the overall feed which is where the spec called for it.

Anonymous’s picture

Status: Fixed » Closed (fixed)

Automatically closed -- issue fixed for two weeks with no activity.