我在 mu-foldername 目录中创建了自定义帖子类型。由于此自定义帖子类型,我收到一条错误消息“更新失败。响应不是有效的 JSON 响应。”当我更新或创建默认博客文章时,甚至图像也没有出现在媒体库中。
注意:我使用的是 ACF 插件,我自己的自定义主题,插件已更新到最新版本。主题和插件之间没有冲突,我在本地环境中这样做。
有什么解决办法吗?
下面是我的自定义帖子类型。
<?php
function university_post_type() {
//event post type
register_post_type('event', array(
'supports' => array('title', 'editor', 'excerpt'),
'rewrite' => array('slug' => 'events'),
'has_archive' => true,
'public' => true,
'labels' => array(
'name' => 'Events',
'add_new_item' => 'Add New Event',
'edit_item' => 'Edit Event',
'all_items' => 'All Events',
'singular_name' => 'Event'
),
'menu_icon' => 'dashicons-calendar'
));
//program post
register_post_type('program', array(
'supports' => array('title', 'editor'),
'rewrite' => array('slug' => 'programs'),
'has_archive' => true,
'public' => true,
'labels' => array(
'name' => 'Programs',
'add_new_item' => 'Add New Program',
'edit_item' => 'Edit Program',
'all_items' => 'All Programs',
'singular_name' => 'Program'
),
'menu_icon' => 'dashicons-awards',
));
//professor post
register_post_type('professor', array(
'supports' => array('title', 'editor', 'thumbnail'),
'public' => true,
'labels' => array(
'name' => 'Professors',
'add_new_item' => 'Add New Professor',
'edit_item' => 'Edit Professor',
'all_items' => 'All Professors',
'singular_name' => 'Professor'
),
'menu_icon' => 'dashicons-welcome-learn-more'
));
}
add_action('init', 'university_post_type');
?>
解决上述问题或找到更好的前进道路。
“您的自定义帖子类型代码似乎存在问题,导致 JSON 响应无效。以下是可能发生这种情况的一些潜在原因:
• 语法错误:确保你的代码有正确的语法并且没有语法错误。您可以使用在线语法检查器或带有语法检查器的代码编辑器来确保您的代码没有错误。
• 插件冲突:如果您安装了任何修改自定义帖子类型或与之交互的插件,它们可能会导致与您的代码发生冲突。尝试停用任何此类插件,看看问题是否已解决。
• 永久链接:自定义帖子类型通常需要特定的永久链接结构。确保您的永久链接设置正确,并且它们与您的自定义帖子类型代码中指定的永久链接结构相匹配。
• JSON 格式:仔细检查您的自定义帖子类型代码是否返回有效的 JSON 响应。使用 JSON 验证器确保响应格式正确。
• 调试:使用 WordPress 调试功能启用调试模式并检查可能导致问题的任何错误或警告。
但这些都不是我问题的原因。 我在 php 标签外注释了一行,那是罪魁祸首。 现在我删除那条注释行后一切正常。这些小事造成了大问题。