自作ウィジェットのタイトル表示の仕方
-
下記のサイトを参考にして、ほとんどコピペで自作ウィジェットを作ってみたのですが、他のウィジェットのようにタイトルを入れるところが表示されません。
他のウィジェットと同じようにタイトルの見た目などそろえたいので、なんとかテーマ内のウィジェットと同じようにタイトルを入れれるか、他のサイトを参考に手を加えたら、タイトルを入力できるフィールドが出てきたので、そこにタイトルを入れてみたのですが、ウィジェット管理の画面ではきちんと反映していますが、ウェブサイトには表示されません。初心者のため、他を検索しても、なかなか解決方法が見つかりません。
もしどなたか、うまく反映できる方法がお分かりになればご教示頂けますでしょうか?
何卒よろしくお願いします。まず、この方のサイトを参考にし、その後、この方のサイトを参考に改良したのが、下記です。
ここへの書き方がうまくできませんが、最後のほうの改行スペースで囲まれた太字の部分(太字になっているかも不安ですが)が、後者の方のサイトを参考に追加した箇所です。とてもわかりにくい形でしか、表示できなくて申し訳ありませんが、何卒よろしくお願い致します。
尚、使っているテーマはTwenty Twelveです。<?php
class MyWidgetRecentPost extends WP_Widget {
function MyWidgetRecentPost() {
parent::WP_Widget(false, $name = ‘自作RecentPost’);
}
function widget($args, $instance) {
$num = 10;
extract( $args );
$title = apply_filters( ‘widget_title’, $instance[‘title’] );
$body = apply_filters( ‘widget_body’, $instance[‘body’] );
/* 個別記事の時は、カテゴリ別の最新記事を表示する */
if (is_single()){
$cat = get_the_category();
$cat = $cat[0];
query_posts($query_string . ‘&category_name=’.$cat->slug.’&posts_per_page=’.$num.’&offset=0′);
echo ‘<h3 class=”widget-title”>「’.$cat->name.’」の最新記事</h3>’;
/* カテゴリ別アーカイブの時は、カテゴリ別の最新記事を表示する */
}else if(is_category()){
$cat = get_query_var(‘cat’);
$cat = get_category($cat);
query_posts($query_string . ‘&category_name=’.$cat->slug.’&posts_per_page=’.$num.’&offset=0′);
echo ‘<h3 class=”widget-title”>「’.$cat->name.’」の最新記事</h3>’;
/* それ以外の時は、全カテゴリの最新記事を表示する */
}else{
query_posts(‘posts_per_page=’.$num.’&offset=0′);
echo ‘<h3 class=”widget-title”>最新記事</h3>’;
}
if(have_posts()):while(have_posts()):the_post();?>
<div style=”float:left;width:135px;margin:0 10px 5px 0;text-align:center;”>
“>
<?php the_post_thumbnail(array(135,135)); ?></div>
<div style=”float:left;width:135px;margin-bottom:5px;”>” ><?php the_title(); ?></div><div style=”clear:both;”></div>
<?php
endwhile; endif; wp_reset_query();
}
function update($new_instance, $old_instance) {
$instance = $old_instance;
$instance[‘title’] = strip_tags($new_instance[‘title’]);
$instance[‘body’] = trim($new_instance[‘body’]);
return $instance;
}
function form($instance) {
$title = esc_attr($instance[‘title’]);
$body = esc_attr($instance[‘body’]);?>
<p>
<label for=”<?php echo $this->get_field_id(‘title’); ?>”>
<?php _e(‘サイトに表示されるコンテンツ:’); ?>
</label>
<input class=”widefat” id=”<?php echo $this->get_field_id(‘title’); ?>” name=”<?php echo $this->get_field_name(‘title’); ?>” type=”text” value=”<?php echo $title; ?>” />
</p>
<p>
<label for=”<?php echo $this->get_field_id(‘body’); ?>”>
<?php _e(‘サイトに表示されるコンテンツ:’); ?>
</label>
<textarea class=”widefat” rows=”16″ colls=”20″ id=”<?php echo $this->get_field_id(‘body’); ?>” name=”<?php echo $this->get_field_name(‘body’); ?>”>
<?php echo $body; ?>
</textarea>
</p>
<?php
}
}
add_action(‘widgets_init’, create_function(”, ‘return register_widget(“MyWidgetRecentPost”);’));
?>
</div>
- トピック「自作ウィジェットのタイトル表示の仕方」には新たに返信することはできません。