Pokud tvoříte webové stránky pomocí Bricks Builderu a děláte například kalendář akcí, tak se vám jistě bude hodit funkce, která z query vyloučí již proběhlé akce.
Kalendář akcí mám vytvořený pomocí ACF, kde pomocí vlastního pole vypisuji datum, kdy se má událost stát. Typ mám „Výběr data“ a custom návratovou hodnotu, například „d.m.Y“. Toto pole jsem si pojmenoval jako „KA Datum“, čili meta value je zde „ka-datum“.
Dále v template, kde se mají události vypisovat, jsem pomocí query dané příspěvky vypsal. Čili Posty, v Post type daný CPT (kalendář akcí) a seřadil jsem je pomocí výše uvedeného meta value, aby se mi události řadily dle datumu, kdy se mají stát.
Jak nyní vyloučit ty akce, které již poběhly? V query stačí sjet níže a přidat „Meta Query“. Do Meta key přidáme „ka-datum“ viz výše a do Meta value je potřeba přidat tuto funkci: „echo:date(Ymd)“ – nezapomeňte ji obalit pomocí těchto závorek {} viz obrázek.
V compare nastavte aby hodnota byla větší a nebo stejná, případně jiné možnosti. Například u Již proběhlých akcí lze přidat „Lesser or equal“. V kolonce „Type“ pak dáme „DATE“.
Nyní máme hotovo, ale ještě je potřeba tuto funkci přidat do functions.php nebo do pluginu na snippety. Já využívám FluentSnippets, kam jsem přidal tuto funkci:
add_filter( 'bricks/code/echo_function_names', function() {
return [
'date',
];
} );
Nyní by to mělo být vše a vše by mělo správně fungovat. Pokud ne, neváhejte mě kontaktovat nebo se ideálně zeptat v komentářích, rád poradím. 🙂
Leave a Reply