function paging_xmlsitemap_nodeapi in Paging 5
Implementation of hook_nodeapi().
1 call to paging_xmlsitemap_nodeapi()
- paging_xmlsitemap_enable in contrib/
paging_xmlsitemap/ paging_xmlsitemap.install - Implementation of hook_enable().
File
- contrib/
paging_xmlsitemap/ paging_xmlsitemap.module, line 89 - Adds node paging links to the site map.
Code
function paging_xmlsitemap_nodeapi(&$node, $op, $teaser = NULL, $page = NULL) {
switch ($op) {
case 'insert':
case 'update':
if (in_array($node->type, variable_get('paging_node_types_enabled', array()), TRUE)) {
if (isset($node->field_body[0]['view'])) {
// support for CCK
$body = $node->field_body[0]['view'];
}
elseif (isset($node->field_body[0]['value'])) {
// support for CCK
$body = $node->field_body[0]['value'];
}
else {
$body = $node->body;
}
$page_count = 1 + substr_count($body, variable_get('paging_separator', '<!--pagebreak-->'));
if ($page_count > 1) {
if ($op == 'insert') {
db_query("INSERT INTO {paging_xmlsitemap} (nid, pages) VALUES (%d, %d)", $node->nid, $node->page_count);
}
else {
db_query("UPDATE {paging_xmlsitemap} SET pages = %d WHERE nid = %d", $node->page_count, $node->nid);
}
}
}
break;
case 'delete':
db_query("DELETE FROM {paging_xmlsitemap} WHERE nid = %d", $node->nid);
break;
}
}