If you have special portal_types that normal users aren't allowed to see (by disabling their access contents type permission) then search_form.dtml breaks. Changing line 110 fixes it: <dtml-in expr="portal_types.listTypeInfo()" reverse skip_unauthorized>