I found this on a post from 2004. Before I start messing up my stored procedures, would this work?
*****
I forgot to include the fact that I changed the dbo.GetSearchResults stored procedure.
I also want to be able to search child portals from anywhere in either the parent or any of the children. I think the best way to do this is to change the stored procedure in the SQL database. You could do this with SQL Server Magement Studio quite simply by changing the WHERE clause. I just added the following: "Or (t.PortalID >=1)". This assumes your parent portal is 0. The new stored procedure is:
set ANSI_NULLS ON
set QUOTED_IDENTIFIER ON
GO
ALTER procedure [dbo].[GetSearchResults]
@PortalID int,
@Word nVarChar(100)
AS
SELECT si.SearchItemID,
sw.Word,
siw.Occurrences,
siw.Occurrences + 1000 as Relevance,
m.ModuleID,
tm.TabID,
si.Title,
si.Description,
si.Author,
si.PubDate,
si.SearchKey,
si.Guid,
si.ImageFileId,
u.FirstName + ' ' + u.LastName As AuthorName,
m.PortalId
FROM dbo.SearchWord sw
INNER JOIN dbo.SearchItemWord siw ON sw.SearchWordsID = siw.SearchWordsID
INNER JOIN dbo.SearchItem si ON siw.SearchItemID = si.SearchItemID
INNER JOIN dbo.Modules m ON si.ModuleId = m.ModuleID
LEFT OUTER JOIN dbo.TabModules tm ON si.ModuleId = tm.ModuleID
INNER JOIN dbo.Tabs t ON tm.TabID = t.TabID
LEFT OUTER JOIN dbo.Users u ON si.Author = u.UserID
WHERE (((m.StartDate Is Null) OR (GetDate() > m.StartDate)) AND ((m.EndDate Is Null) OR (GetDate() < m.EndDate)))
AND (((t.StartDate Is Null) OR (GetDate() > t.StartDate)) AND ((t.EndDate Is Null) OR (GetDate() < t.EndDate)))
AND (sw.Word = @Word)
AND (t.IsDeleted = 0)
AND (m.IsDeleted = 0)
AND (t.PortalID = @PortalID) Or (t.PortalID >=1)
ORDER BY Relevance DESC
After you execute this, the search results are returned from your parent portal (0) and all child sites - assuming you have just created child sites and not a mixture of child and parent sites on your portal.
*****
Thanks
Bob