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

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
主站蜘蛛池模板: 巴林左旗| 安泽县| 金秀| 张北县| 临桂县| 黄浦区| 当涂县| 江达县| 仪征市| 博白县| 岑巩县| 高碑店市| 密山市| 青岛市| 青田县| 铁力市| 象山县| 南京市| 大同市| 大安市| 苏尼特左旗| 容城县| 中阳县| 股票| 蓬溪县| 乌兰察布市| 延安市| 犍为县| 新乐市| 增城市| 台州市| 邯郸市| 龙陵县| 北宁市| 大新县| 壶关县| 和静县| 正蓝旗| 拉萨市| 石家庄市| 韶山市|