검색엔진 수집이 불필요한 페이지에 대한 robots 메타 태그 추가

xpressengine/xe-core#2293 patch by @bnu
This commit is contained in:
bnu 2018-08-31 12:27:03 +09:00 committed by Kijin Sung
parent cb66b4e5df
commit 71651c0542
14 changed files with 77 additions and 59 deletions

View file

@ -442,7 +442,13 @@ class ModuleHandler extends Handler
// get type, kind
$type = $xml_info->action->{$this->act}->type;
$ruleset = $xml_info->action->{$this->act}->ruleset;
$meta_noindex = $xml_info->action->{$this->act}->meta_noindex;
$kind = stripos($this->act, 'admin') !== FALSE ? 'admin' : '';
if ($meta_noindex === 'true')
{
Context::addMetaTag('robots', 'noindex');
}
if(!$kind && $this->module == 'admin')
{
$kind = 'admin';
@ -559,6 +565,7 @@ class ModuleHandler extends Handler
$forward->module = $module;
$forward->type = $xml_info->action->{$this->act}->type;
$forward->ruleset = $xml_info->action->{$this->act}->ruleset;
$forward->meta_noindex = $xml_info->action->{$this->act}->meta_noindex;
$forward->act = $this->act;
}
else
@ -585,6 +592,10 @@ class ModuleHandler extends Handler
$ruleset = $forward->ruleset;
$tpl_path = $oModule->getTemplatePath();
$orig_module = $oModule;
if($forward->meta_noindex === 'true')
{
Context::addMetaTag('robots', 'noindex');
}
$xml_info = $oModuleModel->getModuleActionXml($forward->module);
@ -781,6 +792,10 @@ class ModuleHandler extends Handler
}
}
if ($kind === 'admin') {
Context::addMetaTag('robots', 'noindex');
}
// if failed message exists in session, set context
self::_setInputErrorToContext();

View file

@ -57,13 +57,13 @@
</grants>
<actions>
<action name="dispBoardContent" type="view" permission="list" standalone="false" index="true" />
<action name="dispBoardWrite" type="view" permission="write_document" standalone="false" />
<action name="dispBoardDelete" type="view" permission="write_document" standalone="false" />
<action name="dispBoardWriteComment" type="view" permission="write_comment" standalone="false" />
<action name="dispBoardReplyComment" type="view" permission="write_comment" standalone="false" />
<action name="dispBoardModifyComment" type="view" permission="write_comment" standalone="false" />
<action name="dispBoardDeleteComment" type="view" permission="write_comment" standalone="false" />
<action name="dispBoardDeleteTrackback" type="view" permission="list,view" standalone="false" />
<action name="dispBoardWrite" type="view" permission="write_document" standalone="false" meta-noindex="true" />
<action name="dispBoardDelete" type="view" permission="write_document" standalone="false" meta-noindex="true" />
<action name="dispBoardWriteComment" type="view" permission="write_comment" standalone="false" meta-noindex="true" />
<action name="dispBoardReplyComment" type="view" permission="write_comment" standalone="false" meta-noindex="true" />
<action name="dispBoardModifyComment" type="view" permission="write_comment" standalone="false" meta-noindex="true" />
<action name="dispBoardDeleteComment" type="view" permission="write_comment" standalone="false" meta-noindex="true" />
<action name="dispBoardDeleteTrackback" type="view" permission="list,view" standalone="false" meta-noindex="true" />
<action name="dispBoardContentList" type="view" permission="list" standalone="false" />
<action name="dispBoardContentView" type="view" permission="view" standalone="false" />
<action name="dispBoardUpdateLog" type="view" permission="update_view" standalone="false" />

View file

@ -2,13 +2,13 @@
<module>
<grants />
<actions>
<action name="dispCommunicationMessages" type="view" permission="member" />
<action name="dispCommunicationSendMessage" type="view" permission="member" />
<action name="dispCommunicationNewMessage" type="view" permission="member" />
<action name="dispCommunicationFriend" type="view" permission="member" />
<action name="dispCommunicationAddFriend" type="view" permission="member" />
<action name="dispCommunicationAddFriendGroup" type="view" permission="member" />
<action name="dispCommunicationMessageBoxList" type="mobile" permission="member" />
<action name="dispCommunicationMessages" type="view" permission="member" meta-noindex="true" />
<action name="dispCommunicationSendMessage" type="view" permission="member" meta-noindex="true" />
<action name="dispCommunicationNewMessage" type="view" permission="member" meta-noindex="true" />
<action name="dispCommunicationFriend" type="view" permission="member" meta-noindex="true" />
<action name="dispCommunicationAddFriend" type="view" permission="member" meta-noindex="true" />
<action name="dispCommunicationAddFriendGroup" type="view" permission="member" meta-noindex="true" />
<action name="dispCommunicationMessageBoxList" type="mobile" permission="member" meta-noindex="true" />
<action name="procCommunicationUpdateAllowMessage" type="controller" permission="member" />
<action name="procCommunicationSendMessage" type="controller" permission="member" ruleset="sendMessage" />

View file

@ -2,11 +2,11 @@
<module>
<grants />
<actions>
<action name="dispDocumentPrint" type="view" />
<action name="dispDocumentPreview" type="view" />
<action name="dispTempSavedList" type="view" permission="member" />
<action name="dispDocumentDeclare" type="view" permission="member" />
<action name="dispDocumentManageDocument" type="view" permission="all-managers" />
<action name="dispDocumentPrint" type="view" meta-noindex="true"/>
<action name="dispDocumentPreview" type="view" meta-noindex="true"/>
<action name="dispTempSavedList" type="view" permission="member" meta-noindex="true"/>
<action name="dispDocumentDeclare" type="view" permission="member" meta-noindex="true" />
<action name="dispDocumentManageDocument" type="view" permission="all-managers" meta-noindex="true" />
<action name="getDocumentMenu" type="model" />
<action name="getDocumentCategories" type="model" permission="all-managers" />

View file

@ -2,12 +2,12 @@
<module>
<grants />
<actions>
<action name="dispEditorComponentInfo" type="view" />
<action name="dispEditorFrame" type="view" />
<action name="dispEditorPopup" type="view" />
<action name="dispEditorPreview" type="view" />
<action name="dispEditorSkinColorset" type="view" permission="all-managers" />
<action name="dispEditorConfigPreview" type="view" permission="root" />
<action name="dispEditorComponentInfo" type="view" meta-noindex="true" />
<action name="dispEditorFrame" type="view" meta-noindex="true" />
<action name="dispEditorPopup" type="view" meta-noindex="true" />
<action name="dispEditorPreview" type="view" meta-noindex="true" />
<action name="dispEditorSkinColorset" type="view" permission="all-managers" meta-noindex="true" />
<action name="dispEditorConfigPreview" type="view" permission="root" meta-noindex="true" />
<action name="procEditorCall" type="controller" />
<action name="procEditorSaveDoc" type="controller" />

View file

@ -2,10 +2,10 @@
<module>
<grants />
<actions>
<action name="dispInstallIndex" type="view" index="true" />
<action name="dispInstallCheckEnv" type="view" />
<action name="dispInstallDBConfig" type="view" />
<action name="dispInstallOtherConfig" type="view" />
<action name="dispInstallIndex" type="view" index="true" meta-noindex="true" />
<action name="dispInstallCheckEnv" type="view" meta-noindex="true" />
<action name="dispInstallDBConfig" type="view" meta-noindex="true" />
<action name="dispInstallOtherConfig" type="view" meta-noindex="true" />
<action name="getInstallFTPList" type="model" permission="root" />

View file

@ -2,7 +2,7 @@
<module>
<grants />
<actions>
<action name="IS" type="view" />
<action name="IS" type="view" meta-noindex="true" />
<action name="dispIntegration_searchAdminContent" type="view" admin_index="true" />
<action name="dispIntegration_searchAdminSkinInfo" type="view" />

View file

@ -2,7 +2,7 @@
<module>
<grants />
<actions>
<action name="dispKrzipSearchForm" type="view" />
<action name="dispKrzipSearchForm" type="view" meta-noindex="true" />
<action name="getKrzipCodeList" type="model" />
<action name="dispKrzipAdminConfig" type="view" menu_name="krzip" menu_index="true" admin_index="true" />

View file

@ -2,8 +2,8 @@
<module>
<grants />
<actions>
<action name="dispLayoutPreview" type="view" permission="root" />
<action name="dispLayoutPreviewWithModule" type="view" permission="root" />
<action name="dispLayoutPreview" type="view" permission="root" meta-noindex="true" />
<action name="dispLayoutPreviewWithModule" type="view" permission="root" meta-noindex="true" />
<action name="getLayoutInstanceListForJSONP" type="model" permission="root" />
<action name="dispLayoutAdminInstalledList" type="view" admin_index="true" menu_name="installedLayout" menu_index="true" />

View file

@ -2,23 +2,23 @@
<module>
<grants />
<actions>
<action name="dispMemberSignUpForm" type="view" />
<action name="dispMemberLoginForm" type="view" />
<action name="dispMemberFindAccount" type="view" />
<action name="dispMemberResendAuthMail" type="view" />
<action name="dispMemberInfo" type="view" permission="member" />
<action name="dispMemberModifyInfo" type="view" permission="member" />
<action name="dispMemberModifyPassword" type="view" permission="member" />
<action name="dispMemberModifyEmailAddress" type="view" permission="member" />
<action name="dispMemberLeave" type="view" permission="member" />
<action name="dispMemberScrappedDocument" type="view" permission="member" />
<action name="dispMemberSavedDocument" type="view" permission="member" />
<action name="dispMemberOwnDocument" type="view" permission="member" />
<action name="dispMemberOwnComment" type="view" permission="member" />
<action name="dispMemberActiveLogins" type="view" permission="member" />
<action name="dispMemberModifyNicknameLog" type="view" permission="member" />
<action name="dispMemberLogout" type="view" permission="member" />
<action name="dispMemberSpammer" type="view" permission="manager" check_var="module_srl" />
<action name="dispMemberSignUpForm" type="view" meta-noindex="true" />
<action name="dispMemberLoginForm" type="view" meta-noindex="true" />
<action name="dispMemberFindAccount" type="view" meta-noindex="true" />
<action name="dispMemberResendAuthMail" type="view" meta-noindex="true" />
<action name="dispMemberInfo" type="view" permission="member" meta-noindex="true" />
<action name="dispMemberModifyInfo" type="view" permission="member" meta-noindex="true" />
<action name="dispMemberModifyPassword" type="view" permission="member" meta-noindex="true" />
<action name="dispMemberModifyEmailAddress" type="view" permission="member" meta-noindex="true" />
<action name="dispMemberLeave" type="view" permission="member" meta-noindex="true" />
<action name="dispMemberScrappedDocument" type="view" permission="member" meta-noindex="true" />
<action name="dispMemberSavedDocument" type="view" permission="member" meta-noindex="true" />
<action name="dispMemberOwnDocument" type="view" permission="member" meta-noindex="true" />
<action name="dispMemberOwnComment" type="view" permission="member" meta-noindex="true" />
<action name="dispMemberActiveLogins" type="view" permission="member" meta-noindex="true" />
<action name="dispMemberModifyNicknameLog" type="view" permission="member" meta-noindex="true" />
<action name="dispMemberLogout" type="view" permission="member" meta-noindex="true" />
<action name="dispMemberSpammer" type="view" permission="manager" check_var="module_srl" meta-noindex="true" />
<action name="getMemberMenu" type="model" />
<action name="getApiGroups" type="model" permission="root" />

View file

@ -2,7 +2,7 @@
<module>
<grants />
<actions>
<action name="dispMessage" type="view" index="true" />
<action name="dispMessage" type="view" index="true" meta-noindex="true" />
<action name="dispMessageAdminConfig" type="view" admin_index="true" />
<action name="procMessageAdminInsertConfig" type="controller" />

View file

@ -2,10 +2,10 @@
<module>
<grants />
<actions>
<action name="dispModuleSelectList" type="view" permission="all-managers" />
<action name="dispModuleSkinInfo" type="view" permission="all-managers" />
<action name="dispModuleFileBox" type="view" permission="root" />
<action name="dispModuleFileBoxAdd" type="view" permission="root" />
<action name="dispModuleSelectList" type="view" permission="all-managers" meta-noindex="true" />
<action name="dispModuleSkinInfo" type="view" permission="all-managers" meta-noindex="true" />
<action name="dispModuleFileBox" type="view" permission="root" meta-noindex="true" />
<action name="dispModuleFileBoxAdd" type="view" permission="root" meta-noindex="true" />
<action name="dispModuleChangeLang" type="mobile" />
<action name="getModuleSkinInfoList" type="model" permission="root" />

View file

@ -949,6 +949,7 @@ class moduleModel extends module
$ruleset = $action->attrs->ruleset?$action->attrs->ruleset:'';
$method = $action->attrs->method?$action->attrs->method:'';
$check_csrf = $action->attrs->check_csrf=='false'?'false':'true';
$meta_noindex = $action->attrs->{'meta-noindex'} === 'true' ? 'true' : 'false';
$index = $action->attrs->index;
$admin_index = $action->attrs->admin_index;
@ -963,6 +964,7 @@ class moduleModel extends module
$info->action->{$name}->ruleset = $ruleset;
$info->action->{$name}->method = $method;
$info->action->{$name}->check_csrf = $check_csrf;
$info->action->{$name}->meta_noindex = $meta_noindex;
if($action->attrs->menu_name)
{
$info->menu->{$action->attrs->menu_name} = new stdClass();
@ -987,6 +989,7 @@ class moduleModel extends module
$buff[] = sprintf('$info->action->%s->ruleset=\'%s\';', $name, $ruleset);
$buff[] = sprintf('$info->action->%s->method=\'%s\';', $name, $method);
$buff[] = sprintf('$info->action->%s->check_csrf=\'%s\';', $name, $check_csrf);
$buff[] = sprintf('$info->action->%s->meta_noindex=\'%s\';', $name, $meta_noindex);
if($index=='true')
{

View file

@ -2,10 +2,10 @@
<module>
<grants />
<actions>
<action name="dispWidgetInfo" type="view" permission="all-managers" />
<action name="dispWidgetGenerateCode" type="view" permission="root" />
<action name="dispWidgetGenerateCodeInPage" type="view" permission="all-managers" />
<action name="dispWidgetStyleGenerateCodeInPage" type="view" permission="all-managers" />
<action name="dispWidgetInfo" type="view" permission="all-managers" meta-noindex="true" />
<action name="dispWidgetGenerateCode" type="view" permission="root" meta-noindex="true" />
<action name="dispWidgetGenerateCodeInPage" type="view" permission="all-managers" meta-noindex="true" />
<action name="dispWidgetStyleGenerateCodeInPage" type="view" permission="all-managers" meta-noindex="true" />
<action name="procWidgetGenerateCode" type="controller" permission="root" />
<action name="procWidgetGenerateCodeInPage" type="controller" permission="all-managers" ruleset="generateCodeInPage" />