-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathreadme.txt
More file actions
198 lines (139 loc) · 8.95 KB
/
readme.txt
File metadata and controls
198 lines (139 loc) · 8.95 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
=== Owlstack ===
Contributors: alihesari
Donate link: https://owlstack.dev
Tags: social media, auto publish, telegram, twitter, facebook
Requires at least: 6.4
Tested up to: 6.9
Stable tag: 1.0.0
Requires PHP: 8.1
License: GPLv2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Publish content to Telegram, X (Twitter), Facebook, Instagram, LinkedIn, Discord, and more — directly from WordPress.
== Description ==
Owlstack lets you automatically share your WordPress posts to social media platforms with a single click or on publish. Powered by the [Owlstack Core](https://owlstack.dev) engine, it provides a seamless publishing experience.
**Supported Platforms:**
* **Telegram** — Send posts to channels and groups via Bot API
* **X (Twitter)** — Tweet your posts with media support
* **Facebook** — Share posts to Facebook Pages
* **Instagram** — Publish to Instagram via the Graph API
* **LinkedIn** — Share posts to LinkedIn profiles and company pages
* **Discord** — Send posts to Discord channels via webhooks
* **Pinterest** — Pin content to Pinterest boards
* **Reddit** — Submit posts to subreddits
* **Slack** — Post to Slack channels via webhooks
* **Tumblr** — Share posts to Tumblr blogs
* **WhatsApp** — Send messages via WhatsApp Business API
**Key Features:**
* **Admin Settings Page** — Configure platform credentials and proxy settings from a clean admin UI
* **Publish Meta Box** — Select platforms and publish directly from the post editor
* **Auto-Publish** — Automatically share posts when they're published
* **Delivery Logs** — Track all publishing activity with status, errors, and external links
* **REST API** — AJAX endpoints for connection testing, manual publishing, and log management
* **WP HTTP API** — Uses native WordPress HTTP functions instead of cURL
* **WordPress Events** — Full hook support with `owlstack_post_published` and `owlstack_post_failed` actions
* **Token Storage** — Encrypted OAuth token storage via `wp_options`
**For Developers:**
Owlstack provides a simple PHP API for publishing from themes or other plugins:
// Publish to Telegram
owlstack()->telegram('Hello from WordPress!');
// Publish to Twitter/X
owlstack()->twitter('Hello from WordPress!');
// Publish to a specific platform by name
owlstack()->publish($post, 'linkedin');
// Publish to all configured platforms
owlstack()->toAll($post);
== Installation ==
1. Upload the `owlstack` folder to the `/wp-content/plugins/` directory, or install directly through the WordPress plugins screen.
2. Activate the plugin through the 'Plugins' menu in WordPress.
3. Go to **Owlstack > Settings** to configure your platform credentials.
== Frequently Asked Questions ==
= What platforms are supported? =
Telegram, X (Twitter), Facebook, Instagram, LinkedIn, Discord, Pinterest, Reddit, Slack, Tumblr, and WhatsApp are all supported.
= Does this plugin require Composer? =
No. All dependencies are bundled with the plugin. Simply install and activate it from your WordPress admin panel.
= How do I get API credentials for each platform? =
* **Telegram:** Create a bot via [@BotFather](https://t.me/botfather) and get your Bot API Token.
* **Twitter/X:** Create an app at [developer.twitter.com](https://developer.twitter.com) and generate your API keys.
* **Facebook:** Create an app at [developers.facebook.com](https://developers.facebook.com), create a Page, and generate a Page Access Token.
* **Instagram:** Use the same Facebook app and connect your Instagram Business account.
* **LinkedIn:** Create an app at [linkedin.com/developers](https://www.linkedin.com/developers/) and request the necessary permissions.
* **Discord:** Create a webhook in your Discord server's channel settings.
* **Pinterest:** Create an app at [developers.pinterest.com](https://developers.pinterest.com).
* **Reddit:** Create an app at [reddit.com/prefs/apps](https://www.reddit.com/prefs/apps).
* **Slack:** Create an incoming webhook or Slack app at [api.slack.com](https://api.slack.com).
* **Tumblr:** Register an app at [tumblr.com/oauth/apps](https://www.tumblr.com/oauth/apps).
* **WhatsApp:** Set up WhatsApp Business API via [Meta for Developers](https://developers.facebook.com).
= Can I customize which post types are supported? =
Yes. Use the `owlstack_supported_post_types` filter:
add_filter('owlstack_supported_post_types', function ($types) {
return ['post', 'page', 'product'];
});
= Is there proxy support? =
Yes. Configure proxy settings in **Owlstack > Settings** for servers that cannot access social media APIs directly.
= Where are delivery logs stored? =
Delivery logs are stored in a custom database table (`wp_owlstack_delivery_logs`). You can view them under **Owlstack > Delivery Logs**.
== Third-Party Services ==
This plugin connects to external third-party services to publish your content. Data such as post title, excerpt, URL, and featured image may be sent to the platforms you configure. **No data is sent unless you explicitly configure and enable a platform.**
**Telegram**
* Service: [Telegram Bot API](https://core.telegram.org/bots/api)
* Terms of Service: [https://telegram.org/tos](https://telegram.org/tos)
* Privacy Policy: [https://telegram.org/privacy](https://telegram.org/privacy)
**X (Twitter)**
* Service: [X API](https://developer.x.com/en/docs)
* Terms of Service: [https://x.com/en/tos](https://x.com/en/tos)
* Privacy Policy: [https://x.com/en/privacy](https://x.com/en/privacy)
**Facebook**
* Service: [Facebook Graph API](https://developers.facebook.com/docs/graph-api/)
* Terms of Service: [https://www.facebook.com/terms.php](https://www.facebook.com/terms.php)
* Privacy Policy: [https://www.facebook.com/privacy/policy/](https://www.facebook.com/privacy/policy/)
**Instagram**
* Service: [Instagram Graph API](https://developers.facebook.com/docs/instagram-api/)
* Terms of Service: [https://help.instagram.com/581066165581870](https://help.instagram.com/581066165581870)
* Privacy Policy: [https://privacycenter.instagram.com/policy](https://privacycenter.instagram.com/policy)
**LinkedIn**
* Service: [LinkedIn API](https://learn.microsoft.com/en-us/linkedin/)
* Terms of Service: [https://www.linkedin.com/legal/user-agreement](https://www.linkedin.com/legal/user-agreement)
* Privacy Policy: [https://www.linkedin.com/legal/privacy-policy](https://www.linkedin.com/legal/privacy-policy)
**Discord**
* Service: [Discord Webhooks](https://discord.com/developers/docs/resources/webhook)
* Terms of Service: [https://discord.com/terms](https://discord.com/terms)
* Privacy Policy: [https://discord.com/privacy](https://discord.com/privacy)
**Pinterest**
* Service: [Pinterest API](https://developers.pinterest.com/docs/api/v5/)
* Terms of Service: [https://policy.pinterest.com/en/terms-of-service](https://policy.pinterest.com/en/terms-of-service)
* Privacy Policy: [https://policy.pinterest.com/en/privacy-policy](https://policy.pinterest.com/en/privacy-policy)
**Reddit**
* Service: [Reddit API](https://www.reddit.com/dev/api/)
* Terms of Service: [https://www.redditinc.com/policies/user-agreement](https://www.redditinc.com/policies/user-agreement)
* Privacy Policy: [https://www.reddit.com/policies/privacy-policy](https://www.reddit.com/policies/privacy-policy)
**Slack**
* Service: [Slack Incoming Webhooks](https://api.slack.com/messaging/webhooks)
* Terms of Service: [https://slack.com/terms-of-service](https://slack.com/terms-of-service)
* Privacy Policy: [https://slack.com/privacy-policy](https://slack.com/privacy-policy)
**Tumblr**
* Service: [Tumblr API](https://www.tumblr.com/docs/en/api/v2)
* Terms of Service: [https://www.tumblr.com/policy/en/terms-of-service](https://www.tumblr.com/policy/en/terms-of-service)
* Privacy Policy: [https://www.tumblr.com/privacy/en](https://www.tumblr.com/privacy/en)
**WhatsApp**
* Service: [WhatsApp Business API](https://developers.facebook.com/docs/whatsapp/)
* Terms of Service: [https://www.whatsapp.com/legal/terms-of-service](https://www.whatsapp.com/legal/terms-of-service)
* Privacy Policy: [https://www.whatsapp.com/legal/privacy-policy](https://www.whatsapp.com/legal/privacy-policy)
== Screenshots ==
1. Settings page with platform credential configuration.
2. Publish meta box on the post editor.
3. Delivery logs page showing publishing activity.
== Changelog ==
= 1.0.0 =
* Initial public release.
* Support for 11 platforms: Telegram, X (Twitter), Facebook, Instagram, LinkedIn, Discord, Pinterest, Reddit, Slack, Tumblr, and WhatsApp.
* Admin settings page with platform credential management.
* Post editor meta box for platform selection and auto-publish.
* Delivery logs page with filtering and pagination.
* REST API endpoints for connection testing, publishing, and log management.
* WordPress HTTP API integration.
* Encrypted OAuth token storage.
* Event system with WordPress action hooks.
* Full developer API via `owlstack()` helper function.
== Upgrade Notice ==
= 1.0.0 =
Initial release. Configure your platform credentials under Owlstack > Settings after activation.