Sorry for the delay. The host is 2Eleven (I think probably because their customer support only works during those hours, it took so long for them to reply…)
The server settings seem to have been reset because now the RSS renders once again, but still with the mp3 tag completely blank:
<item>
<title>Podcast Extra: Madonna’s New Album</title>
<link>http://www.mysite.com/index.php/site/comments/podcast_music_review_madonnas_hard_candy/</link>
<guid>http://www.mysite.com/index.php/site/comments/podcast_music_review_madonnas_hard_candy/#When:00:18:00Z</guid>
<description>Lorem ipsum dolor sit</description>
<dc:subject>Podcast Extra: Madonna’s New Album</dc:subject>
<dc:date>2008-04-29T00:18:00-08:00</dc:date>
</item>
OK- let me shift to plugins- and I’ll tweak the title to note it’s an issue with the enclosure plugin. Might also check if there’s an updated version of it.
When I get a chance, I’ll download the plugin and take a closer look at it. But I’d drop the author a heads up- they’ll know the code best.
Any resolution to this?
I am having the same problem with the blank line where the enclosure tag should be. I am NOT getting any curl messages. We have our own virtual server, but I’m not a sysadmin, anyone know how to test to see if safe_mode is on?
I have printed the file uri in a test element, to make sure it’s working. It’s not turning into a link and the formatting is set to none, so it’s not enclosed in tags either.
Got mine working, I’m afraid I can’t remember how any longer since I’ve moved on to other issues but I did leave some notes in my change log…maybe this will help?
Per this thread I turned off safe_mode and set open_basedir to none in my vhosts.conf file. (We have dedicated virtual server on MediaTemple). Then I remember turning on error logging and testing outside EE quite a bit to make sure CURL was working outside of EE. Basically, keep googling error codes till you get this working. Here’s the code I used to test that…perhaps of use to someone:
<?php
if (function_exists('curl_init')) // but if it is...
{ //
print ('We have curl_init!
'); // let's use it!
}
if (function_exists('curl_setopt')) // but if it is...
{ //
print ('We have curl_setopt!
'); // let's use it!
}
if (function_exists('curl_exec')) // but if it is...
{ //
print ('We have curl_exec!
'); // let's use it!
}
if (function_exists('curl_getinfo')) // but if it is...
{ //
print ('We have curl_getinfo!
'); // let's use it!
}
if (function_exists('is_resource')) // but if it is...
{ //
print ('We have is_resource!
'); // let's use it!
}
$ch = @curl_init(); // let's use it!
//example url to mp4 file...use your own!
$href = 'http://zonaemanuel.mymovi.es/-transformers.mp4';
print ('URI:' . $href . '</br>');
if (is_resource($ch)) // we have cURL!
{
curl_setopt($ch, CURLOPT_URL, $href);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
curl_setopt($ch, CURLOPT_NOBODY, true);
curl_exec($ch);
$http_code = curl_getinfo($ch, CURLINFO_HTTP_CODE);
$content_type = curl_getinfo($ch, CURLINFO_CONTENT_TYPE);
$content_length = curl_getinfo($ch, CURLINFO_CONTENT_LENGTH_DOWNLOAD);
print ('http_code: '.$http_code.'
');
print ('content_type: '.$content_type.'
');
print ('content_length: '.$content_length.'
');
}
?>
After that was working, I noted:
Used AddType directive in .htaccess file to remedy EE’s mangling of them.
And then added the following to the beginning of my root .htaccess file:
AddType video/mp4 mp4
Agreed. We sometimes have to add MIME Types to htaccess or the httpd.conf file depending on where a site is hosted. But that’s only true for locally served media. The server serving the media is the one that needs the correct MIME Type declarations.
This plugin was working prior to upgrading to EE 1.6.7. Now it returns nadda.
Guess I have to do as you did and see what it’s doing both inside and outside EE.
Thanks again for your input.
Here’s the exciting part…let me know if you need the whole thing:
{exp:weblog:entries weblog="video" limit="10" rdf="off" dynamic_start="on" rdf="off" disable="member_data|trackbacks" status="Featured|Published"}{if itunes_url} <item>
<itunes:block>no</itunes:block>
<title>{exp:xml_encode protect_entities="yes"}{title}{/exp:xml_encode}</title>
<itunes:author>Mithun</itunes:author>
<itunes:subtitle>{exp:xml_encode}{video_subtitle}{/exp:xml_encode}</itunes:subtitle>
<itunes:summary>{exp:xml_encode}{video_summary}{/exp:xml_encode}</itunes:summary>
{exp:feed_enclosures type="rss" parse_list="y" remote="y"}{itunes_url}{/exp:feed_enclosures} <guid>{title_permalink="news/video"}#{entry_date format="{DATE_ATOM}"}</guid>
{gmt_entry_date format="%r"}</pubDate>
<itunes:duration>{video_duration}</itunes:duration>
<itunes:keywords>{exp:xml_encode}{video_keywords}{/exp:xml_encode}</itunes:keywords>
</item>{/if}{/exp:weblog:entries}
Mahalo (thanks) Mahalie (I recognize you from Brandon Kelly’s Get Satisfaction 😊
Actually, after more testing with local and other remote media files, it appears to be LibSyn. The client has setup some kind of dynamic pre-roll that causes their server to take over 30 seconds to reply after several redirects. This Feed Enclosure plugin simply ignores the non-answer from the server.
Sorry to request so much info from you and take up so much of your time today. But perhaps this will help others with similar issues…
Packet Tide owns and develops ExpressionEngine. © Packet Tide, All Rights Reserved.