2016-08-07 9 views
1

Mit Blick auf meinen DOM-Code hinzufügen schließen Targeting das letzte Bild meiner Wordpress Beiträgeimmer letztes Bild von Post

EDIT - die Blockquote des Inhalts des Code Ich habe nur Ziele/auszieht. Ich möchte in der Lage sein, das letzte Bild in meinem Wordpress-Beitrag als Hintergrund für bestimmte div zu verwenden.

html

<?php 
    $content = get_the_content(); 
    $content = wpautop($content); 

    $doc = new DOMDocument(); 
    $doc->loadHTML(get_the_content(), LIBXML_HTML_NOIMPLIED | LIBXML_HTML_NODEFDTD); 

    $xpath = new DOMXPath($doc); 

    foreach ($xpath->query('//blockquote') as $node) { 
     $node->parentNode->removeChild($node); 
    } 

    // My attempt 
    foreach ($xpath->query('//img') as $node) { 
     $node->parentNode->removeChild($node); 
    } 

    $content = $doc->saveHTML($doc);    
?> 

Mein Versuch ist es gelungen, die Bilder überhaupt nicht zielen auf die letzte zu entfernen.

+0

Gut für Sie! ___ Aber gibt es hier irgendwo eine Frage? ___ Bitte lies [Was kann ich fragen?] (Http://stackoverflow.com/help/on-topic) und [Wie stelle ich eine gute Frage?] (Http: // stackoverflow.com/help/how-to-ask) Und [die perfekte Frage] (http://codeblog.jonskeet.uk/2010/08/29/writing-the-perfect-question/) Und wie zu erstellen Ein [minimales, vollständiges und überprüfbares Beispiel] (http://stackoverflow.com/help/mcve) – RiggsFolly

+0

Entschuldigung, ich schätze, mein Intro-Satz war spezifisch genug. Ich möchte diesen Code hinzufügen, um das letzte Bild des Beitrags mit einzubeziehen. Es zielt derzeit und zieht nur die Blockquote heraus – user3550879

+0

Oh gerade verstehe ich. ___So mach weiter und tue genau das___. Wenn du es einmal getan hast, beweist es zu viel für dich, komm und zeig uns, was du getan hast, und wir werden mehr als bereit sein zu helfen. Aber jetzt ist SO ** kein kostenloser Coding-Service ** Sie müssen auch zeigen, dass Sie sich bemüht haben, Ihr eigenes Problem zu lösen. – RiggsFolly

Antwort

0

Versuchen preg_match_all():

// Make sure shortcodes are fetched. 
$content = apply_filters('the_content', $content); 

preg_match_all('/<img([^>]+)>/', $content, $images); 

$last_image = array_pop($images[0]); 
+0

Ursprünglich ging ich diesen Weg und fand ein funktionierendes Beispiel. Aber mir wurde schon unzählige Male gesagt, dass ich mit einem DOM-Parser so etwas machen soll. – user3550879

+0

Gibt es einen Grund, einen über den anderen zu benutzen? – user3550879