需要wordpress插件

时间:2012-03-02 06:13:00

标签: html wordpress wordpress-plugin

我必须制作一个简单的html表单的wordpress插件,进行简单的计算。这是我的表单代码。

<html>
<head>
    <title>Calculate</title>
    <script language="javascript">
            function addNumbers()
            {
                    var val1 = parseInt(document.getElementById("value1").value);
                    var val2 = parseInt(document.getElementById("value2").value);
                    var ansD = document.getElementById("answer");
                    ansD.value = val1 + val2;
            }
    </script>

</head>
<body>
   <input type="text" id="value1" name="value1" value="1"/>
   <input type="text" id="value2" name="value2" value="2"/>
   <input type="button" name="Sumbit" value="Click here"               
   onclick="javascript:addNumbers()"/>
   <input type="text" id="answer" name="answer" value=""/>
</body>
</html> 

由于

2 个答案:

答案 0 :(得分:1)

尝试查看此信息来源,以便您可以将您的页面与wordpress集成。

http://codex.wordpress.org/Writing_a_Plugin

http://corpocrat.com/2009/12/27/tutorial-how-to-write-a-wordpress-plugin/

答案 1 :(得分:0)

我认为这更像是一项设计任务,而不是纯粹的编码任务。

当在WordPress生成的页面上的某处输出代码时,我建议使用wp_enqueue_script()来包含您的javascript。或者,如果您确实需要内联脚本代码,则可以使用wp_head action。要打印实际的form元素,on选项将挂钩the_content filter,只需追加/添加内容。其他选项包括创建shortcode以允许用户在页面内容中插入[my_form],或创建template tag以包含在主题模板文件中。

但这完全取决于您的用户的需求以及您打算使用此插件实现的目标。也就是说,对于Ersel Aker建议的WordPress插件的概念至少有一个基本的理解,这绝对是一件好事,尽管插件正在做你想要的或者可能简单如下:

// Enqueue javascript (placed in plugins.js in js subdir of plugin)
wp_enqueue_script('plugin.js.handle', plugins_url('js/plugin.js', __FILE__), array());

// Add filter to the_content
add_action('the_content', 'my_plugin_content');

// Append form to page content under certain conditions
function my_plugin_content($content) {

    $form = '<input type="text" id="value1" name="value1" value="1"/> <input type="text" id="value2" name="value2" value="2"/> <input type="button" name="Sumbit" value="Click here" onclick="javascript:addNumbers()"/> <input type="text" id="answer" name="answer" value=""/>';

    if ( some_magic_conditions_are_met() ) {
        return $content . $form;
    }

    return $content;
}