2013-03-09 48 views
1

在此先感謝您提供任何幫助, 錯誤調用成員函數check_capabilities ()第160行的wordpress錯誤... wp-includes class-wp-customize-control.php同時爲額外功能添加鉤子

卡住了這一個車轍!

指南佈局:

  • '主題文件夾'
    • 的functions.php
    • 的index.php
    • 的style.css
    • 功能文件夾( '主題' 主目錄)(位於'主題文件夾'內)
      • customize.php

函數的調用customize.php這樣的:

<?php require_once('functions/customize.php'); ?> 

customize.php:

<?php 
add_action('customize_register', 'adaptive_customize_register'); 
function adaptive_customize_register($wp_customize) { 
//logo 
$wp_customize->add_section('adaptive_logo', array(
'title' => __('Add Logo', 'adaptive_framework'), 
'description' => __('Upload your main logo, this shows in the header',  'adaptive_framework'), 
'priority' => '25' 
)); 
    $wp_customize->add_setting('adaptive_custom_settings[add_logo]', array(
    'default' => 0, 
    'type' => 'option' 
)); 

$wp_customize->add_control('adaptive_custom_settings[display_logo]', array(
    'label' => __('Display logo?','adaptive_framework'), 
    'section' => 'adaptive_logo', 
    'settings' => 'adaptive_custom_settings[display_top_logo]', 
    'type' => 'checkbox' 
    )); 
} 



?> 

如果任何人都可以請幫助我得到的錯誤如下:

Fatal error: Call to a member function check_capabilities() on a non-object in C:\xampp\htdocs\wordpress\wp-includes\class-wp-customize-control.php on line 160 
+0

'$ cutomize'或'$ customize'? – brasofilo 2013-03-09 15:18:23

+0

@brasofilo - 我明白我犯了一個錯誤,但錯誤仍然相同我已經檢查了錯別字,仍然返回錯誤在線160 – 2013-03-09 20:51:32

+0

難調試:/ ....我不明白它是什麼功能期待,我們應該把它放在哪裏。 [文檔](https://codex.wordpress.org/Class_Reference/WP_Customize_Manager/add_control)不是很完整。也許[本文](http://ottopress.com/2012/making-a-custom-control-for-the-theme-customizer/)(鏈接在文檔中)可以提供幫助。 – brasofilo 2013-03-09 21:16:44

回答

-3

不得不結束這個線程,因爲我正在使用的代碼現在不再需要了,我將查看完成的代碼在線工作。

6

add_control()的settings參數必須與add_setting()中定義的設置的名稱相匹配。否則,控件將添加到導致功能錯誤的未知設置。

因此改變adaptive_custom_settings[display_top_logo]adaptive_custom_settings[add_logo]

<?php 
    add_action('customize_register', 'adaptive_customize_register'); 
    function adaptive_customize_register($wp_customize) { 
    //logo 
    $wp_customize->add_section('adaptive_logo', array(
     'title' => __('Add Logo', 'adaptive_framework'), 
     'description' => __('Upload your main logo, this shows in the header',   'adaptive_framework'), 
     'priority' => '25' 
    )); 
    $wp_customize->add_setting('adaptive_custom_settings[add_logo]', array(
     'default' => 0, 
     'type' => 'option' 
    )); 

    $wp_customize->add_control('adaptive_custom_settings[display_logo]', array(
     'label' => __('Display logo?','adaptive_framework'), 
     'section' => 'adaptive_logo', 
     'settings' => 'adaptive_custom_settings[add_logo]', 
     'type' => 'checkbox' 
    )); 
    } 
    ?> 
相關問題