Autor Zpráva
koumal
Profil *
K této myšlence mě inspiroval příspěvek od blizzboz (nepřímý odkaz - díky, sekce Javascript):
I know where you've been
a
Test zde

Jestli jste někdy byly např. na stránkách root.cz nebo ubuntu.cz, apod. tak víte, že tam je systém který dokáže rozpoznat když přijde nový příspěvek do diskuse. Já nevím jakým způsobem se tohle řeší, ale tuším že asi přes PHP a databázi. No jestli jo, tak asi se ukládají nějaká data o tom, které články uživatel četl. No a mě teď napadlo jak to udělat jinak, úplně netradičním způsobem. Jestliže existuje "hack" který dokáže zjistit, jestli jste navštívili určitou stránku tak by to mohlo jít takto:

Nejdříve bych potřeboval do odkazu na článek nebo diskusi umístit datum času. Dejme tomu, že adresa by byla:
http://ubuntu.cz/diskuse/software/1210 ... přidám číslo času vložení posl. příspěvku, např:
http://ubuntu.cz/diskuse/software/1210/last6982411
do .htaccess zadám, aby za posledním lomítkem nic nehledal.
Prohlížeč registruje, že dotyčnou stránku jsem zatím nenavštívil.
V tom javascriptu se dá zjistit seznam stránek, které nebyly navštíveny. Provedl bych detekci zda odkaz má správný tvar - začíná na "http://ubuntu.cz/diskuse" a končí na last\d\d\d\d\d\d+ , tím bych teda zjistil, že se jedná o odkaz patřící ke článku/diskusi a když barva neodpovídá navštívené stránce, mohl bych spustit funkci, která ukáže značku nenavštíveného článku. Je to jen teorie ale možná to není špatný nápad.
grimword
Profil
nechápu, nebylo by řešení css "visited"?
Keeehi
Profil
koumal:
Pokud jsem tě správně pochopil, tak by to šlo. Ty vlastně měníš adresu, takže uživatel na ni ještě nebyl. Hlavně nesmíš zapomenout, že stránka musí být dostupná pod http://ubuntu.cz/diskuse/software/1210/+ jakýkoliv řetězec zatím (aby na tu stránku šlo odkazovat). Pak ale nevím, jak se k ní budou stavět vyhledávače, neboť na několika různých stránkách (liší se těmi čísly za last) budeš mít duplicitní obsah.
koumal
Profil *
Keeehi:
Tak by to snad bylo rychlejší a snazší řešení, ulevující výkonu serveru, když by nemusel registrovat mnohá čísla. A co to udělat tak, že se otevřou jen ty nové příspěvky. Pak to nebude duplicitní odkaz. A hlavně ty stará čísla timexxxxx už nebudou na stránce existovat, protože vždy se ukáže jen to číslo, které představuje datum aktuálního příspěvku. Tzn. je to jako přesun článku na jinou adresu. Na stránce musí být odkaz na diskusi přímo např. http://ubuntu.cz/diskuse/software/1210 a pak to aktuální číslo http://ubuntu.cz/diskuse/software/1210/timexxxx . Takže vyhledávač odstraní ze seznamu to, co na té stránce už není a dá tam to nové číslo (nový odkaz/novou stránku). Myslím, že k vytváření duplicitního obsahu nedochází. Navíc, vyhledávač nepracuje s Javascriptem nebo jo? Je řeč o tom co vidí klient, formátování v prohlížeči... Nevím zda to registrační skript Googlu zohledňuje, ale pokud, pak bere v úvahu to, jakou stránku navštívil a vidí v jednom čase vždy jen jedno číslo. Nikdy nemůže vidět dvě čísla.
Keeehi
Profil
koumal:
Co vím, tak google.cz JS vynechává.

Nikdy nemůže vidět dvě čísla.
Zároveň ne, ale ví, co na stránce bylo minule, resp. z minula má už uložený odkaz time10 a dnes si k tomu uloží i odkaz time11. On nebude chodit ze stránky na stránku podle odkazů na stránce, on si ty odkazy jen uloží a pak už je navštěvuje samostatně.

Pokud nechceš zatěžovat server, můžeš rozpoznávání přečtených/nepřečtených příspěvků dělat u klienta pomocí JS a cookies.
koumal
Profil *
Měl by ale mazat ty staré odkazy nemyslíš? Přece když zjistí, že už tam ta stránka (odkaz) není, tak by ho měl smazat, nebo přesunout do archivu. Jedině, že by to procházel dvakrát. Jednou pro zaregistrování nových odkazů a podruhé aby prošel text stránky a porovnal ho co tam přibylo nebo něco vyhodnocoval. Ale i tak mi přijde logické, že jako programátor bych k tomu prvnímu kroku rovnou přidal možnost odkaz odstranit.
Keeehi
Profil
koumal:
Jenže vy si nemůžete dovolit znepřístupnit diskuzi na přes odkaz (time10) i když se na vašem webu zobrazuje odkaz s time11. Problém je, že když napíšu třeba nějaký článek na svojí stránce a budu tam třeba chtít dát odkaz zrovna na nějakou diskuzi, tak nebudu přece pořád měnit odkaz, když tam někdo přidá příspěvek. To samé se záložkami v prohlížeči. V září si stránku uložím a v říjnu se na ní nedostanu, jelikož se změnil odkaz protože někdo přidal příspěvek?

Google staré odkazy jistě maže (přesouvá do archivu), ale až po tom, co se mu několikrát nepodaří stránku načíst (např. 404). Jenže to si vy nemůžete dovolit vzhledem k výše napsanému.
koumal
Profil *
Keeehi:
Google staré odkazy jistě maže (přesouvá do archivu), ale až po tom, co se mu několikrát nepodaří stránku načíst
Aha, tak už vás chápu. Myslel jsem, že ten mechanismus co Google zavedl proti duplicitnímu obsahu se vztahuje spíše na duplicitní stránky, které se nachází na různých doménách. Nevím jaký by mělo smysl vytvářet duplicitní stránky na téže doméně. Snad jen, aby webmaster předstíral vyšší počet stránek, ale bylo by to absurdní počínání.
Alphard
Profil
koumal:
Vyhledávač je jen jeden ze zdrojů, který může na vaše stránky odkazovat. V dnešní době jsou odkazy v twitteru, fb, používají se různé zkracovače, odkazuje se v diskusích apod. Tady všude by vznikla hromada odkazů s různými časy, které nikdy nedostanete pod kontrolu.

Další problém, co s otevřenými panely? Jsem na stránce xy/8, aktualizuji ji (F5, v diskusích naprosto běžné) a přibydou např. 3 příspěvky. Adresa by měla být xy/11, ale já mám stále xy/8, co teď?
koumal
Profil *
Jo, není to moc spolehlivé řešení. Zjistím jen jestli přibyl alespoň jeden nový příspěvek, nezjistím které přibyly. Proto bych nemohl udělat zobrazování pouze nových příspěvků. Takže by to mohlo posloužit tak maximálně jako info o tom, že něco nového je v diskusi.
koumal
Profil *
Ještě by tu snad byla možnost jak vyřešit zmíněné nedostatky této techniky. První řešení je zdánlivě nelogické - zamítnout robotům přístup na stránku. Robot by si musel najít cestu k odkazu jinudy než přes výpis diskuzí.

Možná by se taky dal použít iframe. S iframy nemám zkušenosti, ale pokud by to šlo, tak vytvořit iframe pro jeden sloupec výpisu. Zakázat scrollbary, zakázat přístup robotům do tohoto iframu a vytvořit v něm odkazy na dané články. Vytvořit to z toho hlavního dokumentu, ve kterém je i frame vnořený. Další možnost, pokud robot vůbec nepočítá s JS na stránce, tak by ani nemusel žádné odkazy zaregistrovat (odkazy generované přes JS).

Vaše odpověď


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0