Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/275.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 在wordpress中添加新的顶级菜单时,是否可以动态创建CPT?_Php_Wordpress_Custom Post Type - Fatal编程技术网

Php 在wordpress中添加新的顶级菜单时,是否可以动态创建CPT?

Php 在wordpress中添加新的顶级菜单时,是否可以动态创建CPT?,php,wordpress,custom-post-type,Php,Wordpress,Custom Post Type,我已经到处寻找一个解决方案,我自己还不足以编写它,但也许有人对PHP有更多的知识可以帮助我 当客户端添加新的顶级菜单链接时,我基本上需要在管理面板中创建一个自定义帖子类型。这可能吗 我只有基本代码 function create_casestudies() { $labels = array ( 'name' => __('Case Studies'), 'singular_label' => __('Case Study'), 'add_new' =>

我已经到处寻找一个解决方案,我自己还不足以编写它,但也许有人对PHP有更多的知识可以帮助我

当客户端添加新的顶级菜单链接时,我基本上需要在管理面板中创建一个自定义帖子类型。这可能吗

我只有基本代码

function create_casestudies() {

$labels = array (
    'name' => __('Case Studies'),
    'singular_label' => __('Case Study'),
    'add_new' => __('Add New Case Study'),
    'add_new_item' => __('Add New Case Study'), 
    'edit' => __( 'Edit' ),
    'edit_item' => __( 'Edit Case Study' ),
    'new_item' => __( 'New Case Study' ),
    'view' => __( 'View Inspiration' ),
    'view_item' => __( 'View Case Study' ),
    'search_items' => __( 'Search Case Studies' ),
    'not_found' => __( 'No Case Studies found' ),
    'not_found_in_trash' => __( 'No Case Studies found in Trash' ),
    'parent' => __( 'Parent Case Studies' ),    
);

register_post_type(
    'casestudies',
    array( 
        'labels' => $labels,
        'public' => true,
        'show_ui' => true, 
        'capability_type' => 'post', 
        'menu_position' => 6,  
        'rewrite' => array('slug' => 'casestudy'),
        'supports' => array('title', 'editor', 'thumbnail')

    )
);
}   add_action('init', 'create_casestudies');

我假设需要对其进行编辑,以查看是否存在顶级nav,如果存在,则使用这些参数创建自定义帖子类型

当用户添加顶级菜单链接时,是否需要创建自定义帖子类型?还是只有一种自定义的帖子类型

如果它的CPT数量未定义,可能您最好将它们存储在plugin_选项或theme选项中,当用户添加另一个顶级菜单项时,您将向BD添加一个新项。然后您的init函数将循环此数组,动态创建CPT(并保持它们的创建,因为它在init上运行)

如果它只有一个CPT,那么就更简单了,只需添加一个选项来存储是否应该运行您的函数


希望这有帮助

到目前为止你试过什么?请发布不适合您的代码。同时使用搜索:我已经在管理面板中设置了自定义帖子类型,这些类型直接与主题中的某个部分或页面相关,但是由于客户端希望菜单动态,我需要在添加新的顶级菜单时创建自定义帖子类型。我一直在看register\u post\u type(),您应该在这里询问有关代码的问题,所以请添加您的代码。当添加新的顶级菜单时,您的代码是否已被调用?请将其添加到您的问题中,而不是作为注释。谢谢当菜单get是adding时,如何调用它?(你谈到了这一点,只是想知道基本部分在哪里)这有助于我理解如何处理代码,谢谢!但仍不完全确定从何开始。是的,当用户添加顶级菜单时,我需要创建一个CPT。因此,本质上,如果用户添加了一个名为“示例”的顶级链接,那么CPT将被称为“示例”,我不是100%确定,但也许您可以使用,因为菜单编辑触发了“添加菜单项”操作。当你有这样一个特定的操作时,你只需要弄清楚如何添加/编辑一个插件选项:)好的,所以我不完全确定,但是我们可以使用添加操作来调用一个函数来检查是否存在菜单导航,如果存在,获取当前的单个链接项并向它们添加自定义的帖子类型吗???这听起来很牵强。。