Huhu, wie kann ich den o.g. Code-Schnipsel mit dem folgenden "verheiraten"?
URL von Quellenangabe leserlich machen
http://wpschnipsel.de/2012/08/08/url…serlich-machen/
Ziel soll sein, dass die ausgegebenen URLs nicht vollständig da stehen, sondern nur der Host (zB http://www.quelle.de) und beim draufklicken natürlich die richtige vollständige Adresse aufgerufen wird. Also alles so wie oben, nur das eben die Ausgabe mit "URL von Quellenangabe leserlich machen" verknüpft wird ...
So hatte ich das irgendwie "zusammengetackert", geht zwar …
function get_post_urls($content) {
if( preg_match_all("#((https?://|ftp://|www\.|[^\s:=]+@www\.).*?[a-z_\/0-9\-\#=&])(?=(\.|,|;|\?|\!)?(\"|'|«|»|\[|\s|\r|\n|$))#iS", $content, $url) ) {
$ausgabe = '<h4><u>Links zum Artikel</u></h4>';
$ausgabe .= '<ul>';
foreach ($url[0] as $url) {
$array = parse_url($url);
$host = $array[host];
$ausgabe .= '<li>'.'<a href=' . $url . '>'. $host . '</a>'.'</li>';
}
$ausgabe .= '<ul>';
return $content.$ausgabe;
} else {
return $content;
}
}
add_filter('the_content', 'get_post_urls');
Alles anzeigen
.... aber verursacht massenweise Fehlermeldungen im Debug-Modus:
Die Fehler sehen ca. so aus:
Zitat
Quellen: Notice: Use of undefined constant host – assumed ‘host’ in …
Use of undefined constant host – assumed ‘host’ ……
Notice: Use of Undefined index: host in ……
Notice: Use of undefined constant host – assumed ‘host’ in ….
Nachtrag:
OPTIONAL, wäre es noch schön wenn ich in dem o.g. Schnipsel die eigene URL ausschließen könnte. In den Artikel die ich schreibe werden oft auch Bilder und Links zur eigenen URL genutzt und die werden dann massenweise auch bei den "Quellen" mit aufgeführt.
Also quasi eine Funktion wie:
Wenn "$host" = "eigene URL" dann nicht anzeigen/auflisten
Sorry, bin leider nicht die "php-Leuchte", komme eher aus der Hardware-Ecke :/