排序和显示自定义帖子类型Wordpress

帕特里克·齐贝尔·托格森

因此,我有一个选项页面,并创建了以下代码:

add_action('admin_menu', 'add_global_custom_options');
add_theme_support( 'post-formats', array( 'Random', 'Order', 'Category' ) );
function add_global_custom_options()
{
    add_options_page('Sort Registrar List', 'Sort Registrar List', 'manage_options', 'functions','global_custom_options');
}

function global_custom_options()
{
    $options = array (
    'random' =>  array(
      'post_type' => 'registrar',
        'posts_per_page' => -1,
        'orderby' => 'rand'
      ),
    'category' =>  array(
      'post_type' => 'registrar',
        'posts_per_page' => -1,
        'orderby' => 'ASC'
      ),
    'menu_order' =>  array(
      'post_type' => 'registrar',
        'posts_per_page' => -1,
        'orderby' => 'DESC'
      )
        );

?>
    <div class="wrap">
        <h2>Sort Registrar List</h2>
        <form method="post" action="">
            <?php wp_nonce_field('update-options') ?>
            <p><strong>Display Randomly:</strong><br />
                <input type="radio" name="random" size="45" value="<?php echo get_option('random'); ?>" />
            </p>
            <p><strong>Display by Category:</strong><br />
                <input type="radio" name="category" size="45" value="<?php echo get_option('category'); ?>" />
            </p>
            <p><strong>Display By Order:</strong><br />
                <input type="radio" name="order" size="45" value="<?php echo get_option('menu_order'); ?>" />
            </p>
            <p><input type="submit" name="Submit" value="Store Options" /></p>
            <input type="hidden" name="action" value="update" />
            <input type="hidden" name="page_options" value="random,category,menu_order" />
        </form>
    </div>
        <?php
}
?>

但是我有点迷失于如何让我的页面显示检查值。它应该随机显示自定义帖子类型-根据顺序或类别,具体取决于在管理面板的选项页中选择的内容。

有人有办法吗?

jycr753

设置不是100%正确,您从未点击过options.php来处理更新,却忘记了esc_attr; 该示例正在运行,但需要做更多的更改才能100%地完成您需要的操作,但是在这里您可以找到如何执行操作的一些线索如何使用主题的Wordpress设置API来设置和获取多项选择的值选项页面?;

function add_global_custom_options(){
    add_options_page(
        'Sort Registrar List',
        'Sort Registrar List',
        'manage_options',
        'order_by_options',
        'global_custom_options'
    );

    add_action('admin_init', 'register_new_options');
}
add_action('admin_menu', 'add_global_custom_options');

function register_new_options(){
    register_setting( 'global_custom_option', 'register_new_option_random' );
    register_setting( 'global_custom_option', 'register_new_option_category' );
    register_setting( 'global_custom_option', 'register_new_option_menu_order' );
}
add_action('admin_init', 'register_new_option');

function global_custom_options(){


    //this look unsed.... for debugger it is ;)
    $options = array (
        'random' =>  array(
            'post_type' => 'download',
            'posts_per_page' => -1,
            'orderby' => 'rand'
        ),
        'category' =>  array(
            'post_type' => 'download',
            'posts_per_page' => -1,
            'orderby' => 'ASC'
        ),
        'menu_order' =>  array(
            'post_type' => 'download',
            'posts_per_page' => -1,
            'orderby' => 'DESC'
        )
    );

    ?>
    <div class="wrap">
        <h2>Sort Registrar List</h2>

        <form method="post" action="options.php">
            <?php settings_fields( 'global_custom_option' ); ?>
            <?php do_settings_sections( 'global_custom_option' ); ?>
            <table class="form-table">
                <tr valign="top">
                    <th scope="row">Display Randomly</th>
                    <td><input type="text" name="register_new_option_random" value="<?php echo esc_attr( get_option('register_new_option_random') ); ?>" /></td>
                </tr>

                <tr valign="top">
                    <th scope="row">Display by Category:</th>
                    <td><input type="text" name="register_new_option_category" value="<?php echo esc_attr( get_option('register_new_option_category') ); ?>" /></td>
                </tr>

                <tr valign="top">
                    <th scope="row">Display By Order:</th>
                    <td><input type="text" name="register_new_option_menu_order" value="<?php echo esc_attr( get_option('register_new_option_menu_order') ); ?>" /></td>
                </tr>
            </table>
            <?php submit_button(); ?>
        </form>
    </div>
    <?php
}

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

WordPress的自定义帖子类型帖子不显示

WordPress自定义帖子类型列排序查询

显示自定义帖子类型存档的类别和帖子标题-Wordpress

在Wordpress中显示自定义帖子类型的内容

停止显示自定义帖子类型的wordpress搜索

显示自定义帖子类型类别 (Wordpress)

WordPress自定义帖子类型查询显示

WordPress自定义帖子类型

在Wordpress Gutenberg自定义块中显示自定义帖子类型的列表

Wordpress - 用于显示自定义帖子类型的自定义循环查询

查询自定义帖子类型并按自定义帖子类型排序

Wordpress 自定义帖子类型当前帖子

WordPress自定义帖子类型帖子未在管理员中显示

在循环中显示自定义帖子类型(专门针对该帖子)的WordPress类别

WP_Query以在Wordpress中按类别显示帖子(自定义帖子类型)

在Wordpress主页上显示来自自定义帖子类型的帖子?

自定义帖子类型仅显示最近的帖子

WORDPRESS:使用自定义帖子类型显示自定义分类法中某个类别的帖子

WordPress自定义metabox,在帖子,页面和所有自定义帖子类型上加载?

WordPress自定义帖子类型未显示在搜索结果中

Wordpress 自定义帖子类型显示类别的图像

如何停止在搜索结果中显示 WordPress 中的自定义帖子类型

Slick Slider 在自定义帖子类型 Wordpress 中显示不需要的图像

自定义帖子类型显示缩略图-WordPress

我的自定义帖子类型未按wordpress中的类别显示

WordPress的-自定义帖子类型混乱-分类法不显示

在WordPress的自定义帖子类型的永久链接中仅显示特定类别

WordPress自定义帖子类型存档小部件,仅显示CPT

如何在Wordpress中显示最后三种自定义帖子类型