SWELL作者が提供しているSEO SIMPLE PACKがメジャーバージョンアップ?しました。
SEO SIMPLE PACKは必要最低限の機能しかありませんから、SWELL利用者以外は利用者は少ないと思います。
他の有料テーマについてるSEO機能と大差ないため、追加で導入するメリットはほぼ無いためです。
しかし、SEO SIMPLE PACKにはフックが用意されているので、コードを書いたカスタマイズすることで、一気に面白いプラグインになります。
この記事の内容
変更内容(Ver3.00)
'ssp_replace_snippet_{snippet_name}'
フックを追加しました。 (カスタムスニペットを定義できるようになりました)- 一部のスニペット名を変更しました。 (これまでのスニペット名でも機能します。)
- 投稿フォーマットアーカイブ用の設定は、投稿フォーマットのサポートが有効になっている場合にのみ表示されるようになりました。
- コードをリファクタリングしました。
'ssp_replace_snippet_{snippet_name}'
とは何か?
コードを見る方が速いですね。
%_XXXX_%というスニペットを自分で定義できるというモノらしいです。
case '%_date_%':
$year = get_query_var( 'year' );
$monthnum = get_query_var( 'monthnum' );
$day = get_query_var( 'day' );
$month = '';
if ( $monthnum ) {
global $wp_locale;
$month = $wp_locale->get_month( $monthnum );
}
if ( is_day() ) {
$replace = sprintf( _x( '%2$s %3$s, %1$s', 'date', 'loos-ssp' ), $year, $month, $day ); // phpcs:ignore
} elseif ( is_month() ) {
$replace = sprintf( _x( '%2$s %1$s', 'date', 'loos-ssp' ), $year, $month ); // phpcs:ignore
} elseif ( is_year() ) {
$replace = sprintf( _x( '%s', 'date', 'loos-ssp' ), $year ); // phpcs:ignore
}
break;
default:
// その他、SSP側で用意していないスニペットがある時、フィルターで置換できるようにする
$filter_name = "ssp_replace_snippet_$snipet_name";
if ( has_filter( $filter_name ) ) {
$replace = apply_filters( $filter_name, '', $context );
}
例えば、既存のものを変更するという場合は、スニペット名を変更して、フックすればいいわけです。
%_date_%の動きを変えたければ、%_mydate_%というスニペットを追加します。
フックの中で、%_mydate_%を好きな文字列に置き換えればいいわけです。
add_filter( ssp_replace_snippet_%_mydate_%, function($context){
return '';// 置き換えた結果
} );
まとめ
フックを追加してくれるのはありがたいことです。
スニペットを追加するというよりも、既存のスニペットを置き換える場面の方が多いかもしれませんね。
コメント