I am not entirely sure whether this is what you want, but it is possible to do the following:
In Project A, you have a topic like this (which refers to a topic that contains quotes). Let's call it y.
<% Python
import win32com.client
import random
ole = win32com.client.Dispatch("PWIK.Project")
tpcs = ole.LocateTopic('quotes')
text = tpcs.Text
N = text.Count - 1
while 1:
line = text[random.randint(0,N)]
if len(line) > 0:
print line.encode('utf-8')
break
%>
In Project B, you have another topic like this (which refers to verses from the Bible or whatever), let's call it w
<% Python
import win32com.client
import random
ole = win32com.client.Dispatch("PWIK.Project")
tpcs = ole.LocateTopic('verses')
text = tpcs.Text
N = text.Count - 1
while 1:
line = text[random.randint(0,N)]
if len(line) > 0:
print line.encode('utf-8')
break
%>
You can include y in w or w in y.
((Project A: y)) or whatever.
So you have both a quote, and a verse, and whatever in one topic. (The only thing you have to watch is that the included topic is above the python code, for it does not show up otherwise. No idea, why.)
The topics can also be from the same project. You just need to create a different topic for each one you want to include.
Manfred