From 212e32aa94e71c77281cd191379e9a33d57a7a85 Mon Sep 17 00:00:00 2001 From: Hammat Wele Date: Fri, 28 Apr 2023 22:21:12 +0000 Subject: [PATCH] Bug 33317: Add system preference to set meta robots for the OPAC Websites must have a robots meta tag to improve search engine crawling, so we could tell search engines to not index OPAC pages for example. To test: 1) Look at opac-main source and see that meta name=robots is missing. 2) Apply patch. 3) Run ./installer/data/mysql/updatedatabase.pl 4) Go to system preferences > OPAC and add some directives to OpacMetaRobots (ex: noindex,nofollow). 5) Look at opac-main source and confirm that meta name=robots now has content equal to the text set in the OpacMetaRobots system preference. 6) This should Prevent search engines from indexing Opac pages (if OpacMetaRobots is set to noindex) Signed-off-by: Owen Leonard Signed-off-by: Lucas Gass --- installer/data/mysql/atomicupdate/bug_33317.pl | 14 ++++++++++++++ installer/data/mysql/mandatory/sysprefs.sql | 1 + .../prog/en/modules/admin/preferences/opac.pref | 4 ++++ .../bootstrap/en/includes/doc-head-close.inc | 3 +++ 4 files changed, 22 insertions(+) create mode 100644 installer/data/mysql/atomicupdate/bug_33317.pl diff --git a/installer/data/mysql/atomicupdate/bug_33317.pl b/installer/data/mysql/atomicupdate/bug_33317.pl new file mode 100644 index 0000000000..edffff480d --- /dev/null +++ b/installer/data/mysql/atomicupdate/bug_33317.pl @@ -0,0 +1,14 @@ +use Modern::Perl; + +return { + bug_number => "33317", + description => "Add new system preference OpacMetaRobots", + up => sub { + my ($args) = @_; + my ($dbh, $out) = @$args{qw(dbh out)}; + + $dbh->do(q{INSERT IGNORE INTO systempreferences (variable, value, options, explanation, type) VALUES ('OpacMetaRobots','','','Improve search engine crawling.', 'Textarea') }); + + say $out "Added system preference 'OpacMetaRobots'"; + }, +}; \ No newline at end of file diff --git a/installer/data/mysql/mandatory/sysprefs.sql b/installer/data/mysql/mandatory/sysprefs.sql index df70c69def..7a44bc4c6e 100644 --- a/installer/data/mysql/mandatory/sysprefs.sql +++ b/installer/data/mysql/mandatory/sysprefs.sql @@ -510,6 +510,7 @@ INSERT INTO systempreferences ( `variable`, `value`, `options`, `explanation`, ` ('OPACMandatoryHoldDates', '', '|start|end|both', 'Define which hold dates are required on OPAC reserve form', 'Choice'), ('OpacMaxItemsToDisplay','50','','Max items to display at the OPAC on a biblio detail','Integer'), ('OpacMetaDescription','','','This description will show in search engine results (160 characters).','Textarea'), +('OpacMetaRobots','','','Improve search engine crawling.','Textarea'), ('OPACMySummaryHTML','','70|10','Enter the HTML that will appear in a column on the \'my summary\' and \'my checkout history\' tabs when a user is logged in to the OPAC. Enter {BIBLIONUMBER}, {TITLE}, {AUTHOR}, or {ISBN} in place of their respective variables in the HTML. Leave blank to disable.','Textarea'), ('OpacNewsLibrarySelect','0','','Show selector for branches on OPAC news page','YesNo'), ('OpacNoItemTypeImages','0',NULL,'If ON, disables itemtype images in the OPAC','YesNo'), diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/admin/preferences/opac.pref b/koha-tmpl/intranet-tmpl/prog/en/modules/admin/preferences/opac.pref index 1a74aaaa87..3dd91612ec 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/modules/admin/preferences/opac.pref +++ b/koha-tmpl/intranet-tmpl/prog/en/modules/admin/preferences/opac.pref @@ -60,6 +60,10 @@ OPAC: - "This description will show in search engine results (160 characters)." - pref: OpacMetaDescription type: textarea + - + - "Improve search engine crawling." + - pref: OpacMetaRobots + type: textarea - - By default, show bibliographic records - pref: BiblioDefaultView diff --git a/koha-tmpl/opac-tmpl/bootstrap/en/includes/doc-head-close.inc b/koha-tmpl/opac-tmpl/bootstrap/en/includes/doc-head-close.inc index 67f324473d..40cc332fba 100644 --- a/koha-tmpl/opac-tmpl/bootstrap/en/includes/doc-head-close.inc +++ b/koha-tmpl/opac-tmpl/bootstrap/en/includes/doc-head-close.inc @@ -11,6 +11,9 @@ [% IF ( Koha.Preference('OpacMetaDescription') ) %] [% END %] +[% IF ( Koha.Preference('OpacMetaRobots') ) %] + +[% END %] [% IF ( Koha.Preference('opaclayoutstylesheet') && Koha.Preference('opaclayoutstylesheet') != "opac.css" ) %] -- 2.39.2