Potřebujete ve výpisu objednávek zobrazit sloupec s vlastními údaji a ještě mít možnost je řadit? Ukáži vám jak na to.
Budeme muset učinit tři kroky:
- vytvoření vlastního sloupce
- zobrazení hodnoty v sloupci
- umožnit řazení podle hodnoty
Vytvoření vlastního sloupce
Použijeme dynamický hook manage_{post-type}_posts_columns, který umožňuje přidat do jakékoliv tabulky výpisu v administraci nový sloupec.
Ve filtru přistoupíme k poli záznamů a pomocí foreach najdeme pole s id „name“ a za něj dáme své vlastní – hmotnost objednávky.
Zobrazení hodnoty ve sloupci
Protože sloupec bez hodnoty je k ničemu. A protože celkovou hmotnost objednávky máme uloženou v post meta ( Jak získat celkovou hmotnost objednávky ve WooCommerce ), tak si jen vypíšeme hodnotu toho pole.
Opět použijeme dynamický hook a pokud se jedná o sloupce, který jsme definovali, tak vypíšeme hodnotu custom fieldu.
Řazení podle hodnoty
Nyní musíme udělat dvě věci. První je, že musíme zaregistrovat column jako sortable. Díky tomu na něj budete moci kliknout a objednávky se podle něj seřadí.
Druhá je, budeme muset upravit $query, aby se objednávky skutečně řadily podle hmotnosti. To uděláme pomocí pre_get_posts filtru, který $query umožňuje měnit. Musíme však zkontrolovat, zda jsme opravdu v adminu.
No a to je vše. Nyní máte v administraci nový sloupec s hmotností, který můžete použít pro seřazení objednávek.
Další užitečné snippety najdete na stránce Užitečné snippety pro WooCommerce