Feature #14457 » cac-fill-blog-public-courses.php
1 |
<?php
|
---|---|
2 | |
3 |
$course_ids = get_posts( [ |
4 |
'post_type' => 'cac_course', |
5 |
'nopaging' => true, |
6 |
'fields' => 'ids', |
7 |
] ); |
8 | |
9 |
foreach ( $course_ids as $course_id ) { |
10 |
$course = new \CAC\Courses\Course( $course_id ); |
11 | |
12 |
$has_public_group_or_site = false; |
13 |
foreach ( $course->get_site_ids() as $site_id ) { |
14 |
$blog_public = (int) get_blog_option( $site_id, 'blog_public' ); |
15 |
if ( 1 === $blog_public || 0 === $blog_public ) { |
16 |
$has_public_group_or_site = true; |
17 |
break; |
18 |
}
|
19 |
}
|
20 | |
21 |
if ( ! $has_public_group_or_site ) { |
22 |
foreach ( $course->get_group_ids() as $group_id ) { |
23 |
$group = groups_get_group( $group_id ); |
24 |
if ( 'public' === $group->status ) { |
25 |
$has_public_group_or_site = true; |
26 |
break; |
27 |
}
|
28 |
}
|
29 |
}
|
30 | |
31 |
if ( $has_public_group_or_site ) { |
32 |
update_post_meta( $course_id, 'has-public-group-or-site', 1 ); |
33 |
} else { |
34 |
delete_post_meta( $course_id, 'has-public-group-or-site' ); |
35 |
}
|
36 |
}
|
37 |