
Bug编译狮
在WordPress中,你可以通过以下步骤来保存更改而不立即发布:
- 编辑页面或文章:首先,在WordPress后台的“写作”部分找到你需要修改的内容。
- 点击编辑按钮:点击页面或文章旁边的小笔图标(通常是蓝色的),这会打开编辑模式。
- 输入新内容:在这里你可以添加、删除或者修改任何文本和/或代码。
- 保存更改:完成编辑后,点击顶部菜单栏中的“保存草稿”,而不是“发布”。这样可以暂时保存你的更改,而不会立刻更新到网站上。
示例代码
假设你想在WordPress中添加一个简单的CSS样式以改变文章标题的颜色,你可以这样做:
<!-- 添加一个class="custom-color"到每个需要颜色变化的文章 -->
<div class="custom-color">
<h1>Title of the Article</h1>
</div>
/* 在functions.php文件中添加以下CSS */
.add-on .custom-color h1 {
color: #ff0000; /* 设置为红色 */
}
使用步骤及效果
- 创建一个新的文章:登录到WordPress后台,选择“写作”,然后点击“新建文章”。
- 插入HTML代码:在编辑模式下,复制并粘贴上述代码到文章中,确保
<div>标签内有<h1>标签作为文章标题。 - 保存草稿:点击顶部菜单栏中的“保存草稿”。
此时,你的文章标题已经改变了颜色,但还没有被发布到网站上。如果你现在点击“发布”按钮,你的更改将会被应用到整个网站。
这个方法非常实用,尤其是在开发过程中,允许你先在本地测试新的功能或设计,然后再决定是否要将其发布到正式网站上。

黑板前的Bug语法讲师
要使WordPress中的更改不立即发布,请遵循以下步骤:
步骤 1: 创建自定义功能
首先,在WordPress的主题或插件文件夹中创建一个名为 functions.php 的新文件。
// 自定义功能文件
function my_custom_save_draft() {
if (isset($_POST['submit'])) {
// 检查提交的数据是否包含特定字段
$draft_id = isset($_GET['id']) ? $_GET['id'] : '';
// 检查是否已存在此ID的Draft记录
if ($draft_id && wp_is_post_revision($draft_id)) {
// 更新或修改Draft
update_post_meta($draft_id, 'my_custom_field', $_POST['custom_field']);
// 删除旧的Draft版本
delete_post_meta($draft_id, 'draft');
} else {
// 如果不存在则新建Draft
$new_draft = array(
'post_title' => sanitize_text_field($_POST['title']),
'post_content' => sanitize_text_field($_POST['content'])
);
wp_insert_post($new_draft);
add_post_to_draft_array(wp_get_post_id_by_post_name('new_draft'));
}
}
}
add_action('wp_ajax_my_custom_save_draft', 'my_custom_save_draft');
步骤 2: 编辑WordPress主题
接下来,编辑您的WordPress主题的 functions.php 文件以使用自定义函数。添加上述 functions.php 文件到您当前的WordPress主题目录下。
// 新增自定义功能
function custom_function($hook) {
global $post;
if ('page' === $hook) {
$post_id = get_queried_object_id();
$post_type = get_post_type_object(get_post_type($post_id));
$fields = apply_filters('the_fields', $post_type->fields);
if (!empty($fields['custom_field'])) {
$field_value = isset($_POST[$fields['custom_field']]) ? sanitize_text_field($_POST[$fields['custom_field']]) : '';
$post->post_status = 'draft';
update_post_meta($post_id, 'custom_field', $field_value);
update_post_metadata($post_id, 'custom_field', $field_value);
}
}
return $post;
}
add_filter('pre_get_posts', 'custom_function');
步骤 3: 测试和部署
现在,保存更改并测试网站。检查是否有任何新的自定义字段被设置。
示例代码:
- 测试页面:访问
/admin/edit.php?post_type=new_draft。 - 更新页面:在新插入的页面上输入数据并点击保存(
<input type="submit" value="Save Draft">)。
注意事项
- 在实际生产环境中,应确保在开发阶段对自定义功能进行充分测试,避免影响现有用户体验。
- 使用自定义功能时请确保遵守WordPress的版权政策,尊重其他用户的权益。
通过以上步骤,您可以为WordPress创建一个自定义功能,以便在保存更改时不立即发布。这有助于保护网站的隐私性和安全性,同时允许管理员控制哪些内容可以立即发布。

