PluginProbe
Translation with DeepL API / 2.4.3.12
Translation with DeepL API v2.4.3.12
trunk 0.1.20180323 1.0 1.2.5.1 1.5.2.5 1.7.5 2.4.3.12 2.4.3.9 2.4.5
wpdeepl / wpdeepl.php

wpdeepl.php in Translation with DeepL API 2.4.3.12, at wpdeepl.php

146 lines 4.9 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 <?php
2 /**
3 * Plugin Name: DeepL for WordPress : translation plugin
4 * Description: Get DeepL translation magic right inside your WordPress editor (with a paid DeepL Pro account)
5 * Version: 2.4.3.12
6 * Plugin Slug: wpdeepl
7 * Author: Fluenx
8 * Author URI: https://www.fluenx.com/
9 * Requires at least: 4.0.0
10 * Tested up to: 6.6.1
11 * Stable tag: 2.4.3.12
12 * Text Domain: wpdeepl
13 * Domain Path: /languages
14 */
15
16 //return;
17
18
19 $allow_front_end = get_option('wpdeepl_allow_front_end');
20
21 if( $allow_front_end != 'yes' ) {
22 if ( !function_exists( 'is_admin' ) || !is_admin() )
23 return;
24
25 }
26
27
28 defined( 'WPDEEPL_FLAVOR' ) or define( 'WPDEEPL_FLAVOR', 'free' );
29 defined( 'WPDEEPL_NAME' ) or define( 'WPDEEPL_NAME', plugin_basename( __FILE__ ) );
30 defined( 'WPDEEPL_SLUG' ) or define( 'WPDEEPL_SLUG', 'wpdeepl' );
31 defined( 'WPDEEPL_DIR' ) or define( 'WPDEEPL_DIR', dirname( __FILE__ ) );
32 defined( 'WPDEEPL_PATH' ) or define( 'WPDEEPL_PATH', realpath( __DIR__ ) );
33 defined( 'WPDEEPL_URL' ) or define( 'WPDEEPL_URL', plugins_url( '', __FILE__ ) );
34
35 $plugin_data = get_file_data( __FILE__, array( 'Version' => 'Version' ), false );
36 defined( 'WPDEEPL_VERSION' ) or define( 'WPDEEPL_VERSION', $plugin_data['Version'] );
37
38 defined( 'WPDEEPL_DEBUG' ) or define( 'WPDEEPL_DEBUG', 0 );
39
40 $wp_upload_dir = wp_upload_dir();
41 defined( 'WPDEEPL_FILES' ) or define( 'WPDEEPL_FILES', trailingslashit( $wp_upload_dir['basedir'] ) . 'wpdeepl' );
42 defined( 'WPDEEPL_FILES_URL' ) or define( 'WPDEEPL_FILES_URL', trailingslashit( $wp_upload_dir['baseurl'] ) . 'wpdeepl' );
43 if ( !is_dir( WPDEEPL_FILES ) ) mkdir( WPDEEPL_FILES );
44
45 // obs 20210422 v1.7 defined( 'DEEPL_API_URL' ) or define( 'DEEPL_API_URL', 'https://api.deepl.com/v2/' );
46
47 function zebench_wpdeepl_paths( $paths = array() ) {
48 $paths['deepl_settings'] = array(
49 'files' => WPDEEPL_FILES
50 );
51 return $paths;
52 }
53
54 try {
55 if ( is_admin() || $allow_front_end == 'yes' ) {
56
57
58 include_once trailingslashit( WPDEEPL_PATH ) . 'deepl-configuration.class.php';
59
60 include_once trailingslashit( WPDEEPL_PATH ) . 'includes/deepl-functions.php';
61 include_once trailingslashit( WPDEEPL_PATH ) . 'includes/deepl-plugin-install.php';
62
63
64 include_once trailingslashit( WPDEEPL_PATH ) . 'modules/deepl-translate-post.php';
65
66 include_once trailingslashit( WPDEEPL_PATH ) . 'settings/wp-improved-settings-api.class.php';
67 include_once trailingslashit( WPDEEPL_PATH ) . 'settings/wp-improved-settings.class.php';
68 include_once trailingslashit( WPDEEPL_PATH ) . 'settings/wp-improved-settings-wpdeepl.class.php';
69
70 include_once trailingslashit( WPDEEPL_PATH ) . 'client/deepl-data.class.php';
71 include_once trailingslashit( WPDEEPL_PATH ) . 'client/deeplapi-functions.php';
72 include_once trailingslashit( WPDEEPL_PATH ) . 'client/deeplapi.class.php';
73 include_once trailingslashit( WPDEEPL_PATH ) . 'client/deeplapi-translate.class.php';
74 include_once trailingslashit( WPDEEPL_PATH ) . 'client/deeplapi-usage.class.php';
75
76 if( is_admin() ) {
77 include_once trailingslashit( WPDEEPL_PATH ) . 'admin/deepl-admin-hooks.php';
78 include_once trailingslashit( WPDEEPL_PATH ) . 'admin/deepl-admin-functions.php';
79 include_once trailingslashit( WPDEEPL_PATH ) . 'admin/deepl-metabox.php';
80 //if( file_exists( trailingslashit( WPDEEPL_PATH ) . 'admin/deepl-elementor.php' ) include_once trailingslashit( WPDEEPL_PATH ) . 'admin/deepl-elementor.php';
81
82 }
83
84 add_filter('zebench_plugins_paths', 'zebench_wpdeepl_paths');
85
86 $customisation_file = trailingslashit( WPDEEPL_PATH ) . 'custom-integration.php';
87 if ( file_exists( $customisation_file ) ) {
88 include_once $customisation_file;
89 }
90
91 }
92 } catch ( Exception $exception ) {
93 if ( current_user_can( 'manage_options' ) ) {
94 print_r( $exception );
95 die( __( 'Error loading WPDeepL','wpdeepl' ) );
96 }
97 }
98
99
100 //global $DeepLForWordPress; $DeepLForWordPress = new DeepLForWordPress();
101 function deepl_is_plugin_fully_configured() {
102 $WP_Error = new WP_Error();
103
104 if ( count( $WP_Error->get_error_messages() ) ) {
105 return $WP_Error;
106 }
107 return true;
108 }
109
110 if ( !function_exists( 'plouf' ) ) {
111 function plouf( $e, $txt = '' ) {
112 if ( $txt != '' ) echo "<br />\n$txt";
113 echo '<pre>';
114 print_r( $e );
115 echo '</pre>';
116 }
117 }
118
119 add_action( 'plugin_action_links_' . plugin_basename( __FILE__ ), 'wpdeepl_plugin_action_links' );
120 function wpdeepl_plugin_action_links( $links ) {
121 $links = array_merge(
122 array(
123 '<a href="' . esc_url( admin_url( '/options-general.php?page=deepl_settings' ) ) . '">' . __( 'Settings', 'wpdeepl' ) . '</a>'
124 ),
125 $links
126 );
127 return $links;
128 }
129
130 register_activation_hook( __FILE__, 'deepl_plugin_activate' );
131 function deepl_plugin_activate() {
132 deepl_install_plugin();
133 }
134
135 register_deactivation_hook( __FILE__, 'deepl_plugin_deactivate' );
136 function deepl_plugin_deactivate() {
137 }
138
139 add_action( 'init', 'deepl_init' );
140 function deepl_init() {
141 if ( !is_admin() ) {
142 return;
143 }
144
145 load_plugin_textdomain( 'wpdeepl', false, dirname( plugin_basename( __FILE__ ) ) . '/languages' );
146 }