This plugin displays N pages which are similar to the current page. Number of pages displayed, relevance strictness and title length are configurable.
Download version for Genoa (v1.0.1) or Siena (v1.0.2).
Ported by Trustmaster from Seditio plugin by Raveex.
Updated and tested for Siena v0.9.22 by Dayver
Thanked: 2 times
Thanked: 265 times
Thanked: 7 times
Muy buen plug ing, muchas gracias :)
Thanked: 7 times
doesnt work with the latest Siena version..
Thanked: 181 times
Fixed version for latest Siena you can download here: https://github.com/macik/cot-similarpages
Thanked: 12 times
I added some code to mine so that if it doesn't find any by title then it looks by tags, probably a better way to do it but I will share just in case anyone is interested:
Just after "$jj = 0;"
add:
if ($sql_sim->rowCount() == 0)
{
$page_tags = $db->query("SELECT tag FROM $db_tag_references WHERE tag_item = ".$id." AND tag_area='pages' ");
if ($page_tags->rowCount() > 0)
{
$tagArray = array();
foreach ($page_tags->fetchAll() as $row_tags)
{
array_push ($tagArray, $row_tags['tag']);
}
foreach ($tagArray as $key=>$value)
{
$tagArray[$key] = $db->quote($value);
}
$input = '(' . implode(',', $tagArray) . ')';
$sql_tags = $db->query("SELECT tag_item from $db_tag_references WHERE tag IN $input AND tag_item != ".$id." AND tag_area='pages' ");
if ($sql_tags->rowCount() > 0)
{
foreach ($sql_tags->fetchAll() as $row_tags)
{
$sql_sim = $db->query("SELECT * from $db_pages WHERE page_id= ".$row_tags['tag_item']." ");
}
}
}
}
Thanked: 12 times
Sorry I made a mistake:
if ($sql_sim->rowCount() == 0)
{
$page_tags = $db->query("SELECT tag FROM $db_tag_references WHERE tag_item = ".$id." AND tag_area='pages' ");
if ($page_tags->rowCount() > 0)
{
$tagArray = array();
foreach ($page_tags->fetchAll() as $row_tags)
{
array_push ($tagArray, $row_tags['tag']);
}
foreach ($tagArray as $key=>$value)
{
$tagArray[$key] = $db->quote($value);
}
$input = '(' . implode(',', $tagArray) . ')';
$sql_tags = $db->query("SELECT tag_item from $db_tag_references WHERE tag IN $input AND tag_item != ".$id." AND tag_area='pages' ");
if ($sql_tags->rowCount() > 0)
{
$pageArray = array();
foreach ($sql_tags->fetchAll() as $row_tag)
{
array_push ($pageArray, $row_tag['tag_item']);
}
foreach ($pageArray as $key=>$value)
{
$pageArray[$key] = $db->quote($value);
}
$pagesinput = '(' . implode(',', $pageArray) . ')';
$sql_sim = $db->query("SELECT * from $db_pages WHERE page_id IN $pagesinput LIMIT $limit");
}
}
}