=== Blogstream ===
Contributors: Mike Endicott
Tags: ai, blog, automation, openai, seo
Requires at least: 5.5
Tested up to: 6.8
Stable tag: 1.0.0
License: GPLv2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Requires PHP: 7.4
Text Domain: blogstream
Domain Path: /languages
Generate blog posts from topics using OpenAI, with AI-powered SEO metadata for Yoast SEO.
== Description ==
Blogstream streamlines your content creation workflow by generating draft blog posts from a list of topics using OpenAI’s AI models. Perfect for bloggers, content creators, and businesses looking to scale their content production while keeping full control over publishing.
**Key Features:**
* **AI-Powered Content Generation** – Generate blog post drafts using OpenAI’s GPT models.
* **Topic Management** – Add topics individually or import them via CSV.
* **Automatic SEO Metadata** – Generate meta titles and descriptions compatible with Yoast SEO.
* **Featured Image Generation** – Create AI-generated featured images using DALL·E 3.
* **Manual Publishing Workflow** – Review, edit, and publish generated drafts when you’re ready.
* **CSV Import** – Bulk import topics from CSV files.
* **Custom System Prompts** – Tailor AI behavior to match your content style.
**Perfect for:**
* Bloggers scaling content creation
* Content marketers needing regular blog posts
* Businesses streamlining their content strategy
* Anyone looking to leverage AI for content generation
**Requirements:**
* OpenAI API key
* WordPress 5.5 or higher
* PHP 7.4 or higher
== Installation ==
1. Upload the plugin files to the `/wp-content/plugins/blogstream` directory, or install the plugin through the WordPress Plugins screen directly.
2. Activate the plugin through the ‘Plugins’ screen in WordPress.
3. Navigate to **Blogstream** in your admin menu and configure your OpenAI API key.
4. Add topics and start generating posts!
== Frequently Asked Questions ==
= Does this work with Yoast SEO? =
Yes. Blogstream can automatically populate meta titles and descriptions for Yoast SEO when enabled in the settings.
= What AI models are supported? =
You can use any OpenAI API key and select from supported models, including GPT-4, GPT-4 Turbo, and GPT-3.5 Turbo.
= How much does it cost to use? =
You’ll need an OpenAI API key. Costs depend on the model and the content length. Typically, generating a post costs between $0.01 and $0.10.
= Can I import topics from a spreadsheet? =
Yes. Use the CSV import feature to bulk upload topics. The first column should contain topic titles, and the second column (optional) can contain categories.
= Does it generate featured images? =
Yes. When enabled, Blogstream can generate featured images using DALL·E 3 based on your post content.
= Can I schedule automatic post generation? =
No. In the free version, posts must be generated manually by clicking the **Generate Post Now** button. All generated posts are saved as drafts for your review and publishing.
== Frequently Asked Questions ==
= What is the purpose of the system prompt? =
The system prompt tells the AI exactly who it is writing as, who it is writing for, and how it should structure and style the content. It acts like a combined job description, editorial guide, and quality checklist. Without a clear prompt, the AI may produce generic or inconsistent results.
= How do I create a good system prompt? =
Follow these best practices when writing your system prompt:
– **Identity & Role:** Define who the AI is (e.g., “You are a blog writer for {{BLOG_NAME}}, a site dedicated to {{TOPIC}}.”)
– **Audience:** Describe the intended readers (e.g., business owners, professionals, or general readers).
– **Tone & Style:** Specify the voice, tone, and any author inspirations. For example, “Clear, direct, and lightly humorous.”
– **Structure:** Explain how to organize the post (e.g., introduction, main sections, conclusion) and any heading rules.
– **Best Practices:** List any specific constraints (e.g., word count, citation requirements, SEO considerations).
– **Golden Rule:** Include a clear rule or standard that the content must follow.
= Can I require the AI to output valid HTML? =
Yes. You should explicitly instruct the AI to format the post using HTML tags rather than Markdown. For example:
“Use
for main sections and
for subsections. Do not include an
heading; WordPress will handle that automatically.”
= What length should each blog post be? =
Aim for a range that balances substance with readability. For most blogs, a target of **600–900 words** works well, but you can adjust this in your prompt based on your audience.
= Should I include examples in my system prompt? =
Yes—examples help the AI learn your preferred tone and format. Consider referencing 1–2 sample posts or describing the style using well-known author comparisons.
= How do I avoid repetitive examples in generated content? =
Add a note in your prompt like:
“Important: Avoid referencing the same case study or example in every post. Use a variety of examples whenever possible.”
= What is the most important thing to remember? =
Be specific. A vague prompt leads to vague content. The clearer your instructions about voice, structure, and expectations, the more consistent your blog posts will be.
= Can I customize the system prompt later? =
Absolutely. You can edit the prompt anytime to adjust tone, length, or other preferences. Updating the prompt will immediately affect future generated posts.
= Is my content unique? =
Yes. The AI generates unique content based on your topics and system prompts. Always review generated content before publishing.
== Screenshots ==
1. **Manage Topics (screenshot-1.jpg)** – Add new topics manually, view topic status, or import topics in bulk using a CSV file.
2. **Generate Post (screenshot-2.jpg)** – See the next topic in the queue and generate a draft post with a single click.
3. **Settings (screenshot-3.jpg)** – Enter your OpenAI API key, choose a model, define a custom system prompt, and configure featured image options.
== Changelog ==
= 1.0.0 =
* Initial public release
* AI-powered blog post generation
* Topic management with CSV import
* Yoast SEO meta generation
* Featured image generation with DALL·E 3
* Manual draft generation workflow
* Custom system prompts
* OpenAI API integration
== Upgrade Notice ==
= 1.0.0 =
Initial release of Blogstream.
== Author ==
**Mike Endicott**
* [Website](https://blogstream.co/)
* [Support](mailto:support@blogstream.co)
== Support ==
For support, please visit [https://blogstream.co/](https://blogstream.co/) or email [support@blogstream.co](mailto:support@blogstream.co).