Popis
WP-RelativeDate přepisuje data vašich příspěvků a komentářů tak, aby vyjadřovala, jak dlouho tomu je: „Dnes“, „Včera“, „Před 2 dny“, „Před 2 týdny“, „Před 2 hodinami“, „Před 2 minutami“, „Před 2 sekundami“.
Není třeba nic konfigurovat a neexistuje žádná obrazovka s nastavením. WP-RelativeDate přepíše data vašich příspěvků a komentářů ihned po aktivaci a vše, co je starší než jeden měsíc nebo pochází z předchozího roku, ponechá přesně tak, jak to zobrazuje vaše šablona.
Funkce
- Příspěvek/Komentář Datum
- Dnes
- Včera
- Před X dny
- Před X týdny
- Čas zveřejnění/komentáře
- Před X sekundami
- Před X minutami
- Před X hodinami
Dary
Většinu svého volného času jsem věnoval tvorbě, aktualizaci, údržbě a podpoře těchto pluginů. Pokud se vám moje pluginy opravdu líbí a mohli byste mi věnovat pár dolarů, velmi bych to ocenil. Pokud ne, můžete je klidně používat bez jakýchkoli závazků.
Použití
Nemusíte nic dělat. Plugin WP-RelativeDate automaticky upraví zobrazení data nebo času vašeho příspěvku či komentáře. Pokud je příspěvek nebo komentář starší než jeden měsíc, nebude k němu přidán žádný text.
Příklady
- Příspěvek/Komentář Datum
- Dnes
- Včera
- 10. ledna 2007 (před 2 dny)
- 25. ledna 2007 (před 2 týdny)
- Čas zveřejnění/komentáře
- 21:10 (před 2 sekundami)
- 21:15 (před 5 minutami)
- 22:15 (před 2 hodinami)
Zkrácené kódy
[relativedate][relativedate date_format="jS F Y" ago_only="false"]
-
[relativetime][relativetime time_format="H:i" ago_only="false"]
Funkce ago_only odstraní datum nebo čas a ponechá pouze relativní výraz. Akceptuje hodnoty
true/false,1/0,yes/noaon/off.
Šablonové značky
relative_post_the_date( $format, $before, $after, $ago_only, $display )— přímá náhrada za funkcithe_date().$beforea$afterobsahují značky, přesně stejně jako vthe_date().
Vypnutí pro jednu šablonu
Plugin nemá žádnou obrazovku s nastavením. Chcete-li ponechat data šablony beze změny, odstraňte filtr před smyčkou:
remove_filter( 'get_the_date', 'relative_post_date', 999 );
Čtyři zpětná volání jsou relative_post_date v rámci funkce get_the_date, relative_post_time v rámci funkce get_the_time, relative_comment_date u get_comment_date a relative_comment_time u get_comment_time, všechny s prioritou 999.
Odstranění filtru get_the_date se týká také funkce the_date(), která vytváří svůj výstup voláním funkce get_the_date(). Totéž platí pro the_time(), comment_date() a comment_time().
Snímky obrazovky


relativedate a relativetime v příspěvku zveřejněném před několika minutamiInstalace
- Nainstalujte a aktivujte plugin.
To je vše. Neexistuje žádná obrazovka s nastavením a není co konfigurovat: data vašich příspěvků a komentářů se přepíší, jakmile se plugin aktivuje, a vše, co je starší než jeden měsíc, zůstane přesně tak, jak to zobrazovala vaše šablona.
Nejčastější dotazy
-
Zobrazit relativní datum u každého příspěvku
-
- Pokud chcete ve všech příspěvcích zobrazovat relativní datum, použijte ve svém šabloně funkci
relative_post_the_date()namístothe_date().
- Pokud chcete ve všech příspěvcích zobrazovat relativní datum, použijte ve svém šabloně funkci
-
Proč se znaky „“ kolem data v mém šabloně začaly zobrazovat jako text?
-
- Jednalo se o chybu ve verzi 1.51.1, která byla opravena ve verzi 2.0.0. Funkce
relative_post_the_date()prováděla únik vlastních argumentů$beforea$after. Řešením je aktualizace; není třeba měnit šablonu.
- Jednalo se o chybu ve verzi 1.51.1, která byla opravena ve verzi 2.0.0. Funkce
-
Data mých příspěvků jsou v šabloně typu „block“ stále zobrazena jako prostý text
-
- Toto se týká pouze WordPressu 6.9 a novějších verzí. Od verze 6.9 jádrový blok „Post Date“ získává datum prostřednictvím Block Bindings a formátuje ho samo, aniž by volalo funkci
get_the_date()nebo poskytovalo filtr, takže žádný plugin nemůže změnit to, co se zobrazí. Ve WordPressu 6.8 tento blok stále voláget_the_date()a relativní data příspěvků fungují i v blokových šablonách. - Data komentářů zůstávají beze změny ve všech podporovaných verzích – blok „Datum komentáře“ i nadále volá funkci
get_comment_date(). Data příspěvků také fungují normálně v klasických šablonách a všude tam, kde šablona voláthe_date(),get_the_date(),the_time()neboget_the_time(). - Chcete-li v šabloně bloku získat relativní datum zveřejnění, použijte zkrácený kód
[relativedate]nebo zavolejte funkcirelative_post_the_date()z vzoru bloku nebo části šablony.
- Toto se týká pouze WordPressu 6.9 a novějších verzí. Od verze 6.9 jádrový blok „Post Date“ získává datum prostřednictvím Block Bindings a formátuje ho samo, aniž by volalo funkci
-
Použil jsem `ago_only=“false“` a datum se nyní znovu zobrazuje
-
ago_only="false"bylo vždy dokumentováno jako hodnota „false“, ale až do verze 2.0.0 jej plugin interpretoval jako „true“. Pokud jste se na to spoléhali, použijteago_only="true", abyste zachovali výstup pouze pro starší záznamy.
-
Ukládá tento plugin nějaké údaje do mé databáze?
-
- Jeden řádek, a to ještě velmi krátký. Není třeba nic nastavovat, takže plugin neukládá vůbec žádná nastavení – pouze
wp_relativedate_version, což zaznamenává verzi, která byla naposledy spuštěna, aby aktualizace věděla, z jaké verze se provádí. Odstranění pluginu z obrazovky „Pluginy“ ho zcela vymaže.
- Jeden řádek, a to ještě velmi krátký. Není třeba nic nastavovat, takže plugin neukládá vůbec žádná nastavení – pouze
Recenze
Autoři
WP-RelativeDate je otevřený software. Následující lidé přispěli k vývoji tohoto pluginu.
SpolupracovníciPlugin „WP-RelativeDate“ byl přeložen do 5 jazyků. Děkujeme všem překladatelům za jejich pomoc.
Přeložte “WP-RelativeDate” do svého jazyka.
Zajímá vás vývoj?
Prohledejte kód, podívejte se do SVN repozitáře, nebo se přihlaste k odběru protokolu vývoje pomocí RSS.
Přehled změn
2.0.0
- AKTUÁLNÍ ZPRÁVA: Vyžaduje WordPress 6.8 a PHP 8.2, což představuje zvýšení požadavků oproti verzím 6.0 a 7.4.
- AKTUÁLNÍ ZPRÁVA: Zpětná volání příspěvků byla přesunuta z
the_date/the_timenaget_the_date/get_the_time. Pokud jste šablonu vyřadili pomocíremove_filter( 'the_date', 'relative_post_date', 999 ), použijte místo toho název getteru. - NOVINKA: Přepracováno do
includes/, přičemž výpočty data a času jsou nyní realizovány v tříděWP_RelativeDate_Core. - NOVINKA: Byl přidán řádek
wp_relativedate_versiona souboruninstall.php, který jej odstraní jak na jednotlivém webu, tak v celé síti. - NOVINKA: Byla přidána sada testů PHPUnit a automatizované testování (CI) pomocí GitHub Actions.
- ZMĚNA: Obě zpětné volání pro zkrácené kódy jsou nyní metodami třídy
WP_RelativeDate. Zkrácené kódy se odstraňují podle značky, takže funkceremove_shortcode( 'relativedate' )zůstává beze změny. - OPRAVENO: Datumy příspěvků nyní fungují v jakémkoli šabloně, která používá
get_the_date()neboget_the_time(), tedy ve všech klasických šablonách od Twenty Nineteen. Plugin dříve využíval pouze funkcethe_date()athe_time(), takže se u většiny šablon zdálo, že nefunguje. - OPRAVENO: Datumy komentářů nyní fungují i v blokových šablonách. Blok „Datum komentáře“ z jádra předává komentář jako argument a nikdy nenastavuje globální proměnnou, ze které plugin čerpá data.
- OPRAVENO: Funkce
relative_post_the_date()již neprovádí únikové kódování proměnných$beforea$after, což od verze 1.51.1 způsobovalo, že se<h2>a podobné prvky zobrazovaly jako doslovný text. - OPRAVENO:
ago_only="false"nyní znamená „false“. Dokumentovaný zápis byl vždy vykládán jako „true“. - OPRAVENO: Data příspěvků a komentářů již nevyvolávají chybu „Attempt to read property on null“, pokud v rozsahu není žádný příspěvek ani komentář, což mohlo způsobit widget s nejnovějšími komentáři.
- OPRAVENO: U obsahu s datem starším než aktuální čas na serveru se již nezobrazuje „(-300 sekund před“.
- OPRAVENO: Byla odstraněna funkce
load_plugin_textdomain(), která ve WordPressu 6.7 a novějších verzích vyvolávala chybu_doing_it_wrong.
