プラグイン Super Post

ウィジェットを使った操作で、最近の記事・読まれている記事・関連記事等を表示してくれるプラグイン Super Post を使ってみました。このプラグインは、各記事にソーシャルボタンの表示や、ショートコードまで用意されています。いろいろと柔軟に設定できますので、コーディングしなくても使えますヨ。

プラグイン Super Post

Requires: 3.0 or higher
Compatible up to: 3.5.2
Last Updated: 2013-5-22

このような機能はプラグインにするべきなのか、必要なものだけfunctions.phpにでもちょこっと書けばいいかなとか、悩みどころではあります。

それはさておき、Wordpress3.5.2 OKではありますが、デバッグモードででてきたNotice, Error etc.を挙げておきます。

■ウィジェットのサイドバーへの配置時
$instance['toggle_active'][1]から[8]までが宣言されずに使われたというよくあるメッセージ。
@をつけるにしても何か所もあるので、強引に1行で済ませてみました。

【before】
function form($instance) {
/* Set up the default form values. */
  $defaults = array(
  ...
     'toggle_active' => array(0 => 1),      // line 245
    ...
【after】
     'toggle_active' => array(0=>1, 1=>'',, 2=>'', 3=>'', 4=>'', 5=>'', 6=>'', 7=>'', 8=>''),      // line 245

■shareボタンにチェックしない場合、$option['post_type_share']にセットされません。
isset使っちゃたよ~

//  if( $option['post_type_share'] && array_key_exists ( $post->post_type, $option['post_type_share'] ) && is_array( $option['share_method'] ) ) {
    if( isset($option['post_type_share']) && array_key_exists ( $post->post_type, $option['post_type_share'] ) && is_array( $option['share_method'] ) ) {

■記事投稿画面
同様。

//  if ( isset( $_POST['post_type'] ) && is_array( $options['cpt'] ) && array_key_exists( $_POST['post_type'], $options['cpt'] ) )  {
    if ( isset( $_POST['post_type'] ) && isset($options['cpt']) && is_array( $options['cpt'] ) && array_key_exists( $_POST['post_type'], $options['cpt'] ) )  {

■Relatedを選択したときの、SQL文がMySQLのバージョンによってsyntaxエラーになるみたいなメッセージでした。

【変更前】
$tagslist = 'AND tt.term_id IN ' . implode(',', $tagsarray);
【変更後】
$tagslist = 'AND tt.term_id IN (' . implode(',', $tagsarray).')';

よくある宣言せずに使っているもの系のNoticeが沢山でてきます。
Noticeなので一度ウィジェットを配置して「保存」すれば、でてこなくなるものあります。
設定次第でまだまだでてきそうな気配はありますが、その都度対応しようかな~という気になりました。

ウィジェットだけではなくショーコードも用意されています。

■ 関連記事 ■
[super-post query="related" items="3"
 show_excerpt="false" excerpt_length="15" excerpt_more="..."
 show_thumbnail="true" icon_height="40" icon_width="40"
 show_comments="false"
 show_date="true" date_format="F j, Y"
 show_author="false" order="DESC" ]

ってな感じに書くと…(↑ 途中コードが入らないように、1行で書きましょう)

■ 関連記事 ■
[super-post query="related" items="3" show_excerpt="false" excerpt_length="15" excerpt_more="..." show_thumbnail="true" icon_height="40" icon_width="40" show_comments="false" show_date="true" date_format="F j, Y" show_author="false" order="DESC" ]

こんなふうに表示されます。
show_excerpt
show_thumbnail
show_comments
show_date
show_author
の5つを書かない場合、Debugだといつもの(PHP)宣言してないよ!のNoticeがでます。

その他、セットしていない項目については予想外の結果になったりします。PHPのバージョンによっては大丈夫なのかも?しれません。

(WordPress 3.5.2 PHP5.4.13 MySQL 5.5.30 )

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です