Hi Carasmo,
Below, you will find what i did once for CGBlog (creating a custom category list and calling that).
You should easily be able to convert this to use for the News module but i suppose it will require some more work to get it to achieve the exact result you want...
I'm posting this to hopefully point you in the right direction, not to fix the issue with a copy/paste
If i'm completely off topic, at least i tried!
I'll try to provide you with the juicy bits here:
PART 1: Get the required info:
(Call & trash CGBlog to get category information (cfr. PART 2) before calling CGBlog with final list)
Code: Select all
{capture assign="junk"}{CGBlog}{/capture}
PART 2: Create the array containing the categories
Code: Select all
{foreach from=$items item=entry}
{foreach from=$entry->categories item='category'}
{if isset($newscats) && $category.name|in_array:$newscats}
{*Do nothing because newscats array exists and contains the category*}
{else}
{* HERE YOU CAN DEFINE MULTIPLE CONDITIONS THAT WOULD HAVE TO BE MET BEFORE ALLOWING THE CATEGORY TO BE INCLUDED IN THE FINAL LIST - LET ME KNOW IF YOU WANT TO SEE WHAT I PUT HERE AS AN EXAMPLE *}
{capture append='newscats'}{$category.name}{/capture}
{/if}
{/foreach}
{/foreach}
PART 3: Convert the newscats array to finalnewscats string while making the string comma separated
Code: Select all
{capture assign="finalnewscats"}
{foreach from=$newscats item=qsdf name=foo}
{$qsdf}{if $smarty.foreach.foo.last != '1'},{/if}
{/foreach}
{/capture}
Part 4: Call CGBlog using the custom built category string
Code: Select all
{if isset($finalnewscats)}
{CGBlog lang="nl_NL" category="$finalnewscats" detailpage="nieuws" sortasc="false"}
{/if}
Greetings,
Manuel