On website there are pages of 2 conceptual types:
- pages that makes sense for robots (e.g. Google) to index (show in search results)
- pages, that doesn't make to index (e.g. "No Permissions", "Form Submitted Template")
For later page category it makes sense to add following into <head>
:
<meta name="robots" content="nofollow, noindex, noarchive"/>
Solution
html_head.elm.tpl
<inp2:m_if check="c.current_Field" name="MetaKeywords"><meta name="Keywords" content="<inp2:c.current_PageInfo name='MetaKeywords'/>"/></inp2:m_if>
/core/units/categories/categories_config.php
'Fields' => Array ( ..... 'MetaNofollowNoindex' => Array ( 'type' => 'string', 'formatter' => 'kOptionsFormatter', 'options' => Array ('nofollow' => 'NoFollow', 'noindex' => 'NoIndex', 'noarchive' => 'NoArchive', 'noimageindex' => 'NoImageIndex', 'noodp' => 'NoOdp', 'nosnippet' => 'NoSnippet'), 'default' => NULL ), ..... ),
/core/units/categories/categories_tag_processor.php
function PageInfo($params){ $page =& $this->_getPage($params); switch ($params['type']) { ..... case 'meta_nofollownoindex': $db_field = 'MetaNofollowNoindex'; break; ..... default: return ''; } $default = isset($params['default']) ? $params['default'] : ''; $val = $page->GetField($db_field); if ($db_field == 'MetaNofollowNoindex') { return str_replace('|',', ',trim($val,'|')); } ..... return $val; }
file categories_edit.tpl
<inp2:m_RenderElement name="inp_edit_checkboxes" prefix="c" field="MetaNofollowNoindex" title="la_fld_MetaNofollowNoindex" />
sql for update table Categories
ALTER TABLE TABLE_PREFIX.Categories ADD `MetaNofollowNoindex` VARCHAR(30) NULL DEFAULT NULL AFTER `RequireLogin`;