неправильно добавлять мой код в wp страницу администратора WordPress - PullRequest
0 голосов
/ 11 июля 2019

Я должен добавить новые опции и функции на страницах сообщений в админ-панели. Я вызываю новую функцию в edit-form-advanced.php и редактирую эту функцию в файле template.php. Вопрос это не так? Потому что моя функция находится в одном файле с функциями на WordPress. Или может быть в другом файле? но где я должен это назвать? Для части wp-контента я знаю и делаю дочернюю тему родительской темы, но я не знаю, что делать, когда мне нужно добавить код в часть wp-admin. пример: редактировать форм-advanced.php

do_custom_boxes( null, $post );

и в template.php

function do_custom_boxes( $screen, $object ) {
    global $wpdb;
     $appTable = $wpdb->prefix . "post_panel";
    $query = $wpdb->prepare("SELECT * FROM $appTable WHERE post_id = ".$_GET['post']." ", $screen);
    $applications = $wpdb->get_results($query);
    ......
    }

1 Ответ

3 голосов
/ 11 июля 2019

Краткий ответ: Да, это неправильно.Каждый раз, когда вы обновляете свой WordPress, вы теряете все свои изменения.

WordPress позволяет подключаться к его коду, изменять его поведение и многое другое.

Пожалуйста, прочитайте о действиях и фильтры .

По существу, Действия позволяют запускать функцию, когда что-то происходит в WordPress.

ДляПример:

<?php
function do_something_when_admin_pages_init() {
    // Do something here
}
add_action('admin_init', 'do_something_when_admin_pages_init')

Фильтры позволяют изменять данные / вывод другой функции.Это как будто позволяет вам встать посередине, сделать что-то с данными и затем продолжить.

Пример со страницы WordPress:

<?php
function wporg_filter_title($title) {
    return 'The ' . $title . ' was filtered';
}
add_filter('the_title', 'wporg_filter_title');

Это изменяет заголовок перед его печатью.

Таким образом, с помощью этих двух способов «зацепить» код WordPress, вы можете написать свой код в файле functions.php вашей темы или написать плагин (это ваше дело).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...