set_404(); status_header(404); nocache_headers(); include get_query_template('404'); return; } // Guest without guest mode → login. if (!empty($ctx['is_guest']) && empty($ctx['settings']['guest_enabled'])) { $login = function_exists('aksrt_get_login_url') ? aksrt_get_login_url(get_permalink()) : wp_login_url(get_permalink()); wp_safe_redirect($login); exit; } // Invalid edit id → strip. if (!empty($_GET['edit']) && empty($ctx['edit_post'])) { wp_safe_redirect(remove_query_arg('edit')); exit; } // Assets. $css = get_template_directory() . '/assets/css/frontend/pages/submit.css'; if (file_exists($css)) { wp_enqueue_style( 'aksrt-submit', get_template_directory_uri() . '/assets/css/frontend/pages/submit.css', [], (string) filemtime($css) ); } $js = get_template_directory() . '/assets/js/front-submit.js'; if (file_exists($js)) { wp_enqueue_script( 'aksrt-front-submit', get_template_directory_uri() . '/assets/js/front-submit.js', ['jquery'], (string) filemtime($js), true ); $mini = get_template_directory() . '/assets/js/mini-upload.js'; if (file_exists($mini)) { wp_enqueue_script( 'aksrt-mini-upload', get_template_directory_uri() . '/assets/js/mini-upload.js', [], (string) filemtime($mini), true ); } if (!empty($ctx['can_upload_img']) || !empty($ctx['can_cover_image']) || !empty($ctx['can_cover_slide'])) { wp_enqueue_media(); } wp_localize_script('aksrt-front-submit', 'aksrtSubmitData', [ 'ajaxUrl' => admin_url('admin-ajax.php'), 'nonce' => wp_create_nonce('aksrt_submit'), 'restUrl' => esc_url_raw(rest_url('aksrt/v1')), 'restNonce' => wp_create_nonce('wp_rest'), 'leaveWarning' => !empty($ctx['settings']['leave_warning']), 'ai' => [ 'available' => !empty($ctx['ai_available']), 'summary' => !empty($ctx['ai_available']), 'tags' => !empty($ctx['ai_available']), ], 'i18n' => [ 'confirmLeave' => __('你有未保存的更改,确定要离开吗?', 'aksrt'), 'saving' => __('保存中...', 'aksrt'), 'saved' => __('草稿已保存', 'aksrt'), 'submitting' => __('提交中...', 'aksrt'), 'submitted' => __('投稿已提交', 'aksrt'), 'error' => __('操作失败,请重试', 'aksrt'), 'confirmDelete' => __('确定要删除这个草稿吗?', 'aksrt'), 'aiGenerating' => __('生成中…', 'aksrt'), 'aiFailed' => __('AI 生成失败', 'aksrt'), 'needContent' => __('请先填写正文内容', 'aksrt'), 'aiFilled' => __('已填入,可继续编辑', 'aksrt'), 'lastSaved' => __('最后保存:', 'aksrt'), 'preview' => __('预览文章', 'aksrt'), 'pickImage' => __('选择图片', 'aksrt'), 'pickVideo' => __('选择视频封面图', 'aksrt'), 'videoUrl' => __('请输入视频地址', 'aksrt'), ], ]); } get_header(); ?>