Custom_Background::wp_set_background_image
Устарела с версии 3.5.0. Больше не поддерживается и может быть удалена. Рекомендуется заменить эту функцию на аналог.
Метод класса: Custom_Background{}
Хуки из метода
Возвращает
null. Ничего (null).
Использование
$Custom_Background = new Custom_Background(); $Custom_Background->wp_set_background_image();
Список изменений
| С версии 3.4.0 | Введена. |
| Устарела с | 3.5.0 |
Код Custom_Background::wp_set_background_image() Custom Background::wp set background image WP 6.9.4
public function wp_set_background_image() {
check_ajax_referer( 'custom-background' );
if ( ! current_user_can( 'edit_theme_options' ) || ! isset( $_POST['attachment_id'] ) ) {
exit;
}
$attachment_id = absint( $_POST['attachment_id'] );
$sizes = array_keys(
/** This filter is documented in wp-admin/includes/media.php */
apply_filters(
'image_size_names_choose',
array(
'thumbnail' => __( 'Thumbnail' ),
'medium' => __( 'Medium' ),
'large' => __( 'Large' ),
'full' => __( 'Full Size' ),
)
)
);
$size = 'thumbnail';
if ( in_array( $_POST['size'], $sizes, true ) ) {
$size = esc_attr( $_POST['size'] );
}
update_post_meta( $attachment_id, '_wp_attachment_is_custom_background', get_option( 'stylesheet' ) );
$url = wp_get_attachment_image_src( $attachment_id, $size );
$thumbnail = wp_get_attachment_image_src( $attachment_id, 'thumbnail' );
set_theme_mod( 'background_image', sanitize_url( $url[0] ) );
set_theme_mod( 'background_image_thumb', sanitize_url( $thumbnail[0] ) );
exit;
}