• 1 Installation
  • 2 Quick Start
  • 3 Introduction
  • 4 General
    • 4.1 Auto edit
    • 4.2 Map Settings
    • 4.3 Category Settings
    • 4.4 Importing/Exporting Settings
    • 4.5 Testing Options
  • 5 Main (Post Tools)
    • 5.1 Main
    • 5.2 Phrase - Category Map
    • 5.3 Templates
    • 5.4 Find and Replace
    • 5.5 Phrase - Tag Map
    • 5.6 Phrase - URL Map
    • 5.7 Random Phrases
    • 5.8 Unwanted Phrases
    • 5.9 Conditional Phrases
    • 5.10 Boost Post
  • 6 Images
    • 6.1 Main
    • 6.2 Templates
    • 6.3 Design
    • 6.4 Phrase - Image Folder Map
  • 7 Videos
    • 7.1 Main
    • 7.2 Posts
    • 7.3 Templates
    • 7.4 Design
    • 7.5 Phrase - Audio Folder Map
    • 7.6 YouTube
    • 7.7 Bonus Video
  • 8 Social Media
    • 8.1 Main
    • 8.2 Posts
    • 8.3 Templates
    • 8.4 Facebook
    • 8.5 Twitter
  • 9 Advertisements
    • 9.1 Main
    • 9.2 Ads
      • 9.2.1 Advertisement Settings
        • 9.2.1.1 Main
        • 9.2.1.2 From URL
        • 9.2.1.3 Manual
    • 9.3 Fallback Ads
  • 10 Tester
  • 11 Tools
    • 11.1 Post
    • 11.2 Video
    • 11.3 Accounts
    • 11.4 Ads
  • 12 Logs
  • 13 FAQ
    • 13.1 How to add my own fonts?
 
  • 1 Installation
    1. Go to your WordPress admin panel and, using the admin menu on the left of the page, select Plugins > Add New.
      1-min
    2. On “Add New Plugin” page, click Upload Plugin button.
      2-min
    3. Next, click Choose File and find the zip file of the plugin which you downloaded.
      3-min
    4. Then, click Install Now and wait a few moments.
      4-min
    5. Now, when you see that the plugin is installed, click Active Plugin link.
      5-min
    6. Then, go to Settings > Post Tools License Settings from your admin menu.
      6-min
    7. Finally, write your license key to the input area and click Save Changes button.
      7-min
    8. Now you can reach all plugin features under Post Tools menu in admin menu.
      8-min
    9. Congratulations! You have completed the setup. You can now start using WP Post Tools. Please read the following sections of this documentation to learn how to use the plugin, or watch our video tutorials. Thank you for using WP Post Tools!
  • 2 Quick Start

    You can watch our video tutorials for a quick start. The tutorials cover almost every aspect of the plugin.

  • 3 Introduction

    WP Post Tools is a WordPress plugin that is designed to be used in mainly creating authentic posts, sharing them on social media, creating videos and showing advertisements, all automatically. The main idea is that you configure the plugin once, and it takes care of everything automatically after that. You can find a brief explanation of each main task the plugin is able to fulfill below in this section. If you want to learn more about each feature, please refer to their own section.

    Creating authentic posts
    The plugin is able to intercept automatic saving operation. For example, if you are using a plugin to collect content from other sites and post them to your WordPress site automatically, such as WP Content Crawler, WP Post Tools can intercept the saving operation, change newly created post’s content before it is published and share it after the changes are applied. You are in full control of the changes that should be applied to the post. You can define several templates that should be used to define post’s content, excerpt, tags, meta title, meta description and meta keywords. These templates can be created by using custom short codes defined by you in the plugin. For instance, you can say “if the post’s content contains ‘cool’, add ‘cool posts’ tag to the post”, or “if the post title contains ‘cool’, add it to ‘cool posts’ category”, or “if the post is in ‘cool posts’ category, make first character of each word in the title uppercase”. There are a lot of customization options and infinite possibilities. You can create your own random phrase or conditional phrase short codes to use in the templates. What makes this powerful is that you can create more than one template for, let’s say, post title so that each time there will be a random title template used for each new post.

    Images
    The plugin is able to modify or add an image to the posts. If the post has a featured image, the plugin can write a text, such as post’s title, on the image making it unique on the web. If the post has no featured image, the plugin can add one, and modify it. You can define what kind of an image should be added to a post. For instance, you can say “if the post’s title has ‘food’ in it, get a random image from ‘food-images’ folder”. In this case, when the plugin sees ‘food’ in a post’s title, and that the post has no image, it goes to ‘food-images’ folder, pick a random image, writes whatever you want to be written on the image, and makes it post’s featured image. You can define what should be written by using templates, in which you can use a lot of custom short codes. You can also define style options for each post category. For example, you can say that “write the text on blue background if the post is in ‘social media’ category, and write it on red background if it is in ‘health’ category”.

    Videos
    The plugin can create videos (requires FFmpeg library installed on the server with a few required libraries), post them on YouTube and include the video in the post’s content. Videos are created using the images in the post’s content along with some audio files and text extracted from the post content. You can define the text that should be written onto the video by using templates, in which you can use custom short codes. If the post does not have any images, the plugin will use the image settings and try to get random suitable images that can be used for video creation. As you do in the image settings, you can define what audio files should be used when creating a video. For example, you can say “use ‘happy-audios’ directory to get an audio file to play in the background when creating a video for a post that has ‘cooking’ in its title”. You can define several styling options, intro and outro videos, duration per word and several other settings to customize video creation according to your taste.

    Social media
    The plugin can automatically share popular posts on Facebook and Twitter. You can define several Facebook pages, and Twitter accounts. For example, you can set your “funny animals” Facebook page for “cat news” category of your site, so that popular posts in “cat news” category are shared on “funny animals” Facebook page. You can share the same post to more than one account/page. You can also set what text should be shared with the post by using the templates, in which you can use several custom short codes.

    Advertisements
    The plugin is able to show custom advertisements for posts. For example, you can say “if a post contains ‘android’, go to amazon.com, search for ‘android’ and show products by appending my referrer name to the URLs of the products”. You can also define fallback ads to still show ads when there is no suitable ad for a post. You can define your AdSense codes as fallback advertisements.

    These are brief explanations of the main features of the plugin. If you want to learn more about features, you can read the documentation of them in the docs, or read the information texts near the labels of the settings when using the plugin.

  • 4 General

    You can find some general information about the plugin in this section.

    • 4.1 Auto edit

      The plugin intercepts the saving operation of the posts, so that it can edit the posts. After the edit, it will revert the status of the post to its original. The plugin edits the posts in two runs. So, here is the edit process:

      1. The post is moved to draft.
      2. First edit is applied.
      3. Second edit is applied and post status is reverted to its original.

      The reason the plugin does this in two runs is that we saw that some servers are not capable of handling the edit operation at once. These servers caused some unwanted behaviors and we could not have detected the cause of the problem so far. Therefore, the plugin does the editing in two runs.

    • 4.2 Map Settings

      Using the plugin, you will see a few map settings, such as ‘phrase – image folder map’ or ‘phrase – audio folder map’. The map settings, most of the time, have different settings for title and content. For example, let’s take ‘phrase – audio folder map’. There are ‘title phrase – audio folder map’ and ‘content phrase – audio folder map’. When you define items for these maps, first, ‘title’ map will be tried to be matched. If no result is found using title map, content map will be tried to be matched. Again, if nothing is found, ‘general’ option will be used.

    • 4.3 Category Settings

      In most of the setting pages, you will see a category selection input at the top of the setting page. You can define category-specific options by changing the category using that select. If you have general settings for the same setting, first, category option will be tried to be used. If no category option is available, general settings will be used. So, you can override general settings for a category by this way.

    • 4.4 Importing/Exporting Settings

      You can import/export every setting using the import/export tabs. There are several setting pages. Most of the setting pages can be configured for a specific category as well. You can export settings from a category, and import it to another category, or you can move your settings to another site. These are all possible with the import/export options.

    • 4.5 Testing Options

      Most of the settings have a test button next to them. Using these test buttons, you can test the setting right away. For example, you may want to test if a CSS selector works or not when you are configuring advertisement settings, to test if a find-replace options works or not, or styling options for the video works properly or not. You can do these kind of tests right away using the test buttons.

  • 5 Main (Post Tools)

    general-min

    Main settings for the plugin can be reached by clicking “Post Tools” item in the menu on admin page. This page includes main settings for the plugin, along with settings that can be used to create authentic posts (in other words, automatic editing).

    • 5.1 Main

      Automatic editing
      You can activate/deactivate automatic editing. When you activate it, you will see an ‘auto-edit interval’ setting. You can set the auto edit interval here. The plugin intercepts posts published by your auto-post or auto-blog or any other bot/crawler plugins. When a post is published, WP Post Tools make the post’s status ‘draft’ and adds it to the edit queue. Next, it edits the posts in the queue one by one and publishes them when the editing is finished. ‘auto-edit interval’ defines the duration between auto-edit operations. For instance, if you set it “1 minute”, the plugin will edit a post in the queue every minute. Auto-edit interval should be set less than the posting interval of your auto-blog plugin in order to prevent the auto-edit queue from getting longer.

      Extract tags from post title
      When you check this checkbox, words in the post title will be added to the original post’s tags. So, when you use tags in the templates, the words in the title will be available as well.

      Maximum number of linked phrases in post content
      You can define phrases that should be linked. For example, you can say that “if there is ‘crawler’ in the post content, add a link to that word so that it points to ‘wpcontentcrawler.com’”. You can set this in ‘phrase – URL map’ tab. You can define unlimited number of phrases like that, and map them to URLs. So, this setting makes it possible to limit the number of linked phrases in the post content. If you have 100 phrases and corresponding URLs, and the post contains 30 of them, you probably do not want to link all 30 phrases. Using this setting, you can limit the number of linked phrases. E.g. you can say “link maximum 3 phrases”.

      Phrase linking template
      This template will be used when linking phrases that you define in phrase – URL map. Using this template, you can modify the HTML code used in linking the phrase. For instance, you can make the links open in new tab, or add a class to the links so that you can change the style of the links.

      Meta title, meta description and meta keywords keys
      These keys are the keys under which your SEO plugin stores meta title, meta description and meta keywords. By defining these keys, you will be able to automatically save meta title, meta description and meta keywords for the posts using the templates. For example, if you use All in One SEO, these keys are _aioseop_title, _aioseop_description, and _aioseop_keywords, respectively. If you use any other plugin, you should ask the support team of your plugin about these keys.

      Valid post types
      The plugin applies auto edit to certain post types. Your WordPress installation may have several post types. In that case, you may want to apply edit to other post types. With this option, you can tell the plugin which post types are suitable for auto editing. In the case that you do not define any option, the plugin will use “post” post type by default.

      Language
      Language settings has vital importance so that the plugin can correctly apply some short code settings, such as upper-case, lower-case operations. For example, in English, lower-case of “I” is “i”, while it is “ı” in Turkish.

      Activate RSS feeds
      The plugin provides you with a detailed RSS feed that you can use to share your posts without restricting the length of post content. You can use this feed, for example, to transfer auto-edited posts to your other sites which are run by a script other than WordPress. You can read the information text of the setting by clicking info button near the label to learn how to reach this feed.

      Activate logging
      The plugin can provide you with detailed log information, using which you can track what plugin does in the background.

    • 5.2 Phrase - Category Map

      Using phrase – category map, you can set post’s categories by phrases that exist in the post content. For example, let’s say you want posts containing ‘android’ keyword in its title to be in ‘phones’ category. You can go to title phrase – category map option and add a setting for this purpose. The setting should have ‘android’ in comma-separated phrases input, and ‘phones’ category selected for category option. You can define several categories and several phrases. For example, you can say “if the post’s title contains ‘android’ or ‘iOS’, set its categories as ‘phones’ and ‘mobile operating systems’”. You can apply these for the post content as well. Note that, title phrases will be searched first. If there is no match found for them, content phrases will be searched.

    • 5.3 Templates

      This tab contains templates for post’s title, excerpt, content, tags, meta title, meta description and meta keywords. Templates are used to change post’s title, excerpt, and so on. For example, you can change post’s title by using ‘post title templates’. For example, you can make the title all uppercase, add a text at the end of the title and do several other operations. What makes a template powerful is that you can use several short codes. Using the short codes, you can change/add a lot of things.

      You can see the short code buttons above the templates. Each button is for a different short code that can be used in any template. In order to learn what a short code can be used for, you can just hover over the buttons. For example, “[title]” short code can be used to add post’s title to a template. Let’s say we are creating post title template. First, we want the original post title to be in the template. So, we can use “[title]” short code. Let’s say we need to add ‘Android’ to each post’s title. We can write “[title] - Android” for the post title template to achieve this. When you hover over the short code buttons, you will see allowed attributes for that short code. You can reach attribute descriptions by clicking ‘attribute descriptions’ link, which is placed after the short code buttons. Let’s say we also want to make each word’s first character uppercase in the post title. We can use ‘ucfirst-words’ attribute with the ‘title’ short code to achieve this. Our template now becomes “[title ucfirst-words=1] - Android”. Now, let’s say sometimes we need to add ‘Android’ before the title. We can add another template as “Android - [title ucfirst-words=1]”. Now, we have 2 templates for the post title. The plugin will now get one of these two title templates every time it needs to change the post’s title. As you can see, you can set unlimited number of templates for each template setting.

      In addition to common post data, such as title, excerpt, tag, content and so on, you can also use random phrase and conditional phrase short codes. Random phrase short codes can be used to insert one random phrase, which you define in ‘random phrases’ tab, to the template. Conditional phrase short codes can be used to insert one or more phrases if the content contains specified phrases. Conditional phrase settings can be configured in ‘conditional phrases’ tab. For more information about these, please refer to their own section.

      You can also check out the video tutorials to learn the templates better.

    • 5.4 Find and Replace

      Find and replace settings allow you to find and replace phrases in post’s title, excerpt, content, tags, meta title, meta description and meta keywords. There are three different usages of these settings.

      The first usage is to simple find a phrase and replace with another one. For instance, you can find ‘however’ and replace with ‘on the other hand’.
      The second one is to use it with regular expressions. To be able to use regular expressions, make sure you checked the regex checkbox. Then, you can provide a regular expression for ‘find’ field, and use group variables in replace field. The plugin uses forward slash (/) as delimiter. So, you need to escape forward slashes with backslash, e.g. “\/”, if you need to use a forward slash in the regex.

      The third way to use find and replaces is to provide comma-separated phrases for ‘find’ field without checking the regex checkbox. When you do this, the plugin will spin the phrases. For example, if you want to change one of “so, hence, therefore” with another one, you can write “so, hence, therefore” for both find and replace fields. By this way, when the plugin finds “so”, it will replace it with “hence” or “therefore”. If it finds “hence”, it will replace it with “so” or “therefore”. And finally, if it finds “therefore”, it will replace it with “so” or “hence”. You can provide unlimited number of comma-separated phrases to be spinned. You can also add txt files for spinning under “wp-content/uploads/tspt-spin-text/” directory. For example, if your language setting is set to English, you can upload the txt file under “wp-content/uploads/tspt-spin-text/en” directory. The txt file should be constructed such that each line contains comma-separated phrases that can be spinned with each other. If you want to exclude the txt file without deleting it, simply change its extension to “.no.txt”.

    • 5.5 Phrase - Tag Map

      You can add tags to a post, if a post contains a phrase. For example, let’s say we want to add ‘android games’ tag to a post, if its title contains ‘android’. We can do so using phrase – tag map. We need to add a map item for ‘title phrase – tag map’ setting, by writing ‘android’ for comma-separated phrases field, and ‘android games’ for comma-separated tags field. You can also define more than one phrase and/or tag for these fields. For example, if you want to add ‘android games’ and ‘android apps’ tags, if the post’s content contains ‘android’ or ‘play store’, you need to add a map item for ‘content phrase – tag map’ setting, by writing ‘android, play store’ for comma-separated phrases field and ‘android games, android apps’ for comma-separated tags field.

    • 5.6 Phrase - URL Map

      The settings under this tab can be used to link phrases in the post’s content. For example, let’s say you want to link ‘android’ or ‘play store’ to ‘https://play.google.com’. You can add a map item for ‘phrase – URL map’, by writing ‘android, play store’ to comma-separated phrases field, and ‘https://play.google.com’ to URL field. You can also link phrases to posts. For example, let’s say you have a post with title ‘Best Android Games’ and you want ‘android games’ or ‘android’ phrases to be linked to this post. You can add a new map item for ‘phrase – post map’ by writing ‘android games, android’ to comma-separated phrases field, and finding and selecting ‘Best Android Games’ post using the other field.

    • 5.7 Random Phrases

      You can define several random phrases under this tab. The random phrases you define will be available to use in templates by short codes. There are post title, post excerpt, post content, post tags, meta title, meta description and meta keywords settings. You can write newline-separated phrases to these fields. For example, let’s say you write ‘android games’ along with other 10 different phrases separated with new lines to post title field. You can use these phrases in templates with [random-phrase-post-title] short code. If you write these into post excerpt field, you can use them with [random-phrase-post-excerpt] short code, and so on. When you use a random phrase short code, it will be replaced with one of the phrases you defined for it. If you use the same short code more than once, it will be replaced with the same phrase. If you want it to be replaced with a different phrase, you can provide a number, such as “[random-phrase-post-title 1] [random-phrase-post-title 2]”.

      In addition to the default fields, you can define your own custom short code in ‘custom random phrases’ option. For example, you can define ‘random-phrase-android’ and put all random phrases about android to this short code. Now, you can use this short code in the templates, just like other random phrase short codes. After you define custom short codes, they will be shown among the random phrase short code buttons as well.

    • 5.8 Unwanted Phrases

      Sometimes you do not want a phrase to be in the content. You can use the settings under this tab for this purpose. For example, if you do not want ‘android’ in the post titles, you can add it to ‘post title’ field. After this, no post will have ‘android’ in its title. If you want to define more than one phrase, you can do so by separating them with new line. In other words, just write each phrase in a new line.

    • 5.9 Conditional Phrases

      Conditional phrases are powerful. First of all, just like random phrase settings, anything you defined here will be available as conditional phrase short codes. There are post title, post excerpt, post content, post tags, post categories, meta title, meta description, and meta keywords settings. For instance, if you need to use a phrase when there is a phrase in post title, you need to use post title option. Let’s say we need ‘android games’ and ‘android apps’ phrases to be available when the post’s title contains ‘android’. We need to go to post title option and write ‘android’ in comma-separated conditions field, and ‘android games, android apps’ in comma-separated phrases field. Now, we can go to a template and use this with “[conditional-phrase-post-title]” short code. Note that, you can use this in any template. It can, for example, be meta description template or post tags template. Let’s say we put this short code to a meta keywords template. In this case, if the post’s title contains ‘android’, the short code will be replaced with ‘android games’ or ‘android apps’. If the title does not contain ‘android’, the short code will be replaced with an empty text, i.e. removed.

      In addition to the default fields, you can define your own custom short code in ‘custom conditional phrases’ option. For example, you can define ‘conditional-phrase-android’ and put all conditional phrases about android to this short code. Now, you can use this short code in the templates, just like other random phrase short codes. After you define custom short codes, they will be shown among the random phrase short code buttons as well. Note that, unlike random phrase settings, here, you can select content type as well. For example, if you select ‘meta title’, the conditions will be searched in post’s meta title.

    • 5.10 Boost Post

      You can configure settings for tspt-boost-post short code here. This short code can be used to show a post’s short description along with its featured image. So, when you use this short code in a post’s content, it will be replaced with a post’s featured image and short description. In other words, a post will be boosted in another post. The purpose of this is to recommend the users another article to keep them in the site. You can learn more about using this short code by reading the boost post tab’s description.

      You can define a template for the boosted post by using short codes to include title, description, permalink and image URL in a way that you like. To do this, go to ‘boost post template’ setting and write your own HTML code using the short codes shown above the editor. You may want to use custom CSS code with your template. If this is the case, you can use CSS option to provide your own CSS code that will be loaded with the boost post template.

  • 6 Images

    image-min

    This page contains settings for images, such as activating/deactivating auto image creation, defining templates for text that will be written on images, design options and phrase – image folder map.

    You can also check out the video tutorials to learn the image settings better.

    • 6.1 Main

      Under main tab, you can activate/deactivate the automatic image creation. When you check ‘activate’ option, ‘interval for deleting old post thumbnails’ option will be shown. When you activate automatic image creation, the plugin tries to create an image for the post, and then, optionally, it adds it to the post as featured image. If there is a featured image, the plugin uses it to create a modified image. In this case, there will be two images stored in the server for the same post, one of which is not even used. So, to avoid unnecessary disk space usage, the plugin deletes old featured images. You can use the interval option to define an interval for deleting operation. It is recommended that you set this setting between 30 minutes to 1 hour if your post insert rate is too high, such as a post per minute. Try to set this interval so that the plugin will delete 30 to 60 images every time. For example, if you set the interval to every day, and you insert 1000 posts every day, the plugin will try to delete 1000 attachments at once. In this case, your server may not be able to handle this amount of work. So, it is recommended that you keep this between 30 to 60 minutes.

      When you activate automatic image creation, the plugin will use the first image in the post content, if it exists. If not, it will use the featured image of the post. If there is no featured image, the plugin will try to find a random image using phrase – image folder map. If the plugin can find an image, it will edit that image considering template and design settings.

    • 6.2 Templates

      You can define several templates to be used for the image. To learn what are the templates and how they are used, please refer to the templates section under Main section.

      ‘Text templates’ setting can be used to provide templates for the text that will be written onto the image. For example, you can provide a template such as “[title]”. In this case, post title will be written onto the image.

      The text created by using ‘above text templates’ will be written above the text created by using ‘text templates’. For example, if you add a template such as “[category]” for this setting, first post category will be written over the post title (we used post title above as an example).

      ‘Title templates’ can be used to create the text for ‘title’ attribute of ‘img’ tag. In addition, ‘alt templates’ can be used to create the text for ‘alt’ attribute of ‘img’ tag. These will be effective only when the created image is in the post content.

    • 6.3 Design

      You can set design options for to-be-edited images. There are several options available. You can set font family, text color, text background color, border width and border color. You can define several design options, if you want to randomize them. For example, if you created 10 different design options, one of them will be used each time when editing an image.

    • 6.4 Phrase - Image Folder Map

      Sometimes, you may want to use a random image if the post does not have an image. You can do it using the phrase – folder map. You can define image folders that should be used if a phrase exists in the content. For example, if you want to show a random fruit basket image, when title of the post contains ‘fruit’, first, you need to create a folder under ‘uploads’ directory. Then, you need to put a few images inside that folder. So, now you have ‘uploads/your-folder’ folder that contains several fruit basket images. Now, you can add a new map item for ‘title phrase – image folder map’, by writing ‘your-folder’ to comma-separated folders field, and ‘fruit’ to comma-separated phrases field. Now, if a post whose title contains ‘fruit’ does not have an image, one of the images inside ‘your-folder’ will be prepended to the post content. It will also be added as featured image, if you set it in the main image settings. You can define several image folders and phrases by separating them with comma. If you want to search phrases in the post content, you can use ‘content phrase – image folder map’ setting.

      Other than the settings mentioned above, you can provide general image folders in ‘general image folders’ setting. If no image is found using title phrase and content phrase – image folder maps, general image folders will be used to find an image. General image folders should also be created under ‘uploads’ directory.

  • 7 Videos

    video-min

    The plugin is able to create videos for popular posts. To do this, it takes advantage of FFmpeg library. Therefore, to be able to use automatic video creation feature, you need to install and enable FFmpeg on your server. In addition, you also need to enable following libs: libfreetype, libfontconfig, libfribidi, libmp3lame, libopus, libtheora, libx265.

    The plugin is also able to upload videos to your YouTube accounts. The uploaded videos can be included to the related posts as well.

    In addition to these, you can also use ‘bonus video’ feature to show bonus videos in your posts. Bonus videos are the videos that can be included into the posts to increase the time spent on the page.

    You can also check out the video tutorials to learn the video settings better.

    • 7.1 Main

      In the main settings tab, you can activate/deactivate automatic video creation. After you check ‘activate’ checkbox, two different interval options will be shown.

      One of these is ‘interval for popular post retrieval’. The plugin is able to create videos for popular posts. This is because video creation is a heavy process. You probably do not want your server to be busy creating videos all the time. So, the plugin prefers creating videos for popular posts. When you set an interval for popular post retrieval, let’s say 30 minutes, the plugin checks posts that are published in the last 30 minutes and adds them to the video creation queue. You can configure how the plugin decides a post is popular in ‘posts’ tab.

      The other interval setting is the interval for video creation. The plugin uses this setting to decide when to create a video for a post in the video creation queue. For example, if you set this interval to 10 minutes, the plugin will get the next post in the video creation queue, create a video for it and upload it to your YouTube accounts (if you enabled the uploading) every 10 minutes. It would be wise to decide this time interval by considering how much time a video creation process requires. The amount of time that the video creation requires is directly related to the length of the video. The length of the video depends on the template and design settings. For example, if the text that should be written onto the video is too long, the video will be long as well. It also depends on other timing settings as well. Therefore, after you set the design settings for the video, you should test the video creation time and decide the interval for video creation accordingly. Also, keep the time required for uploading the video to your YouTube accounts (if you enable it) in mind as well.

      FFmpeg executable
      You need to write the path to FFmpeg executable for this setting. After you write the path, you can check if it is the right path by clicking the test button next to the input field. After you click the test button, you should see FFmpeg version and some configuration details about the current FFmpeg installation. Please make sure the required libraries (explained in the beginning of this section) are installed and activated for the FFmpeg.

      Upload to YouTube
      If you want to upload created videos to YouTube, you need to check this checkbox. After the checkbox is checked, you will see several other related options. First of all, select your region. This is important. Next, you need to supply a client ID and a client secret. To be able to do this, please read the information of ‘YouTube Client ID’ setting by clicking the information button next to the label. After you write your client ID and client secret, please save the settings. When the settings are saved, you will see the ‘YouTube Login’ button placed after the client secret setting. Please click the button and login to the app. After you authenticated the plugin, you will be redirected to the video settings page. You may want to add another account later. If you do so, just click the login button again, and authenticate the app with your other account. You can now configure the plugin so that it uploads the videos to your accounts by going to ‘YouTube’ tab.

    • 7.2 Posts

      As explained in the main settings section, the plugin creates videos for popular posts. You can configure how the plugin decides a post is popular or not. In the main settings tab, you set an interval for popular post retrieval. Here, you can set how many views a post should have to be considered as a popular post. You can also set maximum popular post count that can be retrieved at once. For instance, if you set it to 3, when popular posts are found, first 3 of them will be added to video creation queue.

    • 7.3 Templates

      You can define several templates for the video here. If you do not know what the templates are, please check ‘templates’ section under ‘main’ section. ‘Video title templates’ and ‘video description templates’ will be used to create video’s title and description, which are used to set title and description of the video on the site that the video is uploaded to, e.g. YouTube. You can also set tags by defining ‘video tag templates’.

      The text that will be written onto the video will be set using the video text templates. For example, let’s say you want first 3 sentences to be written onto the video. You can write a template like “[content max-sentences=3]”. Now, first 3 sentences of the post’s content will be used for the text that will be written onto the video. The text will be split into sentences. Each sentence will be tried to be matched with an image inside the post’s content. If there are not enough images, ‘image – folder map’ in ‘image settings’ will be used to find suitable images for the post.

    • 7.4 Design

      Design settings include several options that can be customized for the video.

      ‘Minimum image duration’ is the duration indicating at least how many milliseconds an image should be displayed. Sometimes, the text that is matched with an image might be too short. In this case, the image will be shown just for a few milliseconds. You probably do not want something like this. To overcome this situation, you can define minimum image duration. For instance, if you set 2000 milliseconds as minimum image duration, all of the images in the video will be shown at least 2 seconds no matter what.

      You can also define duration per word in milliseconds. For example, to make sure every viewer can read the text written on the video, you can set a long duration per word, say 500 milliseconds. In this case, the duration of the text that is written onto the video will be calculated by splitting the text into words and multiplying duration per word and number of words. For example, if the text has 10 words, it will be shown for 5000 milliseconds, or 5 seconds.

      A backup image can be used to make sure a video always has an image in it. You might not be able to provide image for every case. Instead, you can define a backup image that will be shown for whole video. To do this, you can provide an image path relative to the uploads folder for this setting. Let’s say you have an image ‘uploads/my-images/image.jpg’. You can write ‘my-images/image.jpg’ to this input field to set this image as the backup image.

      You can also provide intro and/or outro videos. The paths for these videos are again relative to your uploads folder. Intro videos will be prepended to the created videos, while outro videos will be appended to them.

      There are several styling options as well. You can define video’s width, height and background color. Note that, high width/height values will result in larger video size, and hence longer video creation times. You can also set text’s width and height percentage. For example, if you set 50 for both width and height percentage values, the text will be fit to maximum 50% of video width and height. In this case, if the text does not fit into the defined width and height, it will be cut. The cut operation may result in the text be cut in new lines, or cut into another scene. You can set several text color and text background color pairs for each style group. In case you define more than one pair, they will be used one by one for each scene. You can also define fading color of the images. This color will be used when fading the images into each other.

    • 7.5 Phrase - Audio Folder Map

      This is the audio version for ‘phrase – image folder map’ setting. So, please refer to ‘phrase – image folder map’ section to understand what the settings under this tab does.

      The audios you define here will be used as background music for the videos.

    • 7.6 YouTube

      You can define category of the video and the accounts the video will be uploaded to, here. In case you define several accounts, created videos will be uploaded to all of the defined accounts. Note that if a channel does not have permission to add a video to the specified category, the video will be uploaded without a category. In this case, YouTube will assign a default category for the video.

    • 7.7 Bonus Video

      Bonus videos are the videos that can be shown with [tspt-bonus-video] short code, in order to show a video inside a post. This can be used to increase page view duration.

      The settings are similar to ‘phrase – image folder map’ or ‘phrase – audio folder map’. Here, you can match phrases with video IDs. For example, if you want to show a YouTube video with ID ‘12345678910’ when the post title contains ‘cool’, you can go to ‘title phrase – video ID map, write ‘12345678910’ to ‘comma-separated video IDs’ input, and ‘cool’ to ‘comma-separated phrases’ field, and select ‘YouTube’ in the select input. You can define more than one phrase and video ID by separating them with commas. If there are more than one video ID, one of the video IDs will be used randomly. If you use the [tspt-bonus-video] short code more than once in the post content, the videos will be shown uniquely. In other words, there will not be any duplicate videos.

      You can also define your custom bonus video HTML template. To place the video into the template, you can use [bonus-video] short code. If you want to add custom CSS codes, you can use ‘CSS’ setting. The CSS codes will be loaded with the bonus video template.

      To learn how to show a bonus video inside your posts, please read the description of bonus video settings by visiting the bonus video settings page in your admin panel.

  • 8 Social Media

    social-media-min

    The plugin can share popular posts on Facebook and Twitter automatically. You can define how the plugin decides what posts are popular and templates that will be used to create share texts.

    You can also check out the video tutorials to learn the social media settings better.

    • 8.1 Main

      You can activate/deactivate auto sharing here. When you check ‘activate’ checkbox, additional interval settings will be shown. These interval settings are social media version of the interval settings in main video settings. So, to learn more about these settings, please refer to ‘main’ section of ‘video’ section.

      Sharing on Facebook
      To activate sharing on Facebook, please check ‘activate’ checkbox for Facebook. When you do this, there will be additional options shown, which are Facebook app ID and Facebook app secret. You need to create a Facebook app and insert its ID and secret to these fields. You can follow Facebook’s guide to creating an app here: https://developers.facebook.com/docs/apps/register Please make sure that the app can use ‘manage_pages’ and ‘publish_pages’ permissions. If these permissions cannot be used by your app, the posts cannot be shared on your Facebook pages.

      After you create your app and write the ID and secret for the app, save the settings. After the settings are saved, you will see ‘Facebook app login’ option with a login button. Click the login button and authenticate your app with the Facebook account which can manage the pages you want to share updates on. When the authentication is done, you will be redirected back to the social media settings page.

      Now, you can go to ‘Facebook’ tab and select the pages you want the posts to be shared on.

      Sharing on Twitter
      To activate sharing on Twitter, please check ‘activate’ checkbox for Twitter. When you do this, there will be additional options shown, which are Twitter app consumer key and secret. You need to create a Twitter app and insert its consumer key and secret to these fields. You can go to https://apps.twitter.com/ to create your app. Creating an app is very straight-forward. However, if you want to learn more, just Google ‘how to create Twitter app’. Please make sure that the app has write permissions. If the app does not have write permissions, the posts cannot be shared on your Twitter accounts.

      After you create your app and write consumer secret and key, save the settings. After the settings are saved, you will see ‘Twitter app login’ option with a ‘get login URL’ button. Click the button and wait for ‘login to the app’ text to be shown. When you see ‘login to the app’, click the button and authenticate the account on which you want to share updates. After the authentication, you will be redirected to the social media settings page.

      Now, you can go to ‘Twitter’ tab and select the Twitter accounts you want the posts to be shared on.

      Adding more accounts
      To add more social media accounts, just click the login button for the social media site and login with your other accounts. The accounts will be added to your other existing accounts.

    • 8.2 Posts

      The settings under this tab are the same as ‘posts’ settings for ‘video’. So, please refer to ‘posts’ section of ‘video’ section to learn more about post settings.

    • 8.3 Templates

      You can define several templates for the share texts here. If you do not know what the templates are, please check ‘templates’ section under ‘main’ section.

    • 8.4 Facebook

      You can select Facebook pages on which you want to share the posts. If you define more than one page, the posts will be shared on all of the pages.

    • 8.5 Twitter

      You can select Twitter accounts on which you want to share the posts. If you define more than one account, the posts will be shared on all of the accounts.

      You can also define maximum image count a Tweet can have.

  • 9 Advertisements

    advertisement-min

    The plugin is able to show advertisements related to your posts. Advertisements can be set in two ways. First, you can create manual ad codes and relate them with the posts using some options. The second way is to configure the plugin to crawl related products (or product-like things) from a site. For example, you can tell the plugin “if the post content contains ‘phone’, search ‘phone’ on amazon.com and show the products found by the search as advertisements by appending my referrer code”.

    To learn more about how to show the advertisements on front-end of your WP site, please read the description of ‘main advertisement settings’ tab.

    You can also check out the video tutorials to learn the advertisement settings better.

    • 9.1 Main

      You can activate/deactivate advertisements using the ‘activate’ option. The advertisements can be shown either by adding PHP code to certain theme files or using [tspt-ad] short code. To learn more about how to show the advertisements on front-end of your WP site, please read the description of ‘main advertisement settings’ tab.

      Under the main tab, you can set maximum ad title and text length, whether the ads should be opened in a new window, and whether the URLs should be followed or not. These settings will be used only for the ads crawled from other sites. In other words, these settings will not be used for manually added ad codes.

      You can also provide additional CSS codes that should be loaded with the advertisement codes using ‘additional CSS’ option.

    • 9.2 Ads

      Ads tab contains a list of advertisement settings. You can create, modify or activate/deactivate your advertisements under this tab.

      • 9.2.1 Advertisement Settings
        • 9.2.1.1 Main

          Here, you can set a name for your ad settings. For example, if this ad is for amazon.com, you can write ‘Amazon’ for ad title. To activate the ad, simply check the ‘activate’ checkbox. If you want to set the ads that the ad settings contain as fallback ads, check ‘fallback’ checkbox. To learn more about fallback ads, please refer to ‘fallback ads’ section.

          Search phrases in
          You are able to define phrases for the ads. For example, you can say “if the post title contains ‘phone’, show this ad”. Here, you can define the contents where the phrases will be searched for. For instance, if you want the phrases that you define to be searched in post title, post content and meta description, you can select these 3 content types. After that, phrases will be searched in those contents.

          Show ads in pages of these posts
          Sometimes, you may want to show the advertisements when a specific post is shown. You can do so by defining the posts here.

          You can also provide additional CSS codes to be loaded with the ads for this advertisement setting.

        • 9.2.1.2 From URL

          You can define settings for the advertisements/products that should be crawled from another site.

          Phrase – Search URL Map
          Here, you can define search URLs for the phrases. For example, you can say that “if the content contains ‘drone’, use this search URL (the URL which is used to search ‘drone’ on amazon.com, e.g. https://www.amazon.com/s/ref=nb_sb_noss_1?url=search-alias%3Daps&field-keywords=drone) to retrieve advertisements”. In this case, when ‘drone’ is found in the content, the plugin will try to retrieve the products listed on the search URL. Note that you can define the content types where the phrases will be searched in ‘main’ settings. For instance, if you set ‘post title, post excerpt, post content’ as the value of ‘search phrases in’ option, ‘drone’ will be searched in post title, post excerpt and post content. You can define several phrases for each URL by separating the phrases with commas.

          Test Search Page URL
          A URL for a search results page that will be used to test CSS selectors.

          Ad Container Selectors
          You need to write a CSS selector for the container element, which contains the image, title, URL and additional text of the product. For example, if each product’s information is in a ‘div’ element with ‘s-item-container’ class, you can write “div > .s-item-container”.

          Ad Title Selectors
          Here, you need to write a CSS selector for the title of the product. This selector should be relative to the ad container. For example, if the ad container has a ‘span’ element with ‘product-title’ class, you can write ‘span.product-title’.

          Ad URL Selectors
          Here, you need to write a CSS selector for the URL of the product. This selector should be relative to the ad container. For example, if the ad container has an ‘a’ element with ‘product-link’ class, you can write ‘a.product-link’.

          Ad Image URL Selectors
          Here, you need to write a CSS selector for the image URL of the product. This selector should be relative to the ad container. For example, if the ad container has an ‘img’ element with ‘product-image’ class, you can write ‘img.product-image’.

          Ad Text Selectors
          Here, you can write a CSS selector for the price of the product or any other text. This selector should be relative to the ad container. For example, if the ad container has a ‘span’ element with ‘product-price’ class, you can write ‘span.product-price’.

          Conditions
          Sometimes, you may want to crawl only a specific product. For example, if you are showing products from Amazon, you may want to target only specific sellers. Here, seller name can be used as a condition. Let’s say you want to show products of a seller with a name of ‘drone_seller’. The seller name should be available in ad container. Let’s also say that the seller name is written in a ‘span’ element with ‘seller-name’ class. You can write ‘span.seller-name’ for the selector, ‘text’ for the attribute, select ‘should match’ from the condition selection input, and ‘drone_seller’ to value input. By this way, the plugin will only show the products of ‘drone_seller’. You can also use other conditions, such as ‘shoud contain’ or ‘should start with’. The names of the conditions are self-explanatory.

          Unnecessary Element Selectors
          You can define CSS selectors for the unnecessary elements. Sometimes, some elements are required to be removed from the page so that you will be able to retrieve the right content. If you are in a situation like this, you can use this setting. The elements found by CSS selectors you write here will be removed from the HTML content as soon as the page is crawled. In other words, they will be removed before the ads are retrieved using the selectors defined for ad container, ad title, etc.

          Find and replace in ad HTML
          You can find and replace in the HTML code of the page which is used to retrieve the ads/products. You can also use regular expressions.

          You can also watch WP Content Crawler's introduction video to understand the CSS selectors and how they are used in the plugin.

        • 9.2.1.3 Manual

          You can define manual advertisement codes as well.

          Phrase – Ad Code Map
          This setting can be used to match phrases and advertisement codes. There is an editor which you can use to write your custom HTML codes. You can define your phrases in ‘comma-separated phrases’ input field. For example, let’s say you want to show your custom HTML codes when the content (remember, you define where to search for phrases in the main tab) contains ‘car’ or ‘self-driving’. Who knows, maybe you sell drones for self-driving cars. You can write ‘car, self-driving’ to ‘comma-separated phrases’ input field. In this case, if the content has ‘car’ or ‘self-driving’ in it, your custom ad code will probably be shown, if you did not define too many ads for these phrases. If you want your custom ad to be shown full-width and without any ads near it, check ‘full width and single’ checkbox. By this way, if your custom ad is matched by the content, it will be shown alone and full-width.

    • 9.3 Fallback Ads

      You may want to show an ad when there is no defined advertisement matched with the content, like a backup advertisement. For example, you can show your AdSense code when there is no ad to be shown. To be able to do this, simple add a new item to ‘fallback advertisement codes’ setting and paste your AdSense code to the editor. You can write any HTML code here. You can provide several HTML codes. If there many HTML codes that should be used as fallback ads, the plugin will show a few of them next to each other. If you want your fallback ad codes to be shown alone, simple check ‘full width and single’ checkbox.

  • 10 Tester

    Tester makes it possible to test auto edit, video creation, advertisements and bonus videos. To test, simply select the test type, the post that should be tested and hit the test button.

  • 11 Tools

    tools-min

    Tools are composed of several tools that you can use to quickly interact with the plugin.

    • 11.1 Post

      Using post tools, you can edit a post or revert it to its original. Please note that you need to edit or revert twice in order for the operation to be complete.

      You can also remove boost post data that were created before. When you use boost post short code in a post, in order to provide same boosted posts and provide them fast, the plugin caches the boost post data. If you want the plugin change the boost post data, you need to remove the old boost post data. You can do it by using ‘remove boost post data’ tool.

    • 11.2 Video

      You can manually trigger video creation for a post using ‘create video’ tool. If you also want the video to be uploaded to the available video sites, check ‘upload’ checkbox before creating the video.

      When a video is created for a post, its data is saved to the database. If you want to delete the video data, you can use ‘remove post video’ tool.

      You can use ‘remove bonus videos’ tool to remove bonus video data of a post.

    • 11.3 Accounts

      Using the tools here, you can remove registered accounts, such as Facebook pages, Twitter accounts or YouTube channels.

    • 11.4 Ads

      ‘Create ad code’ tool helps you create manual ad code that is compatible with the ad code the plugin uses. By this way, you can create ad codes with the same styling options the plugin uses.

      Using ‘invalidate URL cache’ tool, you can invalidate advertisement URL caches. These URLs are the URLs you defined in advertisement settings as search URLs. The plugin caches the target search pages so that it can provide the advertisements fast. Sometimes, target search page’s content might be changed before the cache is invalidated. In this case, you may want to see the new advertisements right away. To do this, you can manually invalidate the search URLs’ cache. To do this, you need to write the exactly same URL that is used as search URL in advertisement settings.

  • 12 Logs

    Logs can be enabled from main settings of the plugin. When you enable logs, you will see ‘Logs’ item under the ‘Post Tools’ menu item in the admin menu.

    Using the logs page, you can track what the plugin does in the background. If there is an error, you will be able to see it on the logs page.

    You can also check out the video tutorials to understand the logs better.

  • 13 FAQ
    • 13.1 How to add my own fonts?

      You can add your fonts in uploads/tspt-fonts folder. Your font has to have a ttf extension.