像Joomla中的组件一样开发Wordpress插件



我的任务:
我有一个系统,本可以是一个独立的网站,但我想成为现有CMS的一部分,这样我就可以避免编写自己的用户管理系统,论坛,博客系统等。我本可以把它作为Joomla的一个组件!因为我以前一直在做这个,但不幸的是,我不喜欢Joomla!因此选择了Wordpress。

我的问题:
我的系统应该在Wordpress页面中同时提供管理页面和前端页面。我已经能够创建一个插件并添加管理页面,但我还没有找到如何制作前端。一个解决方案可能是在我选择的主题中创建一个页面模板,但由于我想尽可能地将我的组件与Wordpress分离,并且希望它与主题无关,这是一个糟糕的解决方案。

如何提供帮助:
请给我一个简单的例子,或者指导我使用教程或现有的Wordpress插件,让我看看如何制作我的插件。请记住,这个插件应该只在我的页面上使用,我只想使用Wordpress作为插件

的外壳

我认为您需要的一种方法是创建一个可以放入任何主题的自定义模板文件。然后,您只需要通过wpadmin后端创建一个空的Wordpress页面,并将页面模板设置为"MyPluginPageTemplate"。模板页面是独立于主题的,可以放到系统中的任何或所有主题中。

例如,创建一个名为"myplugin-template.php"的文件,并将其保存在活动主题文件夹的根目录中。(例如/wordpress/wp-content/themes/activetheme/myplugin-template.php)

在文件中放入以下代码:

<? 
 /**
 * Template Name: MyPluginPageTemplate
 *
 * A custom page template for my plugin
 *
 * The "Template Name:" bit above allows this to be selectable
 * from a dropdown menu on the edit page screen.
 *
 * @package WordPress
 * @subpackage 
 * @since 
 */
get_header(); ?>
        <div id="container">
            <div id="content" role="main">
            <?php
            $c = new MyPluginClass();
            $c->pluginInit();
             //Here follows the usual code to include page content in Wordpress - comment out here, because probably not required:
             //get_template_part( 'loop', 'index' );
             ?>
            </div><!-- #content -->
        </div><!-- #container -->
<?php get_footer(); ?>

在这个例子中,我使用了一个包含在类中的插件,但它可能只是一个直接的函数,比如"myplugin_init()"。

相关内容

最新更新