{"id":238599,"date":"2025-07-02T19:18:59","date_gmt":"2025-07-02T19:18:59","guid":{"rendered":"https:\/\/wordpress.org\/plugins\/auto-post-to-x-ultimate\/"},"modified":"2025-07-24T06:52:48","modified_gmt":"2025-07-24T06:52:48","slug":"avir-autopost-to-x-ultimate","status":"publish","type":"plugin","link":"https:\/\/ja.wordpress.org\/plugins\/avir-autopost-to-x-ultimate\/","author":21046552,"comment_status":"closed","ping_status":"closed","template":"","meta":{"version":"1.3.7","stable_tag":"1.3.7","tested":"6.8.5","requires":"5.8","requires_php":"7.4","requires_plugins":null,"header_name":"AVIR Auto Post to X Ultimate","header_author":"Avir Media","header_description":"Advanced auto posting to X (formerly Twitter) with custom text, media","assets_banners_color":"96a1b2","last_updated":"2025-07-24 06:52:48","external_support_url":"","external_repository_url":"","donate_link":"","header_plugin_uri":"","header_author_uri":"https:\/\/avirmedia.com","rating":5,"author_block_rating":0,"active_installs":10,"downloads":1507,"num_ratings":1,"support_threads":0,"support_threads_resolved":0,"author_block_count":0,"sections":["description","installation","faq","changelog"],"tags":{"1.3.4":{"tag":"1.3.4","author":"avirmedia","date":"2025-07-02 19:18:21"},"1.3.5":{"tag":"1.3.5","author":"avirmedia","date":"2025-07-23 11:29:01"},"1.3.6":{"tag":"1.3.6","author":"avirmedia","date":"2025-07-24 14:10:54"},"1.3.7":{"tag":"1.3.7","author":"avirmedia","date":"2025-07-24 06:52:48"}},"upgrade_notice":{"1.3.1":"<p>This version includes important stability improvements and WordPress 6.8 compatibility updates. Please upgrade to ensure continued functionality.<\/p>"},"ratings":{"1":0,"2":0,"3":0,"4":0,"5":1},"assets_icons":{"icon-128x128.png":{"filename":"icon-128x128.png","revision":3321434,"resolution":"128x128","location":"assets","locale":"","width":128,"height":128},"icon-256x256.png":{"filename":"icon-256x256.png","revision":3321434,"resolution":"256x256","location":"assets","locale":"","width":256,"height":256}},"assets_banners":{"banner-1544x500.png":{"filename":"banner-1544x500.png","revision":3321434,"resolution":"1544x500","location":"assets","locale":"","width":1544,"height":500},"banner-772x250.png":{"filename":"banner-772x250.png","revision":3333715,"resolution":"772x250","location":"assets","locale":"","width":772,"height":250}},"assets_blueprints":{},"all_blocks":[],"tagged_versions":["1.3.4","1.3.5","1.3.6","1.3.7"],"block_files":[],"assets_screenshots":[],"screenshots":[]},"plugin_section":[],"plugin_tags":[244402,244400,154278,152452,244401],"plugin_category":[],"plugin_contributors":[244403],"plugin_business_model":[],"class_list":["post-238599","plugin","type-plugin","status-publish","hentry","plugin_tags-auto-x-post","plugin_tags-autoposting-to-x","plugin_tags-social-media-auto-post","plugin_tags-social-media-automation","plugin_tags-x-auto-post","plugin_contributors-avirmedia","plugin_committers-avirmedia"],"banners":{"banner":"https:\/\/ps.w.org\/avir-autopost-to-x-ultimate\/assets\/banner-772x250.png?rev=3333715","banner_2x":"https:\/\/ps.w.org\/avir-autopost-to-x-ultimate\/assets\/banner-1544x500.png?rev=3321434","banner_rtl":false,"banner_2x_rtl":false},"icons":{"svg":false,"icon":"https:\/\/ps.w.org\/avir-autopost-to-x-ultimate\/assets\/icon-128x128.png?rev=3321434","icon_2x":"https:\/\/ps.w.org\/avir-autopost-to-x-ultimate\/assets\/icon-256x256.png?rev=3321434","generated":false},"screenshots":[],"raw_content":"<!--section=description-->\n<p>AVIR Auto Post to X Ultimate is a powerful WordPress plugin that enables posting your content to X (formerly Twitter) with extensive customization options and a user-friendly interface.<\/p>\n\n<h4>Core Features<\/h4>\n\n<ul>\n<li>Share posts to X directly from WordPress editor<\/li>\n<li>Auto-post option when publishing new content<\/li>\n<li>Include featured images with your posts<\/li>\n<li>Add and position hashtags strategically<\/li>\n<li>Preview posts before publishing<\/li>\n<li>Monitor post status in WordPress admin<\/li>\n<li>Test API connection functionality<\/li>\n<li>Real-time character counting<\/li>\n<li>Support for different X character limits:\n\n<ul>\n<li>Free accounts: 280 characters<\/li>\n<li>Premium accounts: 25,000 characters<\/li>\n<\/ul><\/li>\n<\/ul>\n\n<h4>Content Customization<\/h4>\n\n<ul>\n<li>Custom post text editor<\/li>\n<li>Adjustable excerpt length<\/li>\n<li>Custom \"Read more\" text<\/li>\n<li>Link prefix options<\/li>\n<li>Header stripping option<\/li>\n<li>Link position settings:\n\n<ul>\n<li>Same line as read more text<\/li>\n<li>New line after read more text<\/li>\n<\/ul><\/li>\n<li>Hashtag positioning:\n\n<ul>\n<li>Top of post<\/li>\n<li>Bottom of post<\/li>\n<\/ul><\/li>\n<\/ul>\n\n<h4>Post Editor Integration<\/h4>\n\n<ul>\n<li>Dedicated meta box for X posting<\/li>\n<li>Real-time character count validation<\/li>\n<li>Featured image toggle<\/li>\n<li>Hashtag input field<\/li>\n<li>Post preview functionality<\/li>\n<li>Post status indicator<\/li>\n<li>Success\/error notifications<\/li>\n<li>Post history posting time tracking<\/li>\n<\/ul>\n\n<h4>Admin Features<\/h4>\n\n<ul>\n<li>Status column in posts list<\/li>\n<li>API credential management<\/li>\n<li>Connection testing tool<\/li>\n<li>Customizable settings:\n\n<ul>\n<li>Character limits<\/li>\n<li>Excerpt length<\/li>\n<li>Text area height<\/li>\n<li>Link formatting<\/li>\n<li>Status column display with re-posts count<\/li>\n<\/ul><\/li>\n<\/ul>\n\n<h4>User Interface<\/h4>\n\n<ul>\n<li>Clean, intuitive design<\/li>\n<li>Mobile-responsive layout<\/li>\n<li>Post preview modal<\/li>\n<li>Visual status indicators<\/li>\n<li>Easy-to-use controls<\/li>\n<li>Helpful inline documentation<\/li>\n<\/ul>\n\n<h4>Security Features<\/h4>\n\n<ul>\n<li>Secure API communication<\/li>\n<li>Protected credential storage<\/li>\n<li>WordPress nonce verification<\/li>\n<li>User capability checking<\/li>\n<li>Basic error logging<\/li>\n<\/ul>\n\n<h3>Additional Information<\/h3>\n\n<h4>API Requirements<\/h4>\n\n<ul>\n<li>X (Twitter) Developer Account<\/li>\n<li>API Key<\/li>\n<li>API Key Secret<\/li>\n<li>Access Token<\/li>\n<li>Access Token Secret<\/li>\n<\/ul>\n\n<h4>Post Editor Features<\/h4>\n\n<ul>\n<li>Character count display with:\n\n<ul>\n<li>Normal state (0-90% used)<\/li>\n<li>Warning state (90-100% used)<\/li>\n<li>Error state (over limit)<\/li>\n<li>Success state (within limit)<\/li>\n<\/ul><\/li>\n<li>Post status indicators:\n\n<ul>\n<li>Not posted<\/li>\n<li>Posted successfully<\/li>\n<li>Post date\/time<\/li>\n<\/ul><\/li>\n<\/ul>\n\n<h4>Content Formatting<\/h4>\n\n<ul>\n<li>Excerpt generation options:\n\n<ul>\n<li>Character-based length control<\/li>\n<li>Header tag stripping<\/li>\n<li>Automatic ellipsis<\/li>\n<li>Smart word boundary trimming<\/li>\n<\/ul><\/li>\n<li>Link formatting options:\n\n<ul>\n<li>Custom prefix symbols<\/li>\n<li>Position control<\/li>\n<li>Read more text customization<\/li>\n<\/ul><\/li>\n<\/ul>\n\n<h4>Media Handling<\/h4>\n\n<ul>\n<li>Featured image support:\n\n<ul>\n<li>Toggle inclusion<\/li>\n<li>Preview in post modal<\/li>\n<li>Automatic upload to X<\/li>\n<li>Error handling for failed uploads<\/li>\n<\/ul><\/li>\n<\/ul>\n\n<h4>Error Handling<\/h4>\n\n<ul>\n<li>API connection errors<\/li>\n<li>Authentication failures<\/li>\n<li>Media upload issues<\/li>\n<li>Character limit violations<\/li>\n<li>Network connectivity problems<\/li>\n<li>User permission issues<\/li>\n<\/ul>\n\n<h4>Interface Elements<\/h4>\n\n<p>Meta Box Features:<\/p>\n\n<ul>\n<li>Post text editor<\/li>\n<li>Hashtag input<\/li>\n<li>Position selector<\/li>\n<li>Image toggle<\/li>\n<li>Preview button<\/li>\n<li>Post button<\/li>\n<li>Status display<\/li>\n<li>Character counter<\/li>\n<\/ul>\n\n<p>Settings Page Features:<\/p>\n\n<ul>\n<li>API credential fields<\/li>\n<li>Content configuration<\/li>\n<li>Display options<\/li>\n<li>Test connection tool<\/li>\n<li>Save settings button<\/li>\n<\/ul>\n\n<h4>Compatibility<\/h4>\n\n<p>WordPress Requirements:<\/p>\n\n<ul>\n<li>WordPress 5.8 or higher<\/li>\n<li>PHP 7.0 or higher<\/li>\n<li>MySQL 5.6 or higher<\/li>\n<li>Active REST API<\/li>\n<\/ul>\n\n<p>Browser Support:<\/p>\n\n<ul>\n<li>Chrome (latest)<\/li>\n<li>Firefox (latest)<\/li>\n<li>Safari (latest)<\/li>\n<li>Edge (latest)<\/li>\n<\/ul>\n\n<h4>Performance Considerations<\/h4>\n\n<p>The plugin:<\/p>\n\n<ul>\n<li>Uses WordPress native functions<\/li>\n<li>Minimizes database queries<\/li>\n<li>Optimizes API calls<\/li>\n<li>Caches responses<\/li>\n<li>Handles timeouts gracefully<\/li>\n<\/ul>\n\n<h4>Known Limitations<\/h4>\n\n<ul>\n<li>No scheduling support<\/li>\n<li>Single account only<\/li>\n<li>Basic media handling<\/li>\n<li>No analytics integration<\/li>\n<li>Manual post management only<\/li>\n<\/ul>\n\n<h4>Support Resources<\/h4>\n\n<ul>\n<li>Plugin documentation<\/li>\n<li>WordPress.org support forum<\/li>\n<li>Error documentation<\/li>\n<li>API troubleshooting guide<\/li>\n<li>Installation guide<\/li>\n<\/ul>\n\n<h3>External Services<\/h3>\n\n<p>This plugin connects to X (formerly Twitter) API services to post content from your WordPress site to your X account.<\/p>\n\n<h4>Data Transmission<\/h4>\n\n<ul>\n<li>When posting: The plugin sends post content, hashtags, and optionally featured images to X's API<\/li>\n<li>When testing connection: The plugin verifies API credentials by retrieving basic account information<\/li>\n<li>When uploading media: The plugin sends featured images to X's media upload API<\/li>\n<\/ul>\n\n<h4>Service Provider<\/h4>\n\n<p>These services are provided by X Corp. (formerly Twitter):<\/p>\n\n<ul>\n<li>Terms of Service: https:\/\/twitter.com\/tos<\/li>\n<li>Privacy Policy: https:\/\/twitter.com\/privacy<\/li>\n<li>Developer Agreement: https:\/\/developer.twitter.com\/en\/developer-terms\/agreement<\/li>\n<\/ul>\n\n<h3>Privacy Considerations<\/h3>\n\n<p>The plugin:<\/p>\n\n<ul>\n<li>Connects to X's API services<\/li>\n<li>Stores API credentials in your WordPress database<\/li>\n<li>Tracks post status<\/li>\n<li>Logs basic errors<\/li>\n<li>Respects WordPress permissions<\/li>\n<\/ul>\n\n<h4>Best Practices<\/h4>\n\n<p>For optimal use:<\/p>\n\n<ul>\n<li>Configure API credentials correctly<\/li>\n<li>Test connection before use<\/li>\n<li>Preview posts before sharing<\/li>\n<li>Monitor character count<\/li>\n<li>Check post status<\/li>\n<li>Keep credentials secure<\/li>\n<\/ul>\n\n<h4>Uninstall Cleanup<\/h4>\n\n<p>Removes:<\/p>\n\n<ul>\n<li>Plugin options<\/li>\n<li>API credentials<\/li>\n<li>Post meta data<\/li>\n<li>Status records<\/li>\n<li>Cache data<\/li>\n<\/ul>\n\n<h3>Privacy Policy<\/h3>\n\n<p>This plugin:<\/p>\n\n<ol>\n<li>Connects to X's API services<\/li>\n<li>Stores necessary API credentials in user's WordPress Database<\/li>\n<li>Creates post meta data<\/li>\n<li>Tracks posting status and stores data in user's WordPress Database<\/li>\n<li>Logs basic error information for debug purposes only<\/li>\n<\/ol>\n\n<p>Please review X's privacy policy regarding API usage and data handling.<\/p>\n\n<h3>Support<\/h3>\n\n<p>For support:<\/p>\n\n<ul>\n<li>Check documentation<\/li>\n<li>Visit WordPress.org forum<\/li>\n<li>Review error logs<\/li>\n<li>Test API connection<\/li>\n<li>Verify credentials<\/li>\n<\/ul>\n\n<h3>Credits<\/h3>\n\n<ul>\n<li>Developed by Avir Media<\/li>\n<li>X API Integration<\/li>\n<li>WordPress Core Integration<\/li>\n<li>UI\/UX Design<\/li>\n<li>Error Handling<\/li>\n<\/ul>\n\n<h3>License<\/h3>\n\n<p>GPLv2 or later<\/p>\n\n<ul>\n<li>You can use this plugin<\/li>\n<li>You can modify this plugin<\/li>\n<li>You can distribute this plugin<\/li>\n<li>You must maintain GPL license<\/li>\n<\/ul>\n\n<!--section=installation-->\n<ol>\n<li>Upload the plugin files to <code>\/wp-content\/plugins\/avir-autopost-to-x-ultimate<\/code><\/li>\n<li>Activate the plugin through the 'Plugins' menu<\/li>\n<li>Go to Settings &gt; AVIR Auto Post to X Ultimate<\/li>\n<li>Enter your X API credentials<\/li>\n<li>Configure posting preferences<\/li>\n<li>Start posting to X!<\/li>\n<\/ol>\n\n<!--section=faq-->\n<dl>\n<dt id='do%20i%20need%20an%20x%20developer%20account%3F'><h3>Do I need an X Developer Account?<\/h3><\/dt>\n<dd><p>Yes, you need an X Developer Account to obtain the necessary API credentials.<\/p><\/dd>\n<dt id='what%20are%20the%20character%20limits%3F'><h3>What are the character limits?<\/h3><\/dt>\n<dd><ul>\n<li>Free accounts: 280 characters<\/li>\n<li>X Blue subscribers: 25,000 characters<\/li>\n<li>Verified Organizations: 25,000 characters<\/li>\n<\/ul><\/dd>\n<dt id='why%20am%20i%20getting%20%22oauth1%20app%20permissions%22%20error%20when%20posting%3F'><h3>Why am I getting \"OAuth1 app permissions\" error when posting?<\/h3><\/dt>\n<dd><p>If you see the error \"Twitter\/X API Error: Your client app is not configured with the appropriate oauth1 app permissions for this endpoint. (HTTP 403)\", follow these steps:<\/p>\n\n<ol>\n<li><p><strong>Update App Permissions<\/strong>:<\/p>\n\n<ul>\n<li>Log in to the <a href=\"https:\/\/developer.twitter.com\/en\/portal\/dashboard\">Twitter Developer Portal<\/a><\/li>\n<li>Select your project and app<\/li>\n<li>Go to \"App settings\" or \"User authentication settings\"<\/li>\n<li>Under \"App permissions\", change from \"Read\" to \"Read and Write\"<\/li>\n<li>Save your changes<\/li>\n<\/ul><\/li>\n<li><p><strong>Regenerate Access Tokens<\/strong>:<\/p>\n\n<ul>\n<li>Go to the \"Keys and tokens\" tab<\/li>\n<li>Revoke your existing access token and secret<\/li>\n<li>Generate new access token and secret with the updated permissions<\/li>\n<li>Update these new values in the plugin settings<\/li>\n<\/ul><\/li>\n<li><p><strong>Verify API Access Level<\/strong>:<\/p>\n\n<ul>\n<li>As of 2023, Twitter\/X requires a paid Basic tier or higher for posting<\/li>\n<li>Ensure your developer account has an active subscription<\/li>\n<li>Free API access is limited to read-only operations<\/li>\n<\/ul><\/li>\n<li><p><strong>Test Connection<\/strong>:<\/p>\n\n<ul>\n<li>After updating credentials, use the \"Test API Connection\" button<\/li>\n<li>A successful connection confirms your authentication is working<\/li>\n<li>You should now be able to post to X<\/li>\n<\/ul><\/li>\n<\/ol><\/dd>\n<dt id='can%20i%20customize%20the%20post%20format%3F'><h3>Can I customize the post format?<\/h3><\/dt>\n<dd><p>Yes, you can customize:\n* Post text content\n* Hashtag position (top\/bottom)\n* Link format and prefix\n* Read more text\n* Featured image inclusion<\/p><\/dd>\n<dt id='does%20it%20support%20scheduled%20posts%3F'><h3>Does it support scheduled posts?<\/h3><\/dt>\n<dd><p>No, currently the plugin only supports manual posting and immediate auto-posting when publishing. Scheduled posts must be manually shared to X after they are published.<\/p><\/dd>\n<dt id='can%20i%20preview%20posts%20before%20sharing%3F'><h3>Can I preview posts before sharing?<\/h3><\/dt>\n<dd><p>Yes, there's a built-in preview feature showing exactly how your post will look on X.<\/p><\/dd>\n<dt id='how%20do%20i%20know%20if%20a%20post%20was%20shared%20successfully%3F'><h3>How do I know if a post was shared successfully?<\/h3><\/dt>\n<dd><p>The plugin provides:\n* Immediate success\/error notifications\n* Status indicators in the post editor\n* Status column in the posts list<\/p><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<h4>1.3.7<\/h4>\n\n<ul>\n<li>Repository update<\/li>\n<\/ul>\n\n<h4>1.3.6<\/h4>\n\n<ul>\n<li>Provisional code tweaks<\/li>\n<li>Fixed invalid post column display icon definition<\/li>\n<li>Fixed SAVE DRAFT issue that flagged post as posted<\/li>\n<li>Updated X.com post size definitions<\/li>\n<\/ul>\n\n<h4>1.3.5<\/h4>\n\n<ul>\n<li>Added option to copy editor contents into clipboard<\/li>\n<li>Added option to save editor DRAFT without posting to X<\/li>\n<li>Added a post counter displaying how many times each post has been published<\/li>\n<li>Repost count is now visible on the post list and editor status panels<\/li>\n<\/ul>\n\n<h4>1.3.4<\/h4>\n\n<ul>\n<li>WordPress 6.8.2 compliance update<\/li>\n<\/ul>\n\n<h4>1.3.3<\/h4>\n\n<ul>\n<li>Various interface tweaks<\/li>\n<\/ul>\n\n<h4>1.3.2<\/h4>\n\n<ul>\n<li>Various feature enhancements<\/li>\n<li>Optimizations for WP compliance<\/li>\n<li>Improved GUI<\/li>\n<li>Added FAQ information<\/li>\n<\/ul>\n\n<h4>1.3.1<\/h4>\n\n<ul>\n<li>Added support for WordPress 6.8<\/li>\n<li>Enhanced error handling<\/li>\n<li>Improved API connection stability<\/li>\n<li>Updated X API integration<\/li>\n<li>Fixed minor UI issues<\/li>\n<\/ul>\n\n<h4>1.3.0<\/h4>\n\n<ul>\n<li>Initial release with core features<\/li>\n<li>X API integration<\/li>\n<li>Custom post formatting<\/li>\n<li>Media support<\/li>\n<li>Preview functionality<\/li>\n<\/ul>","raw_excerpt":"Automatically post your WordPress content to X (formerly Twitter) with advanced customization options and media support.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/ja.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/238599","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/ja.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin"}],"about":[{"href":"https:\/\/ja.wordpress.org\/plugins\/wp-json\/wp\/v2\/types\/plugin"}],"replies":[{"embeddable":true,"href":"https:\/\/ja.wordpress.org\/plugins\/wp-json\/wp\/v2\/comments?post=238599"}],"author":[{"embeddable":true,"href":"https:\/\/ja.wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/avirmedia"}],"wp:attachment":[{"href":"https:\/\/ja.wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=238599"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/ja.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=238599"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/ja.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=238599"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/ja.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=238599"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/ja.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=238599"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/ja.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=238599"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}