Testin post
Ye ek bada project hai, isliye pehle poora roadmap samjhaata hoon: kya banana hai, kahan banana hai (backend/frontend), aur kis order mein. Aap bolo to main har step ka ready code bhi file ke roop mein bana dunga.
Overall Plan
Aapko basically 3 cheezein chahiye: user registration/login, frontend se post submit karna, aur admin approve/reject. WordPress mein ye sab built-in cheezon se ho jaata hai, bas custom theme + thoda code chahiye.
1. Backend (WordPress ke andar)
A. Child theme / custom theme banao
wp-content/themes/mytheme/ folder banao
Files: style.css, functions.php, index.php, header.php, footer.php
B. Custom Post Type (CPT) register karo (functions.php mein)
Naam: user_post (ya jo bhi aapki site ka topic ho)
supports: title, editor, thumbnail, author
Default status pending rakhna (taaki bina approval publish na ho)
C. User roles
Naya role contributor_user banao ya WordPress ka default Contributor use karo
Contributor ki khaas baat: wo post likh sakta hai par publish nahi kar sakta, sirf pending mein jaati hai. Yahi approval system ka base hai.
D. Admin approve/reject
Dashboard → Posts → Pending filter se aap approve (Publish) ya reject (Trash / Draft) kar sakte ho
Reject karne par user ko email notification bhejne ke liye transition_post_status hook use karo
Optional: custom status rejected register kar sakte ho
E. Security (zaroori)
Nonce verification, sanitize_text_field, wp_kses_post
Login/register par reCAPTCHA
File upload mein type aur size limit
2. Frontend (Theme ke templates)
Page Kaam Kaise
Register User signup form Custom page template + wp_create_user()
Login User sign in wp_login_form() ya custom form + wp_signon()
Submit Post Title, content, image form Page template, form submit par wp_insert_post() with post_status => ‘pending’
My Posts / Dashboard User apni posts ka status dekhe (Pending / Approved / Rejected) WP_Query with author => current_user_id
Home / Archive Sirf approved posts dikhao Normal loop
UI/UX ke liye:
Mobile-first responsive CSS (Flexbox/Grid)
Form validation (JS) + success/error messages
Loading states, clean cards, consistent spacing
Chaho to AJAX se form submit karo (page reload bina)
3. Step-by-step order
Theme ka basic skeleton (header/footer/style)
CPT + roles register (functions.php)
Register & Login pages
Submit Post form + wp_insert_post handler
User dashboard (“My Posts”)
Admin approve/reject + email notifications
Styling, UI polish, testing
Security hardening
Aapse kuch cheezein clarify karni hain
Site ka topic kya hai? (blog, recipes, jobs, reviews, etc.) taaki post fields decide ho sakein
Posts mein kya-kya chahiye? Sirf title + content, ya image, category, tags bhi?
Plugins allowed hain (jaise ACF) ya pure custom code chahiye?
Reject hone par user ko reason dikhana hai?
Inka jawab de do, phir main aapke liye complete theme ka code (functions.php, templates, CSS) ready karke de dunga, aap seedha copy-paste ya upload kar sakoge.