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 |
|