I have created a Magento admin module with it’s own menu and page in the back-end, and am trying to recreate how CMS->Pages lists every page in it’s grid on my own page, then add my own column.
So far, after switching on template hints for the admin section, I have seen that the original Magento CMS section template is loaded from adminhtml\default\default\template\widget/grid.phtml.
I have copied the contents of this file to my page, but of course, the $this reference that the original uses doesn’t have the same loaded classes/data asociated with it on my own module page.
Can anyone tell me if I’m along the right lines with this, or how I might achieve the same effect as CMS->Pages, but on my own page and adding my own column?
To accomplish this you can create a custom module that extend /app/code/core/Mage/Adminhtml/Block/Cms/Block/Grid.php
Assuming that you’re adding a database field to cms table
Create /app/code/local/RWS/CmsGrid/etc/config.xml
Create /app/code/local/RWS/CmsGrid/Block/Cms/Block/Grid.php
See more info
Magento – overriding Adminhtml block
http://www.atwix.com/magento/adding-custom-attribute-to-a-cms-page/