PluginProbe
Translation with DeepL API / 2.4.5
Translation with DeepL API v2.4.5
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.5, at wpdeepl.php

149 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.5
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.7.1
11 * Stable tag: 2.4.5
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', false );
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 else {
91
92 }
93
94 }
95 } catch ( Exception $exception ) {
96 if ( current_user_can( 'manage_options' ) ) {
97 print_r( $exception );
98 die( __( 'Error loading WPDeepL','wpdeepl' ) );
99 }
100 }
101
102
103 //global $DeepLForWordPress; $DeepLForWordPress = new DeepLForWordPress();
104 function deepl_is_plugin_fully_configured() {
105 $WP_Error = new WP_Error();
106
107 if ( count( $WP_Error->get_error_messages() ) ) {
108 return $WP_Error;
109 }
110 return true;
111 }
112
113 if ( !function_exists( 'plouf' ) ) {
114 function plouf( $e, $txt = '' ) {
115 if ( $txt != '' ) echo "<br />\n$txt";
116 echo '<pre>';
117 print_r( $e );
118 echo '</pre>';
119 }
120 }
121
122 add_action( 'plugin_action_links_' . plugin_basename( __FILE__ ), 'wpdeepl_plugin_action_links' );
123 function wpdeepl_plugin_action_links( $links ) {
124 $links = array_merge(
125 array(
126 '<a href="' . esc_url( admin_url( '/options-general.php?page=deepl_settings' ) ) . '">' . __( 'Settings', 'wpdeepl' ) . '</a>'
127 ),
128 $links
129 );
130 return $links;
131 }
132
133 register_activation_hook( __FILE__, 'deepl_plugin_activate' );
134 function deepl_plugin_activate() {
135 deepl_install_plugin();
136 }
137
138 register_deactivation_hook( __FILE__, 'deepl_plugin_deactivate' );
139 function deepl_plugin_deactivate() {
140 }
141
142 add_action( 'init', 'deepl_init' );
143 function deepl_init() {
144 if ( !is_admin() ) {
145 return;
146 }
147
148 load_plugin_textdomain( 'wpdeepl', false, dirname( plugin_basename( __FILE__ ) ) . '/languages' );
149 }