add recrusiv article list function