WCS Как получить объект подписки Woocommerce с учетом идентификатора подпискиPhp

Кемеровские программисты php общаются здесь
Ответить
Anonymous
 WCS Как получить объект подписки Woocommerce с учетом идентификатора подписки

Сообщение Anonymous »

Я пытаюсь сделать то, что, как мне казалось, будет очень просто — получить объект подписки WCS, передав идентификатор подписки.
У меня есть действительный идентификатор подписки. Тот, который я могу открыть в админке и отредактировать. Я также могу получить объект сообщения с помощью get_post(), а также получить тип сообщения с помощью get_post_type(). Тип сообщения — shop_subscription.
Однако, когда я пытаюсь получить объект подписки через wcs_get_subscription(), он возвращает FALSE.
Вот мой код, который я пробовал:

Код: Выделить всё

$subscription_id = 50543;  //Valid subscription id which can be seen in WC Subscriptions

$post_type = get_post_type( $subscription_id); // Returns a post type of "shop_subscription"

$post = get_post( $subscription_id); // Returns the post object

$subscription = wcs_get_subscription( $subscription_id); // RETURNS FALSE -- FAILS TO GET THE SUBSCRIPTION OBJECT
Глядя на определение wcs_get_subscription() из WCS, оно кажется довольно простым, хотя я не знаком с методом order_factory. Тем не менее, кажется, что wcs_get_subscription() должен делать именно это — возвращать объект подписки.

Код: Выделить всё

function wcs_get_subscription( $the_subscription ) {

if ( is_object( $the_subscription ) && wcs_is_subscription( $the_subscription ) ) {
$the_subscription = $the_subscription->get_id();
}

$subscription = WC()->order_factory->get_order( $the_subscription );

if ( ! wcs_is_subscription( $subscription ) ) {
$subscription = false;
}

return apply_filters( 'wcs_get_subscription', $subscription );
}
Есть идеи, что я делаю не так?

Подробнее здесь: https://stackoverflow.com/questions/786 ... ription-id
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Php»