-
Notifications
You must be signed in to change notification settings - Fork 0
/
iei-menupdf.php
184 lines (133 loc) · 5.34 KB
/
iei-menupdf.php
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
<?php
include("funzioni.php");
/**
* Plugin Name: Iei MenuPdf
* Description: Crea uno shortcode con il pdf del tuo Menu
* Version: 0.0.1
* Text Domain: options-plugin
*/
if (!defined("ABSPATH")) {
exit; // esci se questo file viene letto direttamente
}
if (!class_exists("ieimenupdf")) {
class ieimenupdf
{
public function __construct()
{
add_action('admin_menu', array($this, 'crea_voci'));
//questo si triggera quando il plugin viene attivato ed aggiunge una nuova tabella nel database
register_activation_hook(__FILE__, array($this, 'plugin_activation'));
//questo aggiunge la possibilità di avere uno shortcode
add_action('init', array($this, 'register_shortcodes'));
add_action('init', array($this, 'register_shortcodes_a'));
}
public function crea_voci()
{
// Add main menu entry
add_menu_page(
'IEI Menu',
'Il tuo menu',
'manage_options',
'iei-menu-dashboard',
array($this, 'iei_menu_dashboard_page'),
'dashicons-food', // Icon for the menu entry (replace with your preferred icon)
20 // Position on the menu
);
add_submenu_page(
'iei-menu-dashboard',
'Internet & Idee',
'Internet & Idee',
'manage_options',
'iei-menu-external',
array($this, 'iei_menu_external_page')
);
}
// Callback functions per menu e submenu del plugin
public function iei_menu_dashboard_page()
{
// Main dashboard page content
echo '<h2>Il Tuo Menu</h2><br>';
echo '<br>Per visualizzare il tuo menu in una pagina, usa questo shortcode: <br> <input style="margin-top:10px;" type="text" value="[ieimenupdf_content]"/>';
include("listafile.php");
}
public function iei_menu_external_page()
{
echo '<h2>Internet & Idee</h2>';
echo '<p>Questo plugin è stato sviluppato da <a target="_blank" href="https://internet-idee.net">Internet & Idee</a></p>';
echo '<img style="width:250px;" src="https://www.internet-idee.net/assets/img/colore.svg"/>';
// Contenuto
}
// LAVORAZIONE PER CREAZIONE TABELLA NEL DATABASE ALL'ATTIVAZIONE DEL PLUGIN
public function plugin_activation()
{
$this->create_database_table();
}
public function create_database_table()
{
global $wpdb;
$table_name = $wpdb->prefix . 'listapdf';
if ($wpdb->get_var("SHOW TABLES LIKE '$table_name'") != $table_name) {
$charset_collate = $wpdb->get_charset_collate();
$sql = "CREATE TABLE $table_name (
id mediumint(9) NOT NULL AUTO_INCREMENT,
nome_file varchar(255) NOT NULL,
url_completo varchar(255) NOT NULL,
hafine boolean NULL DEFAULT NULL,
data_partenza date NOT NULL,
data_fine date NOT NULL,
PRIMARY KEY (id)
) $charset_collate;";
require_once(ABSPATH . 'wp-admin/includes/upgrade.php');
dbDelta($sql);
}
}
// FINE LAVORAZIONE PER CREAZIONE TABELLA NEL DATABASE
//GESTIONE SHORTCODE
public function ieimenupdf_shortcode() {
// Qui mettere lo shortcode
global $wpdb;
$etichetta = 0;
$arrayrisultati = visualizzapdfcorrente($wpdb,$etichetta);
if (isset($arrayrisultati)){
return $arrayrisultati['html'];} else {
return 'Nessun menu abilitato';
}
}
public function register_shortcodes() {
add_shortcode('ieimenupdf_content', array($this, 'ieimenupdf_shortcode'));
}
//GESTIONE SHORTCODE
//GESTIONE SHORTCODE TAG A
public function ieimenupdf_shortcode_a($atts) {
//Accesso ad array attributi per prendermi il nome etichetta
$atts = shortcode_atts(
array(
'etichetta' => 'Menu',
// Add more attributes if needed
),
$atts,
'ieimenupdf_content_a' // Shortcode di riferimento
);
// Qui mettere lo shortcode
global $wpdb;
$etichetta = $atts['etichetta'];
$arrayrisultati = visualizzapdfcorrente($wpdb,$etichetta);
if (isset($arrayrisultati)){
return $arrayrisultati['html'];} else {
return 'Nessun menu abilitato';
}
}
public function register_shortcodes_a() {
add_shortcode('ieimenupdf_content_a', array($this, 'ieimenupdf_shortcode_a'));
}
//GESTIONE SHORTCODE TAG A
}//FINE CLASSE
new ieimenupdf();
// AGGIUNGO CSS A HEADER DI WORDPRESS
function custom_header_content() {
// Add your custom content here
echo generacssmodal();
echo generajsmodal();
}
add_action('wp_head', 'custom_header_content');
}