WordPress不显示自定义管理表单发送的帖子信息

时间:2016-11-20 作者:iani

很抱歉,如果之前有人问过这个问题,我想创建我自己的插件,您可以在管理面板中输入信息,这些信息会显示在您的页面上。到目前为止,我已经创建了一个新的管理菜单的形式,但它没有发送信息到我的网站。请帮我一把。

 <?php

/*

Plugin Name: newsSlider-Plugin

*/

print_r($_SESSION);

add_action("admin_menu", "addMenu");

function addMenu()

{

    add_menu_page("News slider", "News slider", 5, "subMenu", "changeTextFunction");

    add_submenu_page("subMenu", "change style", "change style", 5, "changeStyle", 
"changeStyleFunction");

}

function changeTextFunction()

{

    echo "Write down the news you want to be displayed in the fields";

    echo \'

    <form method="post" action="">

    News field 1<input type="text" name="newsSlide1">

    News field 2<input type="text" name="newsSlide2">

    <input type="submit" name="submit" value="Submit"> 

    </form>\';

    echo $_SESSION["favcolor"];

}

function changeStyleFunction()

{

    echo "subsmenu hellooo";

}

if ($_SERVER["REQUEST_METHOD"] == "POST") {

$newsSliderInput1= test_input($_POST["newsSlide1"]);

session_start();

$_SESSION["favcolor"] = "yellow";

}

function test_input($data) {

  $data = trim($data);

  $data = stripslashes($data);

  $data = htmlspecialchars($data);

  return $data;

}

add_action("the_content", "displayNewsSlider");

function displayNewsSlider()

{

    echo $newsSliderInput1;

    echo "hi";

    echo $_SESSION["favcolor"];

}

?>

1 个回复
SO网友:JHoffmann

您的输入需要保存在某个地方,以便用户访问网站时可以检索。为了实现这一点,您可以使用update_option()get_option() 来自的函数WordPress Options API 存储值。

要存储值,请执行以下操作:

function changeStyleFunction() {
    update_option( \'newsSlide1\', test_input($_POST["newsSlide1"]) );
}
要检索值,请执行以下操作:

function displayNewsSlider() {
    echo get_option( \'newsSlide1\', \'\' );
}