Diese Woche am beliebtesten

Vertiefendes Material

Backlinks prüfen mit PHP

Dieser Dreamcodes Codeschnipsel prüft, ob bestimmte Backlinks auf einer Webseite existieren. Es ist eine zuverlässige Lösung, die mehrere Links gleichzeitig überprüft und die Ergebnisse übersichtlich in einer farblich markierten HTML-Tabelle darstellt. So siehst du auf einen Blick, welche Links gefunden wurden und welche nicht. Ideal für SEO Checks, Link-Audits oder zur Kontrolle eigener Webprojekte. 😉

<?php
function renderBackLinkCheckTable(string $remoteUrl, array $linksToCheck): string {
    $results = [];
    foreach ($linksToCheck as $link) {
        $results[$link] = false;
    }
    $ch = curl_init($remoteUrl);
    curl_setopt_array($ch, [
        CURLOPT_RETURNTRANSFER => true,
        CURLOPT_FOLLOWLOCATION => true,
        CURLOPT_TIMEOUT => 10,
        CURLOPT_USERAGENT => 'Mozilla/5.0 (compatible; BacklinkChecker/1.0)',
    ]);
    $html = curl_exec($ch);
    $error = curl_errno($ch);
    curl_close($ch);
    if ($error || !$html) {
        return "<p>Seite konnte nicht geladen werden.</p>";
    }
    libxml_use_internal_errors(true);
    $dom = new DOMDocument();
    if (!$dom->loadHTML(mb_convert_encoding($html, 'HTML-ENTITIES', 'UTF-8'))) {
        return "<p>HTML konnte nicht geparst werden.</p>";
    }
    $xpath = new DOMXPath($dom);
    $anchorTags = $xpath->query("//a[@href]");
    foreach ($anchorTags as $anchor) {
        $href = rtrim($anchor->getAttribute('href'), '/');
        foreach ($linksToCheck as $link) {
            if ($href === rtrim($link, '/')) {
                $results[$link] = true;
            }
        }
    }
    $htmlOutput = '<table style="border-collapse: collapse; width: 100%;">';
    $htmlOutput .= '<tr><th style="border:1px solid #ccc;padding:8px;text-align:left;">Link</th>';
    $htmlOutput .= '<th style="border:1px solid #ccc;padding:8px;text-align:left;">Status</th></tr>';

    foreach ($results as $link => $found) {
        $color = $found ? 'green' : 'red';
        $statusText = $found ? 'Gefunden ✅' : 'Nicht gefunden ❌';
        $htmlOutput .= '<tr>';
        $htmlOutput .= '<td style="border:1px solid #ccc;padding:8px;">' . htmlspecialchars($link) . '</td>';
        $htmlOutput .= '<td style="border:1px solid #ccc;padding:8px;color:' . $color . ';">' . $statusText . '</td>';
        $htmlOutput .= '</tr>';
    }

    $htmlOutput .= '</table>';
    return $htmlOutput;
}
$remotePage = "http://www.XYZ.com";
$links = [
    "http://www.XYZ.com",
    "http://www.example.com",
    "http://www.test.com/unterseite1"
];
echo renderBackLinkCheckTable($remotePage, $links);
?>
Dreamcodes Redaktion
Dreamcodes Redaktion
Jeder Inhalt auf Dreamcodes entsteht mit einem klaren Anspruch: geprüfte Praxis statt schneller Theorie. Was hier veröffentlicht wird, basiert auf Best Practices, echten Projekterfahrungen und technischem Verständnis, das über das Offensichtliche hinausgeht. Unser Ziel ist ein Fundament, auf dem du aufbauen kannst, nicht eines, das beim ersten produktiven Einsatz bricht. Wie du die Inhalte integrierst, absicherst und in deinen Kontext überträgst, liegt bei dir. Die fachliche Grundlage liefern wir, die Verantwortung für den Einsatz bleibt deine.
Vorheriges Tutorial
Nächstes Tutorial

Vielleicht einen Blick WERT?