I need a front end user registration page, login page, create new post page, edit post page, and a dashboard listing the users posts. These pages should be a new template theme file (you can start with [url removed, login to view] as a reference). More detailed ..
1. All These pages must be a wordpress template file (theme file like [url removed, login to view])
2. All pages should reference a new css theme file that we can edit to customize the look and feel of our new pages.
3. New user registration page
1. Registration page should use extra user profile fields from "cimy user extra fields" [url removed, login to view]
2. Registration page should let users pick a password and not have it emailed to them
3. Registration page should send a email confirming their email address before they can continue to any other functionality.
4. Registration page should not use wp-register or wp-login or have anything to do with the back end at all
5. Registration page should validate user input fields and display appropriate errors to the user and highlight a field if a field is blank or incorrect
4. User Login page
1. User login page should be a basic user/pass login page.
2. Should contain a forgot password feature to allow users to reset their password via email
1. After a user completes registration (or a user login) they will come to their "dashboard"
2. The dashboard will have two links at the top
1. Create New Article
2. Edit Profile
3. Below those three links there will be a paginated table (15 posts per page) with the articles the user submitted. The table will have the following in it
2. Clickable Article Title that goes to article on the website.
3. Article created date.
4. Edit link that goes to the edit article page.
5. Article status (published, pending approval, etc)
6. Pageviews for article (that data is stored in our wordpress popular post tables from this plugin [url removed, login to view]
6. Create new Article Page
1. Should have the following fields
1. Article Title
2. Article Text (in a wysiwyg editor like tinymce)
3. Article category (only allow and require 1 category selection)
4. Article Tags (only allow up to 5 tags)
5. upload image feature (save image to uploads year and month folders)
2. Create a hook that calls a function before the post is published. The function will have no logic in it now but we want a place to possibly add a spam check or filter in the future.
3. Strip potentially dangerous code from the tinymce editor but allow for embedded videos to still work
4. When article is submitted check to make sure they are not submitting the same or similar article twice for this user.
1. To do this first strip out all HTML and common words from a common word list (create new sql table for word list)
2. Split the article into sentences.
3. Then Hash each sentence and check to see (in a new sql table, table contains postID, UserID, Hash) if any of the hashes exist.
4. If more then 30% (make this a configurable value) of the hashes exist then display a error to the user saying we dont allow duplicate post and your post is similar to this one (display post link(s))
5. If the article is unique then insert all the hashes into the new table (with postID, UserID, Hash)
7. Edit Article Page
1. should have all the functionality of the "new article page" and allow you to edit everything. Remember when checking if the article is unique to ignore the hashes from the same articleID.
2. Dont allow a user to change over 50% of the article.
3. Make sure you delete the old hash values for the article and insert new ones.