• Jetzt anmelden. Es dauert nur 2 Minuten und ist kostenlos!

Anpassung dieses PHP-Codex

LeRocco

Neues Mitglied
Hallo!

Ich lese mit SimplePie ein RSS Feed aus und lasse es mir in meinem Wordpressblod wieder geben.
Leider spielt er die darin enthaltene mp4.Datei nicht ab, sondern zeigt sie zum Dowload an:

Börsen TV - Boersencoach.com

Hier habe ich den Code, aber wo muss ich was abändern damit die mp4.-Datei abgespielt wird?


PHP:
<?php
/* Plugin Name:Simple Pie Rss Reader
 * Plugin URI: http://davidmregister.com/simplepie-rss-reader/
 * Description: Using the power of Simple Pie to parse RSS feeds ex. [parse_feed feed="http://example.com/feed" num="8"(optional) name="Example Title"(optional) url="http://example.com/"(optional) ]
 * Author: David Register
 * Version: 1.1
 * Author URI: http://www.davidmregister.com/
 */

include(dirname(__FILE__).'/simplepie.inc');

function get_feed($atts, $content = null){
    
    extract(shortcode_atts(array(
        "feed" => 'http://',
        "num" => '1',
        "name" => '',
        "url" => 'http://',
    ), $atts));
    
    // Parse it
    $feed = new SimplePie();
    
    $feed->set_feed_url($atts['feed']);
    $feed->enable_cache(true);
    $feed->set_cache_location(dirname(__FILE__) . '/cache');
    $feed->set_cache_duration(3600);
    $feed->init();
    
    $feed->handle_content_type();
    ?>
    
    <div id="sp_results">
        <?php if ($feed->data): ?>
            <?php $items = $feed->get_items(0,$atts['num']); ?>
            <h2><a href="<?php echo (($atts['url'])?$atts['url']:$feed->get_permalink()); ?>"><?php echo $feed->get_title(); ?></a></h2>
            <?php foreach($items as $item): ?>
                <div class="chunk" style="padding:0 5px;">
                    <h4><a href="<?php echo $item->get_permalink(); ?>" target="_blank"><?php echo $item->get_title(); ?></a> <?php echo $item->get_date('j M Y'); ?></h4>
                    <?php echo $item->get_content(); ?>
                    <?php
                    if ($enclosure = $item->get_enclosure(0))
                        echo '<p><a href="' . $enclosure->get_link() . '" class="download" target="_blank"><img src="./for_the_demo/mini_podcast.png" alt="Podcast" title="Download the Podcast" border="0" /></a></p>';
                    ?>
                </div>
            <?php endforeach; ?>
        <?php endif; ?>
    </div>

<?php }


Vielen Dank für eure Hilfe!!!
 
Du musst nur die Variable $enclosure->get_link() in einem object-Element einbinden. Also vermutlich (!) statt

PHP:
echo '<p><a href="' . $enclosure->get_link() . '" class="download" target="_blank"><img src="./for_the_demo/mini_podcast.png" alt="Podcast" title="Download the Podcast" border="0" /></a></p>';

so etwas:

PHP:
?><object data="<?php echo $enclosure->get_link(); ?>" type="image/svg+xml" width="200" height="200">
    <param name="src" value="<?php echo $enclosure->get_link(); ?>">
  </object><?php

Ggfs. müsstest Du auch noch die umliegende Ausgabe zu dem Anpassen was Du sehen möchtest (außer der mp4-Datei).

Beachte: nicht jeder Nutzer hat auch ein Plugin zum Abspielen einer MP4 in seinem Browser. Diejenigen würden bei dieser Einbindung eine nervige Pluginmeldung bekommen. Ein Link wie in deinem jetzigen Code sollte man immer als Alternative noch anbieten.
 
Mhhhh. Irgendwie zeigt er mir ein Fehler an.

Soll ich:

PHP:
echo '<p><a href="' . $enclosure->get_link() . '" class="download" target="_blank"><img src="./for_the_demo/mini_podcast.png" alt="Podcast" title="Download the Podcast" border="0" /></a></p>';

komplett durch:

PHP:
?><object data="&lt;?php echo $enclosure-&gt;get_link(); ?&gt;" type="image/svg+xml" width="200" height="200">
    <param name="src" value="&lt;?php echo $enclosure-&gt;get_link(); ?&gt;">
  </object><?php

ersetzen? Oder wie müsste ich das machen?

Es soll einfach nur die Datei abgespielt werden. Kein Text, nur die Datei... :oops:

Grüße.. ( muss mir kommende Woche mal ein Basisbuch für php besorgen, so geht das ja nicht weiter mit mir!)
 
Schau dir bitte mal genau an was Du hier geschrieben hast was Du einfügen möchtest und was ich geschrieben hatte. Da sind einige wichtige Zeichen falsch.
 
Meinte natürlich deinen Code. Da lag ein Fehler beim kopieren vor. Aber nach deinem Ansatz soll ich den oberen Code komplett löschen und dafür den unteren einbauen. Habe ich das richtig verstanden?

Danke für die Geduld!
 
In der HTML Seite gebe ich aktuell nur folgenden Code ein, event. benötige ich hier noch eine Apassung?


[parse_feed feed="http://www.n-tv.de/podcast/wirtschaft.rss" num="1"]
 
Also ich glaube ich hab e jetzt den Fehler gefunden.

Über SimplePie ziehe ich mir die gewünschte mp4 Datei schon auf meine Seite, jetzt brauche ich nur noch einen Player für meinen Wordpressblog.

Ich ziehe mir die Infos/Mp4 auf die HTML Seite mit diesem Shortcode:

[parse_feed feed="http://www.n-tv.de/podcast/wirtschaft.rss" num="1"]

Jetzt muss ich noch einen Player integrieren, denn ohne kann die Datei ja nicht abgespielt werden...

Habe mir jetzt diesen installiert:

WordPress › MediaElement.js - HTML5 Video & Audio Player « WordPress Plugins


Frage ist jetz: WIE BEKOMME ICH DIE ZUSAMMEN??? :oops:
 
Zurück
Oben