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

Getting the blocks from an area

concrete5 pages can have several different areas where blocks can be added. Developers can programmatically get an array of all of the block objects in an area. In this recipe, we will load a page and get a list of all of the blocks in its main content area.

Getting ready

We will be using /config/site_post.php to run some arbitrary code here. You can place this code wherever you find appropriate, though.

This example assumes the presence of a page with a path of /about, and with a content area called content. Make the necessary adjustments in the code as needed.

How to do it...

The steps for getting the blocks from an area are as follows:

  1. Open /config/site_post.php in your code editor.
  2. Load the page by its path:
    $page = Page::getByPath('/about');
  3. Get the array of blocks in the page's content area.
    $blocks = $page->getBlocks('content');
  4. Loop through the array, printing each block's handle.
    foreach ($blocks as $block) {
      echo $block->getBlockTypeHandle().'<br />';
    }
  5. Exit the process.
    exit;

How it works...

concrete5 will return an array of block objects for every block that is contained within a content area. Developers can then loop through this array to manipulate or read the block objects.

主站蜘蛛池模板: 安仁县| 夹江县| 崇礼县| 沁源县| 通江县| 青州市| 友谊县| 长治县| 金溪县| 尼木县| 漳平市| 弥勒县| 西和县| 涞源县| 丹阳市| 保山市| SHOW| 永安市| 蕉岭县| 比如县| 湄潭县| 景泰县| 晋中市| 本溪| 灵丘县| 平乡县| 阿尔山市| 遂平县| 醴陵市| 张家港市| 西乌珠穆沁旗| 曲麻莱县| 卓尼县| 怀化市| 阿拉善盟| 高陵县| 泗水县| 泗洪县| 陇南市| 呼和浩特市| 朔州市|