Post Author IP
This plugin records the IP address of the original post author when a post first gets created. The admin listing of posts is amended with a new “Author IP” column that shows the IP address of the author who first saved the post. The plugin is unable to provide IP address information for posts that were created prior to the use of this plugin. Links: Plugin Homepage | Plugin Directory Page | GitHub | Author Homepage Hooks The plugin is further customizable via four filters. Typically, code making use of filters should ideally be put into a mu-plugin or site-specific plugin (which is beyond the scope of this readme to explain). c2c_show_post_author_ip_column (filter) The ‘c2c_show_post_author_ip_column’ filter allows you to determine if the post author IP column should appear in the admin post listing table. Your hooking function can be sent 1 argument: Argument : $show_column (bool) Should the column be shown? Default true. Example: /** * Don't show the post author IP column except to admins. * * @param bool $show_column Should the column be shown? Default true. * @return bool */ function post_author_ip_column_admin_only( $show ) { if ( ! current_user_can( 'manage_options' ) ) { $show = false; } return $show; } add_filter( 'c2c_show_post_author_ip_column', 'post_author_ip_column_admin_only' ); c2c_get_post_author_ip (filter) The ‘c2c_get_post_author_ip’ filter allows you to customize the value stored as the post author IP address. Your hooking function can be sent 2 arguments: Arguments : $ip (string) The post author IP address. $post_id (int) The post ID. Example: /** * Store all IP addresses from local subnet IP addresses as the same IP address. * * @param string $ip The post author IP address. * @param int $post_id The post ID. * @return string */ function customize_post_author_ip( $ip, $post_id ) { if ( 0 === strpos( $ip, '192.168.' ) ) { $ip = '192.168.1.1'; } return $ip; } add_filter( 'c2c_get_post_author_ip', 'customize_post_author_ip', 10, 2 ); c2c_get_current_user_ip (filter) The ‘c2c_get_current_user_ip’ filter allows you to customize the current user’s IP address, as used by the plugin. Your hooking function can be sent 1 argument: Argument : $ip (string) The post author IP address. Example: /** * Overrides localhost IP address. * * @param string $ip The post author IP address. * @param int $post_id The post ID. * @return string */ function customize_post_author_ip( $ip, $post_id ) { if ( 0 === strpos( $ip, '192.168.' ) ) { $ip = '192.168.1.1'; } return $ip; } add_filter( 'c2c_get_post_author_ip', 'customize_post_author_ip', 10, 2 ); c2c_post_author_ip_allowed (filter) The ‘c2c_post_author_ip_allowed’ filter allows you to determine on a per-post basis if the post author IP should be stored. Your hooking function can be sent 3 arguments: Arguments : $allowed (bool) Can post author IP be saved for post? Default true. $post_id (int) The post ID. $ip (string) The post author IP address. Example: /** * Don't bother storing localhost IP addresses. * * @param bool $allowed Can post author IP be saved for post? Default true. * @param int $post_id The post ID. * @param string $ip The post author IP address. * @return string */ function disable_localhost_post_author_ips( $allowed, $post_id, $ip ) { if ( $allowed && 0 === strpos( $ip, '192.168.' ) ) { $allowed = false; } return $allowed; } add_filter( 'c2c_post_author_ip_allowed', 'disable_localhost_post_author_ips', 10, 3 );
Translation with DeepL API
This plugin allows you to use DeepL translation API to translate posts (and pages) right from your WordPress Admin. Adds a translate button to the edit post page. Shows current and remaining API usage. This plugin requires an active DeepL API subscription with access to the API. Please note that DeepL User or Teams plans do NOT include API access. You have to get a “DeepL Developer” plan (both ‘DeepL API Free’ and ‘DeepL API Pro’ work with this plugin) Want to translate Products, meta fields, or translate in batches? Get the DeepL Pro API plugin Please note: the free and the premium version works the same relative to content editors (Elementor, Blocks, etc.). You’re free to test this plugin on your website to see if your specific configuration works well with the plugin. We cannot guarantee that all content editors work perfectly with the DeepL API so please test this plugin before buying the premium (you’ll need the premium only if you need extended features like meta translations and batch translations) Legal This plugin is an independent tool developed by Fluenx and is not affiliated with, endorsed by, or sponsored by DeepL SE. DeepL® is a registered trademark of DeepL SE. All trademarks are property of their respective owners. External services This plugin connects to the DeepL API to provide machine translation services for your WordPress content. What data is sent The text content you choose to translate (post title, excerpt, and/or content) Your DeepL API key for authentication The source and target language codes When data is sent Data is only sent when you explicitly click the “Translate” button in the post editor metabox. No automatic or background translations occur. Service provider This service is provided by DeepL SE. DeepL Terms and Conditions DeepL Privacy Policy DeepL API Documentation Note: This plugin requires a DeepL API subscription. The free “DeepL API Free” plan or paid “DeepL API Pro” plan both work. Standard DeepL User or Teams plans do NOT include API access. External services This plugin relies on the DeepL API to provide text translation services. Service used: DeepL API (provided by DeepL SE). Purpose: To translate WordPress content (posts, pages, strings) into different languages. Data sent: The text content requested for translation and the user’s API Authentication Key are sent to DeepL servers via secure HTTPS requests. Links: DeepL Terms and Conditions: https://www.deepl.com/en/terms/ DeepL Privacy Policy: https://www.deepl.com/en/privacy/ Trademark Disclaimer: This plugin is an independent integration and is not affiliated with, sponsored by, or endorsed by DeepL SE. The name “DeepL” is a trademark of DeepL SE.