У меня есть класс с именем DB_Bookings, в этом классе у меня есть функция с именем updated_variables()
, в которой это простой скрипт для просмотра даты опубликованного сообщения и изменения имени переменной соответственно.
При этом во всем приложении я собираюсь использовать переменную, и она будет динамически меняться для каждого поста в зависимости от даты создания.
Я пытаюсь вызвать переменные из другого класса.Пожалуйста, посмотрите мою работу ниже:
class DB_Bookings {
...
public function updated_variables() {
global $post;
$compare_date = strtotime( "2018-05-22" );
$post_date = strtotime( $post->post_date );
if($compare_date > $post_date) {
$weddingNameVariable = 'db-bookingsweddingname';
...
} else {
$weddingNameVariable = 'weddingName';
}
}
} // end DB_Bookings class
Затем в моем другом классе (в файле class-db-bookings-admin.php)
class DB_Bookings_Admin {
...
public function save_metabox( $post_id, $post ) {
...
update_post_meta( $post_id, DB_Bookings::updated_variables($weddingNameVariable), $db_bookingsnew_weddingname );
...
}
} // end Class DB_Bookings_Admin
Идея в том, что яможет выводить переменную, заданную в моем классе DB_Bookings, и она может меняться в зависимости от даты публикации (это, по сути, компенсирует устаревшие переменные, поскольку я пересматриваю код приложения).
Однако это не отображаетсячтобы сохранить, и я получаю следующую ошибку
[22-May-2018 19:29:43 UTC] PHP Notice: Undefined variable: weddingNameVariable in /var/www/html/wp-content/plugins/db-bookings/admin/class-db-bookings-admin.php on line 853