官术网_书友最值得收藏!

Getting a list of pages that belong to a page type

In many advanced concrete5 applications, developers may need to find a list of all of the pages that belong to a given page type. In this example, we will get an array of pages that have a page type with the handle of right_sidebar.

Getting ready

If your instance of concrete5 does not have a page type with the handle of right_sidebar, feel free to adapt the recipe to suit your needs. We will continue using /config/site_post.php as our sandbox to run random code snippets, as well as our custom debugging function that we created in this chapter's introduction.

How to do it...

The steps for getting a list of pages belonging to a page type are as follows:

  1. Open /config/site_post.php in your code editor to try out the following code.
  2. Load the page type by its handle.
    $pageType = CollectionType::getByHandle('right_sidebar');
  3. Get the array of Page objects.
    $pages = $pageType->getPages();
  4. Dump the array to see its contents.
    foreach ($pages as $page) {
      echo $page->getCollectionTitle().'<br />';
    }
    exit;

How it works...

concrete5 simply uses the relational MySQL database to find all of the pages that are related to the page type. Be aware that concrete5 ignores permissions settings when this function is called, so this should really only be used for internal purposes.

See also

  • The Getting a page type by its handle recipe
主站蜘蛛池模板: 永靖县| 万山特区| 连南| 观塘区| 铁岭市| 盈江县| 会昌县| 根河市| 荥经县| 普陀区| 资兴市| 甘德县| 安顺市| 鄄城县| 寻甸| 双桥区| 兖州市| 邢台县| 金阳县| 靖宇县| 永昌县| 武乡县| 荔波县| 桐庐县| 忻城县| 屏边| 清水河县| 繁昌县| 武冈市| 巴楚县| 柏乡县| 苏尼特右旗| 峡江县| 文成县| 石家庄市| 许昌市| 丁青县| 城固县| 吉木乃县| 镇远县| 南川市|