Skip to content
电脑工程师入门

电脑工程师入门

create tomorrow, create happiness

  • 实用软件教程
    • Excel
    • WordPress
    • Powerpoint
    • PowerApps
    • PowerAutomateDesk
  • 计算机语言入门
    • PHP
    • Bootstrap
    • JavaScript
    • Python
    • HTML
    • WordPress
  • 咨询
  • Home
  • Wordpress
  • 开发WordPress 插件(初学者)
  • HOME
  • Wordpress
  • 开发WordPress 插件(初学者)

开发WordPress 插件(初学者)

Wordpress

如果您利用Wordpress来开发应用程序的话,学会创建一个 WordPress 插件是一个非常重要的步骤,
那么让我们仔细看看如何开发插件。

什么是插件?

如果您要自定义 WordPress 模板,您可以在 functions.php 中编写代码。
基本上只需将这段代码放在插件文件夹中,它就成为一个插件。
我觉得把依赖模板的东西写成functions.php是可以的,但是如果是某种程度上可以反复利用的功能,做成插件还是更加方便的。

简易插件

让我们看一个简单的例子。假设您在 functions.php 中有这样的代码:

function show_message() {
    echo 'good morning';
}

这是当您在模板文件中写入“<?php show_message(); ?>”时显示“good morning”的代码。

现在我们把它做成一个插件。

插件在“wp-content”→“plugins”中创建。
在这里,创建一个名为“show-message”的文件夹,并在其中创建一个名为“show-message.php”的文件。

插件文件除了代码外,还必须描述“插件名称”、“描述”等插件信息。

<?php
/*
Plugin Name: Show Message
Plugin URI: http://www.flashyonder.com/plugin
Description: show message 
Author: SunnyDP
Version: 0.1
Author URI: http://www.flashyonder.com
*/
 
function show_message() {
    echo 'good morning';
}

如下:

创建文件时,您刚刚创建的插件将添加到管理屏幕上的插件列表中。

如果激活该插件,您将能够执行与在 functions.php 中编写时相同的操作。

显示在管理屏幕上输入的文本的插件

接下来,让我们通过显示在管理屏幕上输入的信息,就像在模板文件中一样,来做一些更像插件的事情。

早些时候,只有一个功能,但这次我将在类的基础上创建它。
将“show-message.php”替换为以下内容:

class ShowMessage {
    function __construct() {
    }
}
$stext = new ShowMessage;

我们编写一个Class并即时实例化(执行)它。
“__construct”是实例化时执行的方法。我们将在此编写初始化等第一个处理。

选项屏幕

创建一个选项屏幕以输入文本。

class ShowMessage {
    function __construct() {
      add_action('admin_menu', array($this, 'add_pages'));
    }
    function add_pages() {
      add_menu_page('设定文本','设定文本',  'level_8', __FILE__, array($this,'show_text_option_page'), '', 26);
    }
    function show_text_option_page() {
    //在选择页面上显示的内容
    }
}
$showtext = new ShowMessage;

在构造函数中编写“admin_menu”过滤器。

add_action('admin_menu','add_pages');

, 但在Class中指定方法时,第二个参数是一个包含 $this 的数组。

add_action('admin_menu', array($this, 'add_pages'));

菜单名称和放置菜单的位置在第 6 行的“add_menu_page”中指定。
在这里,它被放置在“评论”按钮下与其他菜单相同的层次结构中,但也可以将其显示在每个按钮的子菜单中。请启动插件,确认菜单已添加到管理屏幕。我们还没有写任何东西,所以不会看到任何东西。

选项画面的内容

在“show_text_option_page”方法中写入要在选项屏幕上显示的内容。

function show_text_option_page() {
    //如果存在$_POST['showtext_options'])的值,保存
    if ( isset($_POST['showtext_options'])) {
        check_admin_referer('shoptions');
        $opt = $_POST['showtext_options'];
        update_option('showtext_options', $opt);
        ?><div class="updated fade"><p><strong><?php _e('Options saved.'); ?></strong></p></div><?php
    }
    ?>
    <div class="wrap">
    <div id="icon-options-general" class="icon32"><br /></div><h2>设定文本</h2>
        <form action="" method="post">
            <?php
            wp_nonce_field('shoptions');
            $opt = get_option('showtext_options');
            $show_text = isset($opt['text']) ? $opt['text']: null;
            ?> 
            <table class="form-table">
                <tr valign="top">
                    <th scope="row"><label for="inputtext">Message</label></th>
                    <td><input name="showtext_options[text]" type="text" id="inputtext" value="<?php  echo $show_text ?>" class="regular-text" /></td>
                </tr>
            </table>
            <p class="submit"><input type="submit" name="Submit" class="button-primary" value="保存" /></p>
        </form>
    <!-- /.wrap --></div>
    <?php
}

它基本上是一个简单的形式。

[update_option]允许在wordpress的数据库的表,[wp_options]中添加或更新记录。

在模板中显示的方法

它可能不是必需的,因为它只读取选项,但我将创建一个在模板中显示它的方法。

function get_text() {
  $opt = get_option('showtext_options');
  return isset($opt['text']) ? $opt['text']: null;
}

现在,在模板文件中,您可以通过执行以下操作来查看您输入的内容:

<?php echo esc_html($showtext->get_text()); ?>
标签:Wordpress

文章导航

❮ Previous Post: 第十二章 【超入门】Bootstrap的弹窗
Next Post: 开发wordpress插件(中级) ❯

关联内容

Wordpress
操作简介:禁用评论
Wordpress
single.php 和 page.php 之间的区别
Wordpress
如何制作自己的面包屑
Wordpress
[图像的蓬松显示] Easy FancyBox的使用和设置方法
Wordpress
在 WinSCP 中显示隐藏文件
Wordpress
如果 WordPress 中没有 .htaccess 文件怎么办

实用软件教程

  • Powerpoint
  • Excel
  • PowerAutomateDesk
  • Wordpress
  • Powerapps

编程语言入门

  • JavaScript
  • HTML
  • PHP
  • Python
  • Bootstrap

Copy right by flashyonder.com