Size: a a a

WordPress && WooCommerce

2021 January 12

A

Anton in WordPress && WooCommerce
#вопрос
Пишу какой-то класс, внутри которого нужна работа с глобальным объектом $post.
Как лучше его использовать: объявлять его глобально в каждом конкретном методе, где он непосредственно будет использоваться, или лучше где-то единоразово объявить внутреннюю переменную у класса, присвоив ей этот объект? Или как-то ещё?
источник

AE

Anton Eremenko in WordPress && WooCommerce
А как в заказе ручками поставить дату оплаты?
источник

A

Anton in WordPress && WooCommerce
Anton Eremenko
А как в заказе ручками поставить дату оплаты?
речь про WC?
источник

AE

Anton Eremenko in WordPress && WooCommerce
да
источник

A

Anton in WordPress && WooCommerce
Ну там же должна быть инфа о дате оплаты, или нет?
источник

AE

Anton Eremenko in WordPress && WooCommerce
Ато как то гуглится исключительно варианты через допиливать хук
источник

AE

Anton Eremenko in WordPress && WooCommerce
от собственно нет редактора этого поля или я слепой совсем
источник

A

Anton in WordPress && WooCommerce
Anton Eremenko
от собственно нет редактора этого поля или я слепой совсем
А в чём смысл менять эту дату?
источник

A

Anton in WordPress && WooCommerce
Ну можно кастомное поле сделать, наверное, я особо хорошо WC не знаю
источник

AE

Anton Eremenko in WordPress && WooCommerce
в том что надо ставить ручками статус оплаты если он не прилетел от платёжной системы
источник

AE

Anton Eremenko in WordPress && WooCommerce
а если ставиш ручками статус то дату вписать тупо некуда
источник

KL

Katya Leurdo in WordPress && WooCommerce
Anton
#вопрос
Пишу какой-то класс, внутри которого нужна работа с глобальным объектом $post.
Как лучше его использовать: объявлять его глобально в каждом конкретном методе, где он непосредственно будет использоваться, или лучше где-то единоразово объявить внутреннюю переменную у класса, присвоив ей этот объект? Или как-то ещё?
$post = get_post();
а с глобальным объектом не надо работать
источник

A

Anton in WordPress && WooCommerce
Katya Leurdo
$post = get_post();
а с глобальным объектом не надо работать
Тоже отличное решение.
источник

АП

Артём Приходько... in WordPress && WooCommerce
Anton
#вопрос
Пишу какой-то класс, внутри которого нужна работа с глобальным объектом $post.
Как лучше его использовать: объявлять его глобально в каждом конкретном методе, где он непосредственно будет использоваться, или лучше где-то единоразово объявить внутреннюю переменную у класса, присвоив ей этот объект? Или как-то ещё?
зависит от задачи. Если сохранится текущий пост в свойство класса, нет гарантии что он не изменится, пока работает класс. в некоторых случая лучше получать текущий пост прям в методе
источник

A

Anton in WordPress && WooCommerce
Katya Leurdo
$post = get_post();
а с глобальным объектом не надо работать
Правда, если открыть код get_post, то мы видим такое,
if ( empty( $post ) && isset( $GLOBALS['post'] ) ) {
 $post = $GLOBALS['post'];
}
источник

KL

Katya Leurdo in WordPress && WooCommerce
Anton
Правда, если открыть код get_post, то мы видим такое,
if ( empty( $post ) && isset( $GLOBALS['post'] ) ) {
 $post = $GLOBALS['post'];
}
да, но глобальная переменная хотя бы защищена от перезаписи
источник

A

Anton in WordPress && WooCommerce
Но ощущение того, что не в твоём коде работа с глобальными переменными — уже повышает настроение
источник

KL

Katya Leurdo in WordPress && WooCommerce
понятно что чудес не бывает )))
источник

A

Anton in WordPress && WooCommerce
Также пришёл к выводу, что в WP делать что-то на одном ООП, всё-таки, не очень хороший вариант. Слишком уж сильно связность повышается, даже если делать всё разными плагинами.
источник

A

Anton in WordPress && WooCommerce
Хуки только выручают
источник