php WordPress插件选项页面

oxf4rvwz  于 2023-10-15  发布在  PHP
关注(0)|答案(3)|浏览(114)

我试图创建一个WordPress的Twitter插件,我的选项页面,我需要保存到我设法创建表的形式。我已经创建了表单,现在我需要知道如何确保它发布到我的表中?我有下面的代码,我的表名是wp_twitter_carla。

function register_mysettings() {
    //register our settings
    register_setting( 'twitter-settings-group', 'twitteruser' );
    register_setting( 'twitter-settings-group', 'notweets' );
    register_setting( 'twitter-settings-group', 'replies' );
    register_setting( 'twitter-settings-group', 'retweets' );
}

function twitter_settings_page() {
?>
<div class="wrap">
<h2>Twitter Feed by Carla</h2>

<form method="post" action="options.php">
    <?php settings_fields( 'twitter-settings-group' ); ?>
    <?php do_settings_sections( 'twitter-settings-group' ); ?>
    <table class="form-table">
        <tr valign="top">
        <th scope="row">Twitter Username</th>
        <td><input type="text" name="twitteruser" value="<?php echo get_option('twitteruser'); ?>" /></td>
        </tr>

        <tr valign="top">
        <th scope="row">Number of tweets to show</th>
        <td><input type="text" name="notweets" value="<?php echo get_option('notweets'); ?>" /></td>
        </tr>

        <tr valign="top">
        <th scope="row">Show replies?</th>
        <td><input type="text" name="replies" value="<?php echo get_option('replies'); ?>" /></td>
        </tr>

        <tr valign="top">
        <th scope="row">Show retweets?</th>
        <td><input type="text" name="retweets" value="<?php echo get_option('retweets'); ?>" /></td>
        </tr>
    </table>

    <?php submit_button(); ?>

</form>
</div>
flseospp

flseospp1#

Wordpress应该保存你的设置在wp_options表中。打开phpmyadmin,选择你的数据库,然后点击SQL写在那里这个SQL代码

SELECT * FROM `wp_options` WHERE `option_name` LIKE '%twitter-settings-group%' OR `option_value` LIKE '%twitter-settings-group%

应该有一个结果wp是序列化您的表单,并保持在数据库中的一行。
最好的问候,大卫。

olmpazwi

olmpazwi2#

虽然这不能直接回答你的具体问题,但我建议你使用Redux Framework。这是一个基于WordPress设置API的选项框架,非常容易使用。它将为您处理所有的数据库发布,检索等。花点时间学习他们的API绝对是值得的,我想你会很高兴的。

j2datikz

j2datikz3#

当你使用register_settings();时,wordpress会将这些设置存储在wp_options表中。请参阅Options-API Documentation以获取完整示例。
您可以更改HTML来设置,所以WordPress正在为您处理它:

<form action="options.php" method="post">
    <?php
        // output security fields for the registered setting "wporg"
        settings_fields( 'wporg' );
        // output setting sections and their fields
        // (sections are registered for "wporg", each field is registered to a specific section)
        do_settings_sections( 'wporg' );
        // output save settings button
       submit_button( 'Save Settings' );
    ?>
</form>

WordPress会自动接收值并将其存储在选项表中。您还可以添加一个验证回调来检查和清理值。

相关问题