Theming and Templates
The module renders blog content using standard Magento layout XML and .phtml templates. Override them in your theme using Magento’s standard theme override mechanism.
Layout Handles
Each blog page type has a dedicated layout handle. See the Layout Handles reference for the full list.
Template Files
All default templates are in:
app/code/OrangeCollar/WordPressIntegration/view/frontend/templates/
| Template | Purpose |
|---|---|
blog/ | Blog post listing |
blog/ | Single post page |
blog/ | Category archive |
blog/ | Tag archive |
blog/ | Author archive |
blog/ | Search results |
menu.phtml | WordPress navigation menu |
widget/ | Recent posts widget |
widget/ | Featured post widget |
widget/ | Category posts widget |
sidebar/ | Sidebar categories |
sidebar/ | Sidebar tags |
sidebar/ | Sidebar archive |
sidebar/ | Sidebar search |
sidebar/ | Sidebar recent posts |
ViewModels
Three ViewModels are provided for use in templates:
Post ViewModel
OrangeCollar\WordPressIntegration\ViewModel\Post
Provides helper methods for rendering a single post:
getPost(): Post- the current post data objectgetFormattedDate(Post $post): string- formatted publish dategetCanonicalUrl(Post $post): string- the Magento-side URL for the postgetCategoryUrl(Category $category): string- URL for a category archive
PostList ViewModel
OrangeCollar\WordPressIntegration\ViewModel\PostList
Provides helper methods for listing pages:
getPosts(): array- array of Post objectsgetCurrentPage(): intgetTotalPages(): intgetPaginationUrl(int $page): string
Breadcrumbs ViewModel
OrangeCollar\WordPressIntegration\ViewModel\Breadcrumbs
Used by BreadcrumbPlugin to build breadcrumb trails for all blog page types.
Overriding Templates
To override a template in your theme, copy it to:
app/design/frontend/Your/Theme/OrangeCollar_WordPressIntegration/templates/
maintaining the same relative path as the original.
For example, to override the post view template:
app/design/frontend/Your/Theme/OrangeCollar_WordPressIntegration/templates/blog/post/view.phtml