Jak na hromadné úpravy obsahu v Drupalu pomocí modulu Views Bulk Operations

Potřebujete v Drupalu hromadě manipulovat s obsahem a základní výčet funkcí vám nestačí? Pak si nainstalujte modul Views Bulk Operations, se kterým je nastavení hromadných úprav obsahu hračkou.

Buďme upřímní – Drupal sám o sobě mnoho hromadných úprav obsahu nenabízí. V administrační části Obsah najdete jednoduché filtrování podle stavu, typu obsahu a jazyka. Vybranou skupinu obsahových uzlů pak lze hromadně publikovat, skrýt, zobrazit na titulce, odebrat jí toto zobrazení, přilepit/odlepit na přední místa výpisů nebo provést s ní pár dalších úprav.

Co ale dělat v případě, že se rozhodnete hromadně změnit autora u vybrané skupiny článků? Nebo jinak, dovedete nějak hromadně změnit ikonky u vybraného obsahu? Co třeba hromadné doplnění tagů? Tohle vám základní podoba Drupalu neumožní.

Hromadné úpravy obsahu pomocí Views Bulk Operations

Naštěstí je tu docela snadno uchopitelný modul Views Bulk Operations, který podobné potřeby řeší. Funguje tak, že si vytvoříte klasické View s filtry, nastavením zobrazení, řazením a dalšími běžnými atributy.

Do tohoto Views pak přidáte pseudo políčko Views Bulk Operations, u kterého si určíte, jaké hromadné úpravy v daném View bude možné s obsahem provádět. Ve výsledku se vám pak zobrazí výpis View se zatrhovátky před jednotlivými položkami a s výběrem operace nad seznamem. Daná hromadná úprava pak proběhne dávkově, takže tento proces nezkolabuje ani při velkém množství zpracovávaných dat.

Možností, které lze pomocí VBO měnit, je celá řada. Od klasických věcí, které nabízí i Drupal samotný, přes úpravy nadpisů, změny autorů, data vydání až k úpravám jednotlivých políček a jejich hodnot.

V následujícím videu vám ukážu jeden příklad z praxe, který jsem nedávno řešil na jednom svém webu. Řekněme, že mám někde sérii článků o všem možném a chci je nějak roztřídit podle ročních období. Použiju na to tagy jaro, léto, podzim, zima. Článků je přes tisícovku, takže manuální editace nepřipadá v úvahu. Pomocí Views jsem ale schopen vyfiltrovat jen ty články, které v textu či nadpisu mají slovo léto. No a pomocí VBO pak takovýmto vybraným článkům přidám tag léto.

Protože nechci pro zbývající roční období vytvářet další View s hromadnou úpravou, prostě si ve View vytvořím vystavený filtr pro hledání a v hromadné operaci vždy zadám jiný tag, který chci skupině článků doplnit.

Videonávod vám tedy ukáže:

  • jak postavit View ve formě tabulky zobrazující jen publikovaný obsah typu článek,
  • jak tento výpis zabezpečit pro přístup pouze administrátorem webu,
  • jak přidat číslování řádků,
  • jak doplnit vystavený filtr pro hledání zadaného výrazu
  • a jak to zkombinovat s VBO pro úpravu tagů.

VBO je mocný nástroj pro hromadné úpravy obsahu, ale třeba i pro manipulaci s objednávkami v eshopu, který můžete mít na Drupalu postavený. Budu rád za vaše postřehy k tomuto návodu i za případné reakce, jak jste modul VBO využili na svém webu.

Tagy

Buďme ve spojení, přihlaste se k newsletteru

Odesláním formuláře souhlasíte s podmínkami zpracováním osobních údajů. 
Více informací v Ochrana osobních údajů.

Autor článku: Jan Polzer

Tvůrce webů z Brna se specializací na Drupal, WordPress a Symfony. Acquia Certified Developer & Site Builder. Autor několika knih o Drupalu.
Web Development Director v Lesensky.cz. Ve volných chvílích podnikám výlety na souši i po vodě. Více se dozvíte na polzer.cz a mém LinkedIn profilu.

Komentáře k článku

návštěvník

Pán Polzer, ďakujem za super návod, avšak chcel by som sa spýtať, či je v poriadku, keď dám vytvoriť tag "Kniha života" tak v taxanómii sa mi vytvorí x tagov s týmto slov. spojením. To by mi nevadilo. Ale keď kliknem na tag, tak sa mi ukáže iba jedna stránka, nie všetky ktoré majú tag "Kniha života". Či je to teda ok, či majú tagy takto fungovať?
Priklad: http://prud.sk/Genezis-uryvky
Ďakujem za odpoveď

Profile picture for user Jan Polzer

To není OK, to je nějaká chyba. Jednak by se měl tag nebo jakákoli jiná kategorie vytvořit jen jednou, jednak by po kliknutí měl zobrazit veškerý obsah, který je v něm zařazen. I když tento druhý problém občas může nastat v případě, že tag má adresu stejnou, jako nějaký uzel. Pak se to bije dohromady.

návštěvník

Zaujímavé je, že keď otvorím článok a dám ho uložiť, a takto to spravím s tromi článkami, tak po kliknuti na tag sa mi ukážu všetky tri. Ale ostatné nie.
Potom keď pridám ručne tagy do článku, tak mi ich tiež ukáže.
Skúšal som to aj na inom webe s iným webhostingom aj tam to takto robí.
Potom som to skúšal na ďalšom, kde je minimum modulov, a tam to tiež nefunguje.
Vy ste nemali takéto problémy, keď ste robili ten návod?

Profile picture for user Jan Polzer

No je to už delší dobu, ale nevzpomínám si. Zkoušel jsem to tehdy i tu naživo na Maxiorlovi a nevidím takovýto problém.

návštěvník

Dá sa upraviť aj adresa súboru teraz je to 2021-07 ale chcel by som clanky/2021/07

návštěvník

Dá sa Global: View result counter nastaviť tak aby mi rátal od 4, 3, 2, 1. Hore by som mal 23 postupne by to šlo do 1 k poslednému záznamu?

Profile picture for user Jan Polzer

Myslím, že ne. Vyřešil bych to číslováním řádků ve Twig šabloně nebo úpravou v CSS.

návštěvník

Teraz ma napadlo ešte jedna vec neviem ako je natom D8 zrátať cez count všetky riadky dámy počet napríklad 55riadkov ktomu prirátať + 1 , následne odrátať
Global: View result counter. (count +1) -View result counter. Len či dokáže D8 Takto pracovať alebo napísať jednoduchý modul.

Přidat komentář

Odesláním komentáře souhlasíte s podmínkami Ochrany osobních údajů

reklama
Moje kniha o CMS Drupal

 

Kniha 333 tipů a triků pro Drupal 9


Více na KnihyPolzer.cz

Sledujte Maxiorla na Facebooku

Maxiorel na Facebooku

Hosting pro Drupal a WordPress

Hledáte český webhosting vhodný nejenom pro redakční systém Drupal? Tak vyzkoušejte Webhosting C4 za 1200 Kč na rok s doménou v ceně, 20 GB prostoru a automatické navyšováním o 2 GB každý rok. Podrobnosti zde.

@maxiorel na Twitteru

Maxiorel na Twitteru