0

wordpress テーマの function.php ファイルを変更しました。funtion.php ファイルを更新しようとすると、エラーが発生します。

致命的なエラー: 45 行目の /hermes/waloraweb088/b1248/moo.armaan815/Voga/fp/wp-content/themes/enterweb/functions.php の未定義関数 add_action() の呼び出し。

修正方法がわかりません。フィードバック/ヘルプをいただければ幸いです。ありがとう。

これが function.php ファイルのコードです。行番号「45」は、サイドバー関数の後の最初の呼び出しを指します。

<?php

if ( function_exists('register_sidebar') ) {
register_sidebar(array(
    'name' => 'Sidebar Widget Area',
    'id' => 'sidebar-widget-area',
    'before_widget' => '<div id="%1$s" class="box widget %2$s">',
    'before_title' => '<div class="wtitle"><h2>',
    'after_title' => '</h2></div><!--/wtitle --><div class="content">',
    'after_widget' => '</div><!--/content --></div><!--/box -->',       
));
register_sidebar(array(
    'name' => 'Single Sidebar Widget',
    'id' => 'single-widget-area',
    'before_widget' => '<div id="%1$s" class="cols %2$s">',
    'before_title' => '<h2>',
    'after_title' => '</h2>',
    'after_widget' => '</div><!--/box -->',       
));   
register_sidebar(array(
    'name' => 'Post Sidebar Widget',
    'id' => 'post-widget-area',
    'before_widget' => '<div class="boxx"><div id="%1$s" class="box         
widget_posts %2$s">',
    'before_title' => '<div class="wtitle"><h2>',
    'after_title' => '</h2></div><!--/wtitle --><div class="content">',
    'after_widget' => '</div><!--/content --></div></div><!--/box -->',
));
register_sidebar(array(
    'name' => 'Widget Ad Manager Small',
    'id' => 'widget-ad-minister-small',
    'before_widget' => '<div id="%1$s" class="box ads %2$s">',
    'before_title' => '<div class="wtitle"><h2>',
    'after_title' => '</h2></div><!--/wtitle --><div class="content">',
    'after_widget' => '</div><!--/content --></div><!--/box -->',
));
register_sidebar(array(
    'name' => 'Widget Ad Manager Big',
    'id' => 'widget-ad-minister-big',
    'before_widget' => '<div id="%1$s" class="box ads %2$s">',
    'before_title' => '<div class="wtitle"><h2>',
    'after_title' => '</h2></div><!--/wtitle --><div class="content">',
    'after_widget' => '</div><!--/content --></div><!--/box -->',
));
}

 add_action('admin_menu', 'taccess_theme_page');

function taccess_theme_page ()
{
  if ( count($_POST) > 0 && isset($_POST['taccess_settings']) )
{
    $options = array ( 'feedburner_id', 'advertise_page', 'flickr_group_id' );

    foreach ( $options as $opt )
    {
        delete_option ( 'taccess_'.$opt, $_POST[$opt] );
        add_option ( 'taccess_'.$opt, $_POST[$opt] );
    }
    wp_redirect("themes.php?page=functions.php&saved=true");
    die;
}
add_theme_page(__('wpTheme Settings'), __('wpTheme Settings'), 'edit_themes', basename(__FILE__), 'taccess_settings');
}

function taccess_settings ()
{

if ( isset( $_REQUEST['saved'] ) ) echo '<div id="message" class="updated fade"><p>        
<strong>'.__('Options saved.').'</strong></p></div>';

echo <<<TT
<div class="wrap">
<h2>wp Theme Settings</h2>

<form method="post" action="">
<table class="form-table">
    <tr valign="top">
        <th scope="row"><label for="feedburner_id">FeedBurner ID</label>     
</th>
        <td><input name="feedburner_id" type="text" id="feedburner_id"     
value="<?php echo htmlspecialchars(stripslashes(get_option('taccess_feedburner_id')));    
?>" class="regular-text" /></td>
    </tr>
    <tr valign="top">
        <th scope="row"><label for="advertise_page">Advertise Page</label>   
</th>
        <td>
            <?php      
wp_dropdown_pages("name=advertise_page&show_option_none=".__('- Select -')."&selected="  

.get_option('taccess_advertise_page')); ?>
        </td>
    </tr>
    <tr valign="top">
        <th scope="row"><label for="flickr_group_id">Flickr Group   
 ID</label></th>
        <td>
            <input name="flickr_group_id" type="text"    
id="flickr_group_id" value="<?php echo     
htmlspecialchars(stripslashes(get_option('taccess_flickr_group_id'))); ?>"     
class="regular-text" />
        </td>
    </tr>
</table>
<p class="submit">
    <input type="submit" name="Submit" class="button-primary" value="Save   

Changes" />
    <input type="hidden" name="taccess_settings" value="save"       

style="display:none;" />
</p>
</form>

</div>
TT;

}

?>
<?php
/**
 * add a default-gravatar to options
 */
if ( !function_exists('fb_addgravatar') ) {
function fb_addgravatar( $avatar_defaults ) {
     $myavatar = get_bloginfo('template_directory') . '/images/avatar.gif';
    $avatar_defaults[$myavatar] = 'people';

    $myavatar2 = get_bloginfo('template_directory') . '/images/myavatar.png';
    $avatar_defaults[$myavatar2] = 'wpengineer.com';

    return $avatar_defaults;
}

add_filter( 'avatar_defaults', 'fb_addgravatar' );
}

?>
4

1 に答える 1

0

この functions.php コードをテスト環境にコピーしましたが、同じエラーを生成できません (唯一のことは、最初に開始 php タグがないことです。

少し別のメモとして、「widgets_init」フックを使用して、サイドバーの登録を独自の関数に追加します。何かのようなもの

add_action('widgets_init','register_my_sidebars');

register_sidebarが存在するかどうかをテストする必要はありません。これは、このトピックに関する良い記事です。

于 2012-09-01T07:30:16.880 に答える