0
私はワードプレスを初めて使っています。私は独自のカスタムウィジェットを作成し、サイドメニューにコンテンツを表示したいと考えています。しかし、wordpressのcontrol pannelに表示されていても、wordpressはそのウィジェットを表示していません。プライマリウィジェットエリアにCustomWidgetを追加しました。Wordpress - カスタムウィジェットを表示するには
編集:「ウィジェット」機能が呼び出されないことに気付きました。これは、レンダリングを行うものと思われるためです。
class CustomWidget extends WP_Widget{
function CustomWidget(){
$widget_ops = array('classname' => 'custom_widget', 'description' => __("Custom Widget"));
$control_ops = array('width' => 250, 'height' => 400, 'id_base' => 'custom-widget');
$this->WP_Widget('CustomWidget', 'Custom Widget', $widget_ops, $control_ops);
}
function widget($args, $instance){
extract($args);
$title = apply_filters('widget_title', empty($instance['title']) ? '' : $instance['title']);
$menu_order = $instance['menu_order'];
$show_siblings = $instance['show_siblings'];
$exclude = $instance['exclude'];
echo $before_widget;
echo $before_title;
echo 'Title!!!';
echo $after_title;
echo 'Content!!!';
echo $after_widget;
}
}
function CustomWidget_init(){
register_widget('CustomWidget');
}
add_action("widgets_init", "CustomWidget_init");
でこれを追加します。 CustomWidgetのコンストラクタがヒットしていますが、何らかの理由でレンダリング関数ではありません。 – Bill
私は何かを忘れました。このような関数を 'code'関数に含める必要があります。render($ before_widget、$ after_widget、$ title){ echo $ before_widget; if(!empty($ title)){ echo $ before_title。 $タイトル。 $ after_title; }; //ここであなたは何を使っていますか? echo $ after_widget; } 'code' –