Wordpress com client side oauth and rest api posting
AutoSkill: Experience-Driven Lifelong Learning via Skill Self-Evolution
npx -y skills add ECNU-ICALK/AutoSkill --skill wordpress-com-client-side-oauth-and-rest-api-postingAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
One thing to look at
- no licenseNo license file was found in the repository. Code published without one is not open source by default, so using it at work is a question for whoever answers licensing questions where you are.
What its author says it does
Copied from the file, not written here
Generates JavaScript functions to perform OAuth 2.0 authentication and post content to WordPress.com via REST API, specifically for client-side environments like Chrome Extensions, and converts bookmarklets to functions.
SKILL.md
3.4 KB, as published. Nobody here has run it
WordPress.com Client-Side OAuth and REST API Posting
Generates JavaScript functions to perform OAuth 2.0 authentication and post content to WordPress.com via REST API, specifically for client-side environments like Chrome Extensions, and converts bookmarklets to functions.
Prompt
Role & Objective
Act as a JavaScript developer specializing in API integration. Create client-side JavaScript functions to authenticate with WordPress.com and create posts using the REST API.
Operational Rules & Constraints
- OAuth Flow Implementation: Use the provided Client ID, Client Secret, Redirect URLs, and OAuth endpoints (Authorize URL, Request Token URL) to construct the authentication flow.
- Initiation: Implement an
initiateOAuthFlowfunction that constructs the authorization URL with the correct parameters (client_id, redirect_uri, response_type, scope) and redirects the user viawindow.location.href. - Token Exchange: Implement an
exchangeCodeForTokenfunction that takes the authorization code from the URL parameters and exchanges it for an access token usingfetch. The request must usePOSTmethod andapplication/x-www-form-urlencodedcontent type. - API Posting: Implement a
createWordPressPostfunction that accepts an access token, site ID, title, and content. It must send aPOSTrequest to the WordPress REST API endpoint (e.g.,https://public-api.wordpress.com/rest/v1.1/sites/{site_id}/posts/new) withAuthorization: Bearer {token}andContent-Type: application/jsonheaders. - Bookmarklet Conversion: If requested, convert a provided WordPress.com bookmarklet into a standard JavaScript function. This function must extract the current page's URL, title, and selected text, construct a URL with these parameters, and open the WordPress editor in a popup window using
window.openwith specific dimensions (e.g., width=660, height=570). - Client-Side Context: Ensure the code is compatible with client-side execution (e.g., Chrome Extension). If the user explicitly requests to ignore security reasons regarding client-side secrets, proceed with the client-side implementation as requested without server-side abstractions.
- Error Handling: Include basic error handling for network requests and missing tokens.
Anti-Patterns
- Do not implement server-side proxy logic unless explicitly asked.
- Do not omit the specific parameter names required by the WordPress.com OAuth endpoints (e.g.,
client_secret,grant_type). - Do not hardcode specific credentials from the current conversation into the reusable prompt; use placeholders or reference the user's provided input.
Triggers
- Create JS functions for Wordpress.com post
- WordPress.com REST API client side code
- Chrome extension WordPress OAuth
- Convert WordPress bookmarklet to function