OK stick this in your functions.php:
Code:
// ###################### Start unindexpost #######################
function unindexpost($postid,$title="",$pagetext="") {
global $DB_site;
// get the data
if ($pagetext=="") {
$post=$DB_site->query_first("SELECT postid,threadid,title,pagetext FROM post WHERE postid='$postid'");
} else {
$post['postid']=$postid;
$post['title']=$title;
$post['pagetext']=$pagetext;
}
// get word ids from table
$allwords=$post['title']." ".$post['pagetext'];
$allwords=preg_replace("/[\n\t\r,]/s"," ",$allwords);
$allwords=preg_replace("/(\.+)($| |\n|\t)/s", " ", $allwords);
$allwords=str_replace("[", " [", $allwords);
$allwords=str_replace("]", "] ", $allwords);
$allwords=preg_replace("/[\(\)\"':;\[\]?!#{}_\-+\\\\]/s","",$allwords);
$allwords=strtolower(trim(str_replace(" "," ",$allwords)));
if ($titlewords)
$allwords.=" ".$titlewords;
$wordarray=explode(" ",$allwords);
$getwordidsql="title IN ('".str_replace(" ","','",$allwords)."')";
$words=$DB_site->query("SELECT wordid,title FROM word WHERE $getwordidsql");
$wordids="";
while ($word=$DB_site->fetch_array($words)) {
$wordids .= ',' . $word[wordid];
}
// delete em!
$DB_site->query("DELETE FROM searchindex WHERE wordid IN (0$wordids) AND postid=$post[postid]");
}