Sign In

Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.

Sign Up Here

Forgot Password?

Don't have account, Sign Up Here

Forgot Password

Lost your password? Please enter your email address. You will receive a link and will create a new password via email.

Have an account? Sign In Now
Sign InSign Up

PHP-J

PHP-J

PHP-J Navigation

  • Главная
  • Контакты
Поиск
Задать вопрос

Mobile menu

Close
Задать вопрос
  • Главная
  • Add group
  • User Profile
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Buy Points
Home/ Questions/Q 86133
Next
Answered
kaiser
  • 0
kaiserГуру
Asked: 21 марта, 20222022-03-21T11:59:41+03:00 2022-03-21T11:59:41+03:00In: Wordpress (Вопросы и ответы)

Метабокс и функция обратного вызова

  • 0

Ситуация

У меня есть класс, в котором я добавляю мета-поле на экран редактирования сообщения.

РЕДАКТИРОВАТЬ: сейчас это рабочая версия

/**
 * Calls the class on the post edit screen
 */
function call_someClass() 
{
    return new someClass();
}
if ( is_admin() )
    add_action( 'load-post.php', 'call_someClass' );

/** 
 * The Class
 */
class someClass
{
    public function __construct()
    {
        add_action( 'add_meta_boxes', array( &$this, 'add_meta_box' ) );
    }

    /**
     * Adds the meta box container
     */
    public function add_meta_box( /* $args */ )
    {
        add_meta_box( 
             'post_format_box'
            ,__( 'Post Format Content', self::LANG )
            ,array( &$this, 'render' )
            ,'post' 
            ,'advanced'
            ,'high'
        );
    }


    /**
     * Render Meta Box content
     */
    public function render( /* $args */ ) 
    {
        return '<h1>TEST ME NOW</h1>';
    }
}

Проблема

Мета-поле отображается, и выходные данные функций обратного вызова мета-поля отображаются внутри моего мета-поля… но внутри сообщения об ошибке. Кажется, я слишком устал, чтобы обойти это:

Сообщение об ошибке (точное отображение, как в метабоксе)

Предупреждение: call_user_func() ожидает, что параметр 1 будет допустимым обратным вызовом, функция ‘ TEST ME NOW ‘ не найдена или недопустимое имя функции в R:\development\xampp\htdocs\wordpress\wp-admin\includes\template.php в строке 963

metaboxpost-meta
  • 2 2 ответов
  • 7 просмотров
  • 0 Followers
  • 0
Ответить
Share
  • Facebook

    2 ответов

    • Лучшие оценки
    • Старые
    • Недавние
    • Случайные
    1. Лучший ответ
      horttcore Эксперт
      2022-03-21T12:00:12+03:00Добавлен ответ 21 марта, 2022 в 12:00 пп

      Используя классы, как вы, ваша функция обратного вызова реализована неправильно:

      add_meta_box( 
                   'post_format_box'
                  ,__( 'Post Format Content', self::LANG )
                  ,@$this->render()
                  ,'post' 
                  ,'advanced'
                  ,'high'
              );
      

      Должно быть:

      add_meta_box( 
                   'post_format_box'
                  ,__( 'Post Format Content', self::LANG )
                  ,array($this, 'render')
                  ,'post' 
                  ,'advanced'
                  ,'high'
              );
      
      • 0
      • Reply
      • kaiser Гуру
        2022-03-21T12:01:04+03:00Replied to ответ 21 марта, 2022 в 12:01 пп

        мой Бог. Благодарю. работая весь день в классе и… так что (…) +1 и решение.

        • 0
        • Reply

    Оставить ответ
    Отменить ответ

    You must login to add an answer.

    Forgot Password?

    Need An Account, Sign Up Here

    Sidebar

    Ask A Question

    Stats

    • Questions : 7k
    • Answers : 38k
    • Best Answers : 4k
    • Users : 5k
    • Popular
    • Answers
    • netconstructorcom

      Лучшая подборка кода для вашего файла functions.php [закрыто]

      • 97 Answers
    • MikeSchinkel

      Объективные рекомендации по разработке плагинов? [закрыто]

      • 83 Answers
    • EAMann

      Как легко перенести установку WordPress из стадии разработки в рабочую ...

      • 60 Answers
    • Karenfreva
      Karenfreva added an answer [url=https://sildenafilviashop.com/]viagra over the counter[/url] cialis vs viagra [url=https://tblsviagra.com/]cheap viagra online[/url]… 27 июня, 2022 at 11:19 дп
    • Karenfreva
      Karenfreva added an answer [url=https://casinoboba.com/]lucky creek[/url] uptown ace casino [url=https://casinowingames.com/]sloto cash casino[/url] andromeda [url=https://realmonetcasino.com/]ignition[/url]… 25 июня, 2022 at 12:21 пп
    • bainternet
      bainternet added an answer попробуй это://first get all agents $agents = new WP_Query(array('post_type' =>… 27 марта, 2022 at 6:12 пп

    Похожие вопросы

    • nmystic

      Как назначить файл по умолчанию в «Внешний вид > Редактор»?

      • 0 Answers
    • billeisenhauer

      Как показать полную публикацию на главной странице

      • 0 Answers
    • atticus

      Создание пользовательских запросов AJAX

      • 0 Answers

    Лучшие участники

    rarst

    rarst

    • 0 Questions
    • 5k Points
    Гуру
    bainternet

    bainternet

    • 0 Questions
    • 5k Points
    Гуру
    janfabry

    janfabry

    • 0 Questions
    • 3k Points
    Гуру

    Trending Tags

    categories comments custom-field custom-post-types custom-taxonomy customization functions images menus multisite pages permalinks php plugin-development plugin-recommendation plugins posts theme-development themes widgets wp-admin

    Footer

    © 2022

    Вставить/изменить ссылку

    Введите адрес назначения (URL)

    Или сделайте ссылку на существующий материал

      Поисковый запрос не задан. Показаны недавние элементы. Воспользуйтесь поиском или клавишами вверх/вниз, чтобы выбрать элемент.