2009-10-05 127 views
0

我學會了如何在WordPress上創建一個插件。然而,WordPress改變了一切,我試圖使用新的WordPress格式創建相同的插件。我已經閱讀了幾件事情,但試圖通過修改WordPress Text Field插件來跳轉(我重新設計插件的一個目標是使其可以多次使用)。我意識到代碼非常粗糙,但我被卡住了。我嘗試添加兩個新字段,只是爲了看看事情是如何發展的,當我點擊「標題」上的保存並且第一個textarea數據被保存時,編輯該小部件時,它們會出現,其他兩個字段消失。WordPress插件問題

我有一種感覺我錯過了明顯的東西,但我似乎無法弄清楚。這裏是代碼:

'widget_text','description'=> __('Text or HTML')); $ control_ops = array('width'=> 400,'height'=> 350); $ this-> WP_Widget('text',__('Multi Excerpt'),$ widget_ops,$ control_ops); } function widget($ args,$ instance){ extract($ args); $ title = apply_filters('widget_title',empty($ instance ['title'])?'':$ instance ['title'],$ instance); $ text = apply_filters('widget_text',$ instance ['text'],$ instance); $ texta = apply_filters('widget_text',$ instance ['texta'],$ instance); $ posts = $ instance ['posts']; echo $ before_widget; if(!empty($ title)){echo $ before_title。 $ title。 $ after_title; }?> '','text'=>'','posts'=>'','texta'=>'')); $ title = strip_tags($ instance ['title']); $ text = format_to_edit($ instance ['text']); $ texta = format_to_edit($ instance ['texta']); $ posts = $ instance ['posts']; ?>

get_field_id('title'); ('text');?>「>> get_field_id('title');?>」name =「get_field_name('title');?>」type =「text」value =「」/>

get_field_id ?>「name =」get_field_name('text'); ('texta');?>「name =」get_field_name('texta');?>「>>

get_field_id('posts'); ?> 「>文章: get_field_id( '信息');>?」 名稱= 「get_field_name( '信息');>?」 類型= 「文本」 的值= 「」/>

預先感謝。

回答

0

編輯:我發現我的原始答案有點正確。以下是需要解決您的問題的詳細信息。

更改您的WP_Widget_Excerpt功能:

function WP_Widget_Excerpt() { 
    $widget_ops = array('classname' => 'WP_Widget_Excerpt', 'description' => __('Text or HTML')); 
    $control_ops = array('width' => 400, 'height' => 350); 
    $this->WP_Widget('WP_Widget_Excerpt', __('Multi Excerpt'), $widget_ops, $control_ops); 
} 
+0

非常感謝。我知道我錯過了一些小事,現在一切都很好。 – Erik 2009-10-06 13:16:37

0

如果你的控件是做一些簡單,你可以使用Widgetifyr.com創建你的widget你。我創建了舊式小部件以及新的基於2.8+類的小部件。這樣您的小部件將運行在更多版本的Wordpress上。