How to create custom page templates with plugins?

Posted by Prem Tiwari | Updated on

get_page_template() can be overridden via the page_template filter. If your plugin is a directory with the templates as files in them, it’s just a matter of passing the names of these files. If you want to create them “on the fly” (edit them in the admin area and save them in the database?), you might want to write them to a cache directory and refer to them, or hook into template_redirect and do some crazy eval() stuff.

A simple example for a plugin that “redirects” to a file in the same plugin directory if a certain criterium is true:

If you like this question & answer and want to contribute, then write your question & answer and email to freewebmentor[@] Your question and answer will appear on and help other developers.

Related Questions & Answers