Version Description
- Add feed_noindex setting.
- Fixed meta tag in
is_home
page with negativecat
value
Download this release
Release Info
Developer | looswebstudio |
Plugin | SEO SIMPLE PACK |
Version | 2.4.0 |
Comparing to | |
See all releases |
Code changes from version 2.3.1 to 2.4.0
- class/data.php +1 -0
- class/hooks.php +5 -0
- class/output.php +13 -2
- class/trait/field.php +2 -2
- class/trait/output_helper.php +11 -9
- dist/css/ssp.css +1 -1
- inc/tab/top_basic.php +8 -0
- readme.txt +6 -1
- seo-simple-pack.php +1 -1
- src/scss/inc/_switch.scss +7 -6
class/data.php
CHANGED
@@ -173,6 +173,7 @@ class SSP_Data {
|
|
173 |
'pt_archive_desc' => sprintf( self::$texts['archive_desc'], '%_post_type_%' ),
|
174 |
'404_title' => '404: ' . __( 'Page not found', 'loos-ssp' ) . ' %_sep_% %_site_title_%',
|
175 |
'search_title' => __( 'Searched:', 'loos-ssp' ) . ' %_search_phrase_% %_sep_% %_site_title_%',
|
|
|
176 |
];
|
177 |
|
178 |
self::$default_ogp_settings = [
|
173 |
'pt_archive_desc' => sprintf( self::$texts['archive_desc'], '%_post_type_%' ),
|
174 |
'404_title' => '404: ' . __( 'Page not found', 'loos-ssp' ) . ' %_sep_% %_site_title_%',
|
175 |
'search_title' => __( 'Searched:', 'loos-ssp' ) . ' %_search_phrase_% %_sep_% %_site_title_%',
|
176 |
+
'feed_noindex' => false,
|
177 |
];
|
178 |
|
179 |
self::$default_ogp_settings = [
|
class/hooks.php
CHANGED
@@ -155,6 +155,11 @@ class SSP_Hooks {
|
|
155 |
wp_safe_redirect( get_post()->guid );
|
156 |
exit;
|
157 |
}
|
|
|
|
|
|
|
|
|
|
|
158 |
}
|
159 |
|
160 |
|
155 |
wp_safe_redirect( get_post()->guid );
|
156 |
exit;
|
157 |
}
|
158 |
+
|
159 |
+
// feedをインデックスさせない(noidex)
|
160 |
+
if ( is_feed() && SSP_Data::$settings['feed_noindex'] && headers_sent() === false ) {
|
161 |
+
header( 'X-Robots-Tag: noindex, follow', true );
|
162 |
+
}
|
163 |
}
|
164 |
|
165 |
|
class/output.php
CHANGED
@@ -297,7 +297,10 @@ class SSP_Output {
|
|
297 |
|
298 |
case is_singular():
|
299 |
case is_home():
|
300 |
-
if ( ! isset( self::$obj->ID ) )
|
|
|
|
|
|
|
301 |
|
302 |
$meta_robots = get_post_meta( self::$obj->ID, SSP_MetaBox::POST_META_KEYS['robots'], true );
|
303 |
if ( $meta_robots ) {
|
@@ -530,6 +533,15 @@ class SSP_Output {
|
|
530 |
$canonical = home_url( '/' );
|
531 |
break;
|
532 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
533 |
case is_singular():
|
534 |
$the_id = isset( self::$obj->ID ) ? self::$obj->ID : 0;
|
535 |
$meta_canonical = get_post_meta( $the_id, SSP_MetaBox::POST_META_KEYS['canonical'], true );
|
@@ -578,7 +590,6 @@ class SSP_Output {
|
|
578 |
break;
|
579 |
|
580 |
default:
|
581 |
-
// is_home() もここに来る。
|
582 |
break;
|
583 |
}
|
584 |
|
297 |
|
298 |
case is_singular():
|
299 |
case is_home():
|
300 |
+
if ( ! isset( self::$obj->ID ) ) {
|
301 |
+
$robots = 'noindex'; // ?cat=ネガティブid の is_home なページ
|
302 |
+
break;
|
303 |
+
};
|
304 |
|
305 |
$meta_robots = get_post_meta( self::$obj->ID, SSP_MetaBox::POST_META_KEYS['robots'], true );
|
306 |
if ( $meta_robots ) {
|
533 |
$canonical = home_url( '/' );
|
534 |
break;
|
535 |
|
536 |
+
case is_home():
|
537 |
+
$home_id = get_queried_object_id();
|
538 |
+
if ( ! $home_id ) {
|
539 |
+
$canonical = home_url( '/' );
|
540 |
+
} else {
|
541 |
+
$canonical = get_permalink( $home_id ) ?: '';
|
542 |
+
}
|
543 |
+
break;
|
544 |
+
|
545 |
case is_singular():
|
546 |
$the_id = isset( self::$obj->ID ) ? self::$obj->ID : 0;
|
547 |
$meta_canonical = get_post_meta( $the_id, SSP_MetaBox::POST_META_KEYS['canonical'], true );
|
590 |
break;
|
591 |
|
592 |
default:
|
|
|
593 |
break;
|
594 |
}
|
595 |
|
class/trait/field.php
CHANGED
@@ -168,12 +168,12 @@ trait Field {
|
|
168 |
|
169 |
$checked = ( $is_checked ) ? 'checked' : '';
|
170 |
?>
|
171 |
-
<span><?=esc_html__( '
|
172 |
<label class="ssp_switch" for="<?=esc_attr( $name )?>">
|
173 |
<input type="checkbox" name="" id="<?=esc_attr( $name )?>" <?=$checked?>>
|
174 |
<span class="ssp_switch__slider -round"></span>
|
175 |
</label>
|
176 |
-
<span><?=esc_html__( '
|
177 |
<input type="hidden" name="<?=esc_attr( $name )?>" value="<?=esc_attr( $is_checked )?>">
|
178 |
<?php
|
179 |
}
|
168 |
|
169 |
$checked = ( $is_checked ) ? 'checked' : '';
|
170 |
?>
|
171 |
+
<span><?=esc_html__( 'No', 'loos-ssp' )?></span>
|
172 |
<label class="ssp_switch" for="<?=esc_attr( $name )?>">
|
173 |
<input type="checkbox" name="" id="<?=esc_attr( $name )?>" <?=$checked?>>
|
174 |
<span class="ssp_switch__slider -round"></span>
|
175 |
</label>
|
176 |
+
<span><?=esc_html__( 'Yes', 'loos-ssp' )?></span>
|
177 |
<input type="hidden" name="<?=esc_attr( $name )?>" value="<?=esc_attr( $is_checked )?>">
|
178 |
<?php
|
179 |
}
|
class/trait/output_helper.php
CHANGED
@@ -240,15 +240,17 @@ trait Output_Helper {
|
|
240 |
if ( is_singular() || ( ! is_front_page() && is_home() ) ) {
|
241 |
|
242 |
// title
|
243 |
-
|
244 |
-
|
245 |
-
|
246 |
-
|
247 |
-
|
248 |
-
|
249 |
-
|
250 |
-
|
251 |
-
|
|
|
|
|
252 |
}
|
253 |
} elseif ( is_search() ) {
|
254 |
if ( false !== strpos( $str, '%_search_phrase_%' ) ) {
|
240 |
if ( is_singular() || ( ! is_front_page() && is_home() ) ) {
|
241 |
|
242 |
// title
|
243 |
+
if ( isset( $obj->ID ) ) {
|
244 |
+
$title = get_the_title( $obj->ID );
|
245 |
+
$str = str_replace( '%_page_title_%', $title, $str );
|
246 |
+
|
247 |
+
// description
|
248 |
+
if ( false !== strpos( $str, '%_page_contents_%' ) ) {
|
249 |
+
$word_count = apply_filters( 'ssp_description_word_count', 120 );
|
250 |
+
$content = wp_strip_all_tags( do_shortcode( $obj->post_content ), true ); // 改行なども削除
|
251 |
+
$content = mb_substr( $content, 0, $word_count );
|
252 |
+
$str = str_replace( '%_page_contents_%', $content, $str );
|
253 |
+
}
|
254 |
}
|
255 |
} elseif ( is_search() ) {
|
256 |
if ( false !== strpos( $str, '%_search_phrase_%' ) ) {
|
dist/css/ssp.css
CHANGED
@@ -1 +1 @@
|
|
1 |
-
.ssp-field+.ssp-field{margin-top:40px}.ssp-field[data-disable="1"]~.ssp-field{display:none}.ssp-field[data-active="0"]~.ssp-field{opacity:.5;pointer-events:none}.ssp-field input[type=text],.ssp-field textarea{width:100%;padding:4px 8px}.ssp-field .hide{display:none}.ssp-field code{margin:0;padding:2px 6px;font-size:inherit;font-style:normal;background:#eee}.ssp-field__body{padding-left:8px}.ssp-field__title{display:block;margin-bottom:16px;padding-left:8px;font-weight:700;font-size:14px;border-left:2px solid #87ab87}.ssp-field__desc{color:#666;font-size:13px;font-style:italic}.ssp-field__item.-radio_btn{display:flex;flex-wrap:wrap}.ssp-field__item.-radio_btn .ssp-field__radioInput{display:none}.ssp-field__item.-radio_btn .ssp-field__radioLabel{width:40px;height:40px;margin:4px;padding:0;line-height:34px;text-align:center;vertical-align:middle;background:#fcfcfc;border:1px solid #ccc;box-shadow:inset 0 0 2px #fff}.ssp-field__item.-radio_btn :checked+.ssp-field__radioLabel{border:2px solid #eba170}.ssp-helpTable{width:100%;max-width:560px;margin:0 0 24px}.ssp-helpTable thead{background:#e3e4e3}.ssp-helpTable td,.ssp-helpTable th{padding:6px 8px;text-align:left}.ssp-field__preview{display:flex;flex-wrap:wrap;align-items:center;width:100%;padding:4px;font-size:13px}.ssp-field__preview__label{margin-left:4px}.ssp-field__preview__content{display:inline-block;margin-left:8px;padding:12px;background:#ececec;border-radius:3px;box-shadow:inset 0 0 4px #ddd}.ssp-field__preview__content span{margin:0 2px;padding:4px 8px;color:#fff;background:#87ab87;border-radius:4px}.ssp-helpButton{display:inline-block;width:22px;height:22px;margin-left:12px;padding:0;color:#fff!important;font-weight:700;font-size:12px;line-height:22px;text-align:center;text-decoration:none;vertical-align:middle;background:#87ab87;border-radius:50%;box-shadow:inset 0 0 4px rgba(50,50,50,.15);transition:transform .25s}.ssp-helpButton:hover{transform:scale(1.1)}.ssp-page .ssp-page__tabs{padding-bottom:6px;overflow-y:auto}.ssp-page .nav-tab-wrapper{display:flex;border-bottom:1px solid #ddd}.ssp-page .nav-tab{background:rgba(0,0,0,.05);border:none;border-radius:2px 2px 0 0;cursor:pointer}.ssp-page .nav-tab.act_,.ssp-page .nav-tab:hover{color:#000;background:#fdfdfd}.ssp-page .tab-contents{display:none;margin-bottom:1em;padding:16px}.ssp-page .tab-contents.act_{display:block}.ssp_switch{position:relative;display:inline-block;width:
|
1 |
+
.ssp-field+.ssp-field{margin-top:40px}.ssp-field[data-disable="1"]~.ssp-field{display:none}.ssp-field[data-active="0"]~.ssp-field{opacity:.5;pointer-events:none}.ssp-field input[type=text],.ssp-field textarea{width:100%;padding:4px 8px}.ssp-field .hide{display:none}.ssp-field code{margin:0;padding:2px 6px;font-size:inherit;font-style:normal;background:#eee}.ssp-field__body{padding-left:8px}.ssp-field__title{display:block;margin-bottom:16px;padding-left:8px;font-weight:700;font-size:14px;border-left:2px solid #87ab87}.ssp-field__desc{color:#666;font-size:13px;font-style:italic}.ssp-field__item.-radio_btn{display:flex;flex-wrap:wrap}.ssp-field__item.-radio_btn .ssp-field__radioInput{display:none}.ssp-field__item.-radio_btn .ssp-field__radioLabel{width:40px;height:40px;margin:4px;padding:0;line-height:34px;text-align:center;vertical-align:middle;background:#fcfcfc;border:1px solid #ccc;box-shadow:inset 0 0 2px #fff}.ssp-field__item.-radio_btn :checked+.ssp-field__radioLabel{border:2px solid #eba170}.ssp-helpTable{width:100%;max-width:560px;margin:0 0 24px}.ssp-helpTable thead{background:#e3e4e3}.ssp-helpTable td,.ssp-helpTable th{padding:6px 8px;text-align:left}.ssp-field__preview{display:flex;flex-wrap:wrap;align-items:center;width:100%;padding:4px;font-size:13px}.ssp-field__preview__label{margin-left:4px}.ssp-field__preview__content{display:inline-block;margin-left:8px;padding:12px;background:#ececec;border-radius:3px;box-shadow:inset 0 0 4px #ddd}.ssp-field__preview__content span{margin:0 2px;padding:4px 8px;color:#fff;background:#87ab87;border-radius:4px}.ssp-helpButton{display:inline-block;width:22px;height:22px;margin-left:12px;padding:0;color:#fff!important;font-weight:700;font-size:12px;line-height:22px;text-align:center;text-decoration:none;vertical-align:middle;background:#87ab87;border-radius:50%;box-shadow:inset 0 0 4px rgba(50,50,50,.15);transition:transform .25s}.ssp-helpButton:hover{transform:scale(1.1)}.ssp-page .ssp-page__tabs{padding-bottom:6px;overflow-y:auto}.ssp-page .nav-tab-wrapper{display:flex;border-bottom:1px solid #ddd}.ssp-page .nav-tab{background:rgba(0,0,0,.05);border:none;border-radius:2px 2px 0 0;cursor:pointer}.ssp-page .nav-tab.act_,.ssp-page .nav-tab:hover{color:#000;background:#fdfdfd}.ssp-page .tab-contents{display:none;margin-bottom:1em;padding:16px}.ssp-page .tab-contents.act_{display:block}.ssp_switch{position:relative;display:inline-block;width:48px;height:24px;margin:0 8px}.ssp_switch input{display:none}.ssp_switch__slider{position:absolute;top:0;right:0;bottom:0;left:0;background-color:#ccc;box-shadow:0 0 0 2px #fff,0 0 0 3px #ddd;cursor:pointer;transition:.4s}.ssp_switch__slider:before{position:absolute;right:28px;bottom:4px;width:16px;height:16px;background-color:#fff;transition:.4s;content:""}input:checked+.ssp_switch__slider{background-color:#2196f3}input:checked+.ssp_switch__slider:before{right:4px}.ssp_switch__slider.-round{border-radius:34px}.ssp_switch__slider.-round:before{border-radius:50%}#wpcontent{padding:0 20px!important}.ssp-page{margin-top:1em;padding:8px;font-size:14px}.ssp-page,.ssp-page *{box-sizing:border-box}.ssp-page .form-table,.ssp-page .form-table p,.ssp-page .form-table td,.ssp-page .form-table th,.ssp-page input{font-size:inherit!important}.ssp-page .ssp-page__savedMessage{margin:24px 0}h1.ssp-page__title{font-weight:700;line-height:1.5}.ssp-page__section+.ssp-page__section{margin-top:48px}.ssp-page__section__title{position:relative;padding:8px 0 8px 16px;line-height:1.5;letter-spacing:.5px}.ssp-page__section__title:before{position:absolute;top:50%;left:0;z-index:-1;display:block;width:40px;height:40px;background-image:linear-gradient(-45deg,transparent 25%,#87ab87 0,#87ab87 50%,transparent 0,transparent 75%,#87ab87 0,#87ab87);background-size:6px 6px;border-radius:50%;transform:translateY(-50%);opacity:.4;content:""}.ssp-page__section__body{padding:24px;background:#fff;border-radius:4px;box-shadow:0 2px 4px rgba(0,0,0,.05),0 4px 8px -4px rgba(0,0,0,.1)}.ssp-page__note{padding-left:4px;font-style:italic}textarea[name=home_desc]{max-width:1000px;height:12em}[name=home_keyword]{max-width:1000px}.-webmaster input{max-width:800px}.-webmaster code b{margin:0 2px;padding:2px 4px;color:#fff;font-weight:400;font-size:.9em;background:#87ab87;border-radius:4px}.ssp-field__body{display:flex}@media screen and (max-width:782px){.ssp-field__preview{font-size:12px}.ssp-field__preview__label{display:none}.ssp-field__preview__content{padding:8px}.ssp-helpButton{margin-left:12px}.ssp-page .tab-contents{padding:0}#wpcontent{padding:0 16px!important}.ssp-page{margin-right:0!important;padding:0}.ssp-page__section__body{padding:16px}.ssp-field__body{flex-direction:column}.ssp-field__body .ssp-field__item{order:0}.ssp-field__body .ssp-field__desc{order:2}.ssp-field__body .ssp-field__preview{order:1}}@media screen and (min-width:783px){.ssp-field__body{flex-wrap:wrap;justify-content:space-between}.ssp-field__body .ssp-field__item{width:40%}.ssp-field__body .ssp-field__desc{width:57%}.ssp-field__body.-wide .ssp-field__desc,.ssp-field__body.-wide .ssp-field__item{width:100%}.ssp-field__body.-mt-shorten{margin-top:-24px}}
|
inc/tab/top_basic.php
CHANGED
@@ -77,6 +77,9 @@ $quoted_title__s = sprintf( SSP_Data::$texts['quoted_title'], $page_title__s );
|
|
77 |
$page_title__404 = __( '404 page', 'loos-ssp' );
|
78 |
$quoted_title__404 = sprintf( SSP_Data::$texts['quoted_title'], $page_title__404 );
|
79 |
|
|
|
|
|
|
|
80 |
self::output_section( __( 'Particular page settings', 'loos-ssp' ), [
|
81 |
'search_title' => [
|
82 |
'title' => sprintf( SSP_Data::$texts['title_of'], $quoted_title__s ),
|
@@ -88,4 +91,9 @@ self::output_section( __( 'Particular page settings', 'loos-ssp' ), [
|
|
88 |
'desc' => sprintf( SSP_Data::$texts['default_output'], $quoted_title__404, '<code><title></code>' ),
|
89 |
'preview' => true,
|
90 |
],
|
|
|
|
|
|
|
|
|
|
|
91 |
] );
|
77 |
$page_title__404 = __( '404 page', 'loos-ssp' );
|
78 |
$quoted_title__404 = sprintf( SSP_Data::$texts['quoted_title'], $page_title__404 );
|
79 |
|
80 |
+
$feed_title = __( 'Feed page', 'loos-ssp' );
|
81 |
+
$quoted_title__feed = sprintf( SSP_Data::$texts['quoted_title'], $feed_title );
|
82 |
+
|
83 |
self::output_section( __( 'Particular page settings', 'loos-ssp' ), [
|
84 |
'search_title' => [
|
85 |
'title' => sprintf( SSP_Data::$texts['title_of'], $quoted_title__s ),
|
91 |
'desc' => sprintf( SSP_Data::$texts['default_output'], $quoted_title__404, '<code><title></code>' ),
|
92 |
'preview' => true,
|
93 |
],
|
94 |
+
'feed_noindex' => [
|
95 |
+
'title' => sprintf( SSP_Data::$texts['noindex'], $quoted_title__feed ),
|
96 |
+
'type' => 'switch',
|
97 |
+
// 'desc' => SSP_Data::$texts['noindex_help'],
|
98 |
+
],
|
99 |
] );
|
readme.txt
CHANGED
@@ -4,7 +4,7 @@ Donate link: https://loos-web-studio.com/
|
|
4 |
Tags: SEO, meta, analytics, webmaster, simple, japan, meta tag
|
5 |
Requires at least: 4.9
|
6 |
Tested up to: 5.9
|
7 |
-
Stable tag: 2.
|
8 |
Requires PHP: 7.0
|
9 |
License: GPLv2 or later
|
10 |
License URI: https://www.gnu.org/licenses/gpl-2.0.html
|
@@ -121,6 +121,11 @@ The following hooks are available.
|
|
121 |
|
122 |
== Changelog ==
|
123 |
|
|
|
|
|
|
|
|
|
|
|
124 |
= 2.3.1 =
|
125 |
- Add strip_tag before outputting title tag.
|
126 |
|
4 |
Tags: SEO, meta, analytics, webmaster, simple, japan, meta tag
|
5 |
Requires at least: 4.9
|
6 |
Tested up to: 5.9
|
7 |
+
Stable tag: 2.4.0
|
8 |
Requires PHP: 7.0
|
9 |
License: GPLv2 or later
|
10 |
License URI: https://www.gnu.org/licenses/gpl-2.0.html
|
121 |
|
122 |
== Changelog ==
|
123 |
|
124 |
+
|
125 |
+
= 2.4.0 =
|
126 |
+
- Add feed_noindex setting.
|
127 |
+
- Fixed meta tag in `is_home` page with negative `cat` value
|
128 |
+
|
129 |
= 2.3.1 =
|
130 |
- Add strip_tag before outputting title tag.
|
131 |
|
seo-simple-pack.php
CHANGED
@@ -3,7 +3,7 @@
|
|
3 |
* Plugin Name: SEO SIMPLE PACK
|
4 |
* Plugin URI: https://wemo.tech/1670
|
5 |
* Description: A very simple SEO plugin. You can easily set and customize meta tags and OGP tags for each page.
|
6 |
-
* Version: 2.
|
7 |
* Author: LOOS,Inc.
|
8 |
* Author URI: https://loos-web-studio.com/
|
9 |
* License: GPL2 or later
|
3 |
* Plugin Name: SEO SIMPLE PACK
|
4 |
* Plugin URI: https://wemo.tech/1670
|
5 |
* Description: A very simple SEO plugin. You can easily set and customize meta tags and OGP tags for each page.
|
6 |
+
* Version: 2.4.0
|
7 |
* Author: LOOS,Inc.
|
8 |
* Author URI: https://loos-web-studio.com/
|
9 |
* License: GPL2 or later
|
src/scss/inc/_switch.scss
CHANGED
@@ -7,8 +7,8 @@
|
|
7 |
.ssp_switch {
|
8 |
position: relative;
|
9 |
display: inline-block;
|
10 |
-
width:
|
11 |
-
height:
|
12 |
margin: 0 8px;
|
13 |
}
|
14 |
|
@@ -25,6 +25,7 @@
|
|
25 |
bottom: 0;
|
26 |
left: 0;
|
27 |
background-color: #ccc;
|
|
|
28 |
cursor: pointer;
|
29 |
-webkit-transition: 0.4s;
|
30 |
transition: 0.4s;
|
@@ -32,10 +33,10 @@
|
|
32 |
|
33 |
.ssp_switch__slider::before {
|
34 |
position: absolute;
|
35 |
-
right:
|
36 |
bottom: 4px;
|
37 |
-
width:
|
38 |
-
height:
|
39 |
background-color: #fff;
|
40 |
-webkit-transition: 0.4s;
|
41 |
transition: 0.4s;
|
@@ -47,7 +48,7 @@ input:checked + .ssp_switch__slider {
|
|
47 |
}
|
48 |
|
49 |
input:checked + .ssp_switch__slider::before {
|
50 |
-
right:
|
51 |
}
|
52 |
|
53 |
/* Rounded sliders */
|
7 |
.ssp_switch {
|
8 |
position: relative;
|
9 |
display: inline-block;
|
10 |
+
width: 48px;
|
11 |
+
height: 24px;
|
12 |
margin: 0 8px;
|
13 |
}
|
14 |
|
25 |
bottom: 0;
|
26 |
left: 0;
|
27 |
background-color: #ccc;
|
28 |
+
box-shadow: 0 0 0 2px #fff, 0 0 0 3px #ddd;
|
29 |
cursor: pointer;
|
30 |
-webkit-transition: 0.4s;
|
31 |
transition: 0.4s;
|
33 |
|
34 |
.ssp_switch__slider::before {
|
35 |
position: absolute;
|
36 |
+
right: 28px;
|
37 |
bottom: 4px;
|
38 |
+
width: 16px;
|
39 |
+
height: 16px;
|
40 |
background-color: #fff;
|
41 |
-webkit-transition: 0.4s;
|
42 |
transition: 0.4s;
|
48 |
}
|
49 |
|
50 |
input:checked + .ssp_switch__slider::before {
|
51 |
+
right: 4px;
|
52 |
}
|
53 |
|
54 |
/* Rounded sliders */
|