ChildPages.php
716 Bytes
<?php
namespace ACP\Export\Model\Post;
use ACP\Export\Service;
class ChildPages implements Service {
private $post_type;
public function __construct( string $post_type ) {
$this->post_type = $post_type;
}
private function get_child_ids( $id ): array {
return get_posts( [
'post_type' => $this->post_type,
'post_parent' => $id,
'fields' => 'ids',
'posts_per_page' => -1,
'orderby' => 'menu_order',
'order' => 'ASC',
] );
}
public function get_value( $id ) {
$titles = [];
foreach ( $this->get_child_ids( $id ) as $post_id ) {
$titles[] = (string) get_post_field( 'post_title', (int) $post_id );
}
return implode( ', ', $titles );
}
}