新页面未获得菜单顺序

时间:2015-12-17 作者:Laura Nieuwenhuis

问题是home page 不再正确。即使菜单处于活动状态,新项目的顺序也与菜单的顺序不同:

\'orderby\'   => \'menu_order\', 
\'order\'     => \'asc\' 
在数据库中,我可以看到每一个新页面,type=project, 以前有一个menu_order 已分配但不再分配?这个menu_order 因为每一页都是0.

这怎么可能?

已添加:

谢谢你的帮助。项目是一种自定义的帖子类型。在自定义页面模板中,我有以下代码:

数组(\'projects\'),\'orderby\'=>\'menu\\u order\',\'order\'=>\'asc\',\'post\\u status\'=>\'publish\');if(have\\u posts())while(have\\u posts()):the\\u post();?>模板是由其他人创建的。网站所有者/编辑向我解释说,他更改了菜单顺序,然后页面以相同的顺序显示项目。但现在(自从新主题以来),这已经不起作用了。我在代码中唯一能找到的就是上面所看到的内容。我添加了页面属性,现在可以手动更改顺序。但这仍然不是客户过去的做法。。

1 个回复
SO网友:David Gard

为什么会发生这种情况menu_order0, 所以除非你手动更改Page/Post 插入到您的DB将正确地具有menu_order 设置

您可以设置menu_order 对于任何Page 通过下面的快速编辑(如果愿意,也可以通过编辑页面屏幕)-

Set Menu Order via Quick Edit

默认情况下,PostCustom Post Type 帖子没有muen_order 属性,意味着0 将始终使用,但这可以被覆盖(请继续阅读以了解如何使用)。

我从你的问题中看出type=project; 我不确定你指的是不是Custom Post Type, 或者如果type 是一个Custom Field.

假设“project”是自定义帖子类型,您可以添加menu_order 属性任意Custom Post Type 非常容易;只需确保您包括page-attributessupports 声明Custom Post Type -

\'supports\' => array(\'title\', \'editor\', \'excerpt\', \'thumbnail\', \'page-attributes\'),
如果您试图显示内置类型的帖子,则假设“project”是一个自定义字段Post, 意思是project 是一个Custom Field, 然后您需要添加menu_order 属性到Post 类型-

add_action(\'admin_init\', \'add_post_page_attributes\');
function add_post_page_attributes(){

    add_post_type_support( \'post\', \'page-attributes\' );

}
更改默认的“menu\\u order”(菜单顺序)

如果愿意,可以使用以下代码覆盖默认值menu_order 把它设置成你想要的任何东西。

我自己使用这个代码是因为我有一个独特的要求,即按非标准顺序订购1-100篇文章,然后按字母顺序订购其余的文章。我使用100 默认情况下,但您可以将其更改为您想要的任何内容-

add_filter(\'wp_insert_post_data\', \'set_default_menu_order\', \'99\', 2);
function set_default_menu_order($data, $postarr){

    if($data[\'post_type\'] === \'post\') :                                                     // Ensure we\'re saving a desired Post Type...
        $data[\'menu_order\'] = ($data[\'menu_order\'] == \'0\') ? \'100\' : $data[\'menu_order\'];   // ...Check to see if a \'menu_order\' has been set; if so, keep it, if not, use the default
    endif;

    return $data;   // Return the new data

}

相关推荐