{"type":"rich","html":"<div style=\"width: 640; height: 426; font-family: sans-serif,arial,freesans;\" ><div id=\"shared_container_364185981\" class=\"shared_container\"><div id=\"shared_header_364185981\" class=\"shared_header\"><a href=\"https:\/\/voidofxulub.com\/channel\/warzazel\"><img src=\"https:\/\/voidofxulub.com\/photo\/profile\/s\/2\" alt=\"\ud835\udd9c\ud835\udd86\ud835\udd97\ud835\udd9f\ud835\udd86\ud835\udd9f\ud835\udd8a\ud835\udd91\u26e7 (Hubzilla)\" height=\"32\" width=\"32\" loading=\"lazy\" \/><\/a><span><a href=\"https:\/\/voidofxulub.com\/channel\/warzazel\">\ud835\udd9c\ud835\udd86\ud835\udd97\ud835\udd9f\ud835\udd86\ud835\udd9f\ud835\udd8a\ud835\udd91\u26e7 (Hubzilla)<\/a>  wrote the following  <a href=\"https:\/\/voidofxulub.com\/item\/06b3c53d-0fcb-44b3-ad7d-4e40d3d7f0c4\">post <\/a><span class=\"autotime\" title=\"2026-03-01T00:15:28+01:00\">Sun, 01 Mar 2026 00:15:28 +0100<\/span><\/span><\/div><div id=\"reshared-content-364185981\" class=\"reshared-content\"><strong>URL-Logger\/Beitragsaufrufcounter f\u00fcr Hubzilla<\/strong><br \/>Hab mir einen kleinen Logger gebastelt der protokolliert, welche Links aufgerufen werden. Da weder Cookie gesetzt wird noch IP oder sonstige Daten gespeichert werden ist das Dingen sogar DSGVO-konform \ud83d\ude01<br \/><br \/>Man speichert einfach folgenden Code in einen Block, f\u00fcgt den da ein wo geloggt werden soll, legt die Datei url_hits.txt an in die die Logs gespeichert werden, macht sie beschreibbar und fertig. Ich hab den Block in meine articles und cards gepackt. Kann man auch getrennt mit 2 Bl\u00f6cken oder mehr machen, einfach mehrere url_hits.txt mit verschiedenen Namen anlegen.<br \/><br \/><pre><code class=\"language-bash\">$logFile = &#039;url_hits.txt&#039;; \/\/ &lt;-- passe das an deinen Hubzilla\u2011Root an\n$url = $_SERVER[&#039;REQUEST_URI&#039;] ?? &#039;&#039;; \/\/ aktuelle URL, falls gesetzt\n\nif ($url !== &#039;&#039;) {\n\/\/ Versuche zu schreiben;\n$written = @file_put_contents($logFile, $url . PHP_EOL, FILE_APPEND);\nif ($written === false) {\n\/\/ Fehlermeldung landet im PHP\u2011Error\u2011Log, nicht im Browser.\nerror_log(&quot;URL\u2011Logger: Schreiben nach $logFile fehlgeschlagen (Berechtigungsproblem?)&quot;);\n}\n}<\/code><\/pre><br \/><br \/>So sieht dann die url_hits.txt aus:<br \/><br \/><a class=\"zrl\" href=\"https:\/\/voidofxulub.com\/photos\/warzazel\/image\/9ba83b2d-f3f4-4f59-8c04-505ece17e02e\" target=\"_blank\" rel=\"nofollow noopener\"><img class=\"zrl\" style=\"max-width: 100%;\" src=\"https:\/\/voidofxulub.com\/photo\/9ba83b2d-f3f4-4f59-8c04-505ece17e02e-2.png\" alt=\"Screenshot der Textdatei in der alle aufgerufenen Links stehen\" title=\"Screenshot der Textdatei in der alle aufgerufenen Links stehen\" loading=\"eager\" \/><\/a><br \/><br \/>Die Textdatei kann man dann mit PHP weiter verarbeiten oder anderweitig auswerten.<br \/><br \/>#<a class=\"zrl\" href=\"https:\/\/voidofxulub.com\/search?tag=Hubzilla\" target=\"_blank\" rel=\"nofollow noopener\">Hubzilla<\/a> #<a class=\"zrl\" href=\"https:\/\/voidofxulub.com\/search?tag=Tutorials\" target=\"_blank\" rel=\"nofollow noopener\">Tutorials<\/a> #<a class=\"zrl\" href=\"https:\/\/voidofxulub.com\/search?tag=Counter\" target=\"_blank\" rel=\"nofollow noopener\">Counter<\/a> #<a class=\"zrl\" href=\"https:\/\/voidofxulub.com\/search?tag=Script\" target=\"_blank\" rel=\"nofollow noopener\">Script<\/a> #<a class=\"zrl\" href=\"https:\/\/voidofxulub.com\/search?tag=PHP\" target=\"_blank\" rel=\"nofollow noopener\">PHP<\/a><\/div><\/div><br \/><\/div>","width":640,"height":426}