指定した固定ページのページID(投稿ID)を含む子ページ・孫ページのページIDを配列で取得する方法を書いていきます。
親固定ページIDを含む子・孫ページIDの配列を取得する
/**
* 指定した固定ページIDを含む子・孫ページIDの配列を取得する
*/
function get_child_of_ids($parent_id)
{
//子孫のページを取得するための親固定ページのID
$args = ['child_of' => $parent_id ];
//固定ページを取得する
$pages = get_pages($args);
//固定ページID格納用の配列を宣言
$page_ids = array();
//子ページがあり配列で取得出来ていれば処理開始
if ( is_array($pages) && count($pages) ) {
foreach ($pages as $page) {
//固定ページIDのみ配列に追加
$page_ids[]= $page->ID;
}
}
//親固定ページIDを配列に追加
$page_ids[] = $parent_id;
//
return $page_ids;
}
動作環境情報
エックスサーバー(x10) PHP 7.3.16 MySQL 5.7 WordPress 5.4.2
コメント