Version Description
- New: A new "Attachment File Metadata" meta box on the Media/Edit Media screen displays IPTC, EXIF, XMP, ID3, PDF and/or MSO metadata embedded in the item's file. More information in the pull-down Help menu on that screen.
- New: For
[mla_gallery]
, a specialmla_minimum
parameter lets you display an empty gallery unless a minimum number of items is selected. - New: The "MLA Advanced Custom Fields Example" plugin now supports ACF "Select" fields, mapping between the field label and field value on the Media/Assistant submenu table and the Bulk and Quick Areas.
- New: The new "MLA Filename Issues Example" plugin creates a custom data source to help identify items with duplicate file names for cleanup consideration.
- New: The term Parent column has been added to the Settings/Media Library Assistant Debug tab "Add Tax. Columns" results.
- Fix: Custom Field Rules with an "Inactive" status are now excluded from Media/Assistant submenu table columns and the Quick and Bulk Edit areas.
- Fix: An inconsistency in counting attachments that caused the Settings/Media Library Assistant IPTC/EXIF tab "Execute" and "Execute All Rules" actions to fail has been corrected.
- Fix: An XMP metadata parsing error for empty "rdf:Description" values has been corrected.
- Fix: The "MLA Custom Field Search Example" plugin has been updated to use the latest plugin settings class file, so the class can be shared with other example plugins.
- Fix: The old "MLA ACF Checkbox Example" plugin has been flagged as obsolete, replaced by the more useful "MLA Advanced Custom Fields Example" plugin.
- Fix: For the Media/Assistant Quick Edit Area, users with the 'unfilitered_html' permission can add any HTML tag to a custom field value.
- Fix: Incorrect display of counts for
[mla_tag_cloud]
and[mla_term_list]
terms with more than 1,000 assigned items has been corrected. - Fix: Toolbar cropping in the "Add media" popup window for WordPress versions before 5.8 has been corrected.
- Fix: Toolbar cropping in the "Add media" popup window when the Disable Gutenberg (by Jeff Starr) plugin is active has been corrected.
- Fix: For the "gallery in" and "MLA Gallery in" reporting, PHP "trigger_error" Warning messages have been converted to MLA debug logging messages.
- Fix: For the "MLA Insert Fixit" example plugin, a PHP 8.0+ Deprecation Error has been resolved.
Download this release
Release Info
Developer | dglingren |
Plugin | Media Library Assistant |
Version | 2.98 |
Comparing to | |
See all releases |
Code changes from version 2.97 to 2.98
- css/mla-edit-media-style.css +2 -1
- examples/plugins/mla-acf-checkbox-example.php +13 -236
- examples/plugins/mla-advanced-custom-fields-example.php +0 -815
- examples/plugins/mla-advanced-custom-fields-example/admin-settings-page.tpl +469 -0
- examples/plugins/{mla-custom-field-search-example/class-mla-example-plugin-settings.php → mla-advanced-custom-fields-example/class-mla-example-plugin-settings-101.php} +100 -22
- examples/plugins/mla-advanced-custom-fields-example/mla-advanced-custom-fields-example.php +1212 -0
- examples/plugins/mla-csv-data-source-example/class-mla-example-plugin-settings-101.php +10 -0
- examples/plugins/mla-custom-field-search-example/admin-settings-page.tpl +16 -2
- examples/plugins/mla-custom-field-search-example/class-mla-example-plugin-settings-101.php +569 -0
- examples/plugins/mla-custom-field-search-example/mla-custom-field-search-example.php +6 -6
- examples/plugins/mla-filename-issues-example.php +229 -0
- examples/plugins/mla-insert-fixit.php +4 -4
- examples/plugins/mla-metabox-hooks-example.php +47 -4
- examples/plugins/mla-ui-elements-example/class-mla-example-plugin-settings-101.php +10 -0
- includes/class-mla-core-options.php +16 -2
- includes/class-mla-core.php +5 -1
- includes/class-mla-data-query.php +4 -11
- includes/class-mla-data-references.php +2 -2
- includes/class-mla-data.php +186 -99
- includes/class-mla-edit-media.php +26 -1
- includes/class-mla-main.php +6 -2
- includes/class-mla-objects.php +18 -19
- includes/class-mla-options.php +6 -1
- includes/class-mla-settings-iptc-exif-tab.php +36 -4
- includes/class-mla-shortcode-support.php +52 -39
- index.php +2 -2
- js/mla-media-modal-scripts.js +37 -4
- js/mla-media-modal-scripts.min.js +1 -1
- languages/media-library-assistant-en_US - References.pot +815 -797
- languages/media-library-assistant-en_US.po +16 -4
- languages/media-library-assistant-en_US.pot +15 -3
- readme.txt +23 -4
- tpls/documentation-settings-tab.tpl +21 -3
- tpls/help-for-edit_attachment.tpl +12 -1
css/mla-edit-media-style.css
CHANGED
@@ -9,7 +9,8 @@
|
|
9 |
#mla_inserted_in,
|
10 |
#mla_gallery_in,
|
11 |
#mla_mla_gallery_in,
|
12 |
-
#mla_image_metadata
|
|
|
13 |
width: 100%;
|
14 |
}
|
15 |
|
9 |
#mla_inserted_in,
|
10 |
#mla_gallery_in,
|
11 |
#mla_mla_gallery_in,
|
12 |
+
#mla_image_metadata,
|
13 |
+
#mla_file_metadata {
|
14 |
width: 100%;
|
15 |
}
|
16 |
|
examples/plugins/mla-acf-checkbox-example.php
CHANGED
@@ -1,32 +1,20 @@
|
|
1 |
<?php
|
2 |
/**
|
3 |
-
*
|
4 |
-
*
|
5 |
-
* In this example, an Advanced Custom Fields "checkbox" custom field is added to the
|
6 |
-
* Media/Assistant submenu table, Quick Edit and Bulk Edit areas.
|
7 |
-
*
|
8 |
-
* The custom field name is "acf_checkbox"; this is the ACF "Field Name", not the
|
9 |
-
* "Field Label". You can support another field by changing all occurances of the name
|
10 |
-
* to match the field you want.
|
11 |
-
*
|
12 |
-
* You must also define an MLA Custom Field mapping rule for the field. You can leave
|
13 |
-
* the Data Source as "-- None (select a value) --" and the other defaults. Check the
|
14 |
-
* three boxes for MLA Column, Quick Edit and Bulk Edit support.
|
15 |
-
*
|
16 |
*
|
17 |
* @package MLA ACF Checkbox Example
|
18 |
-
* @version 1.
|
19 |
*/
|
20 |
|
21 |
/*
|
22 |
Plugin Name: MLA ACF Checkbox Example
|
23 |
Plugin URI: http://davidlingren.com/
|
24 |
-
Description:
|
25 |
Author: David Lingren
|
26 |
-
Version: 1.
|
27 |
Author URI: http://davidlingren.com/
|
28 |
|
29 |
-
Copyright
|
30 |
|
31 |
This program is free software; you can redistribute it and/or modify
|
32 |
it under the terms of the GNU General Public License as published by
|
@@ -60,171 +48,17 @@ class MLAACFCheckboxExample {
|
|
60 |
* @return void
|
61 |
*/
|
62 |
public static function initialize() {
|
63 |
-
|
64 |
-
* The filters are only useful for the admin section; exit in the front-end posts/pages
|
65 |
-
*/
|
66 |
if ( ! is_admin() )
|
67 |
return;
|
68 |
|
69 |
-
|
70 |
-
* add_filter parameters:
|
71 |
-
* $tag - name of the hook you're filtering; defined by [mla_gallery]
|
72 |
-
* $function_to_add - function to be called when [mla_gallery] applies the filter
|
73 |
-
* $priority - default 10; lower runs earlier, higher runs later
|
74 |
-
* $accepted_args - number of arguments your function accepts
|
75 |
-
*/
|
76 |
-
|
77 |
-
/*
|
78 |
-
* Defined in /media-library-assistant/includes/class-mla-main.php
|
79 |
-
*/
|
80 |
-
add_filter( 'mla_list_table_inline_action', 'MLAACFCheckboxExample::mla_list_table_inline_action', 10, 2 ); //
|
81 |
-
add_filter( 'mla_list_table_bulk_action_initial_request', 'MLAACFCheckboxExample::mla_list_table_bulk_action_initial_request', 10, 3 );
|
82 |
-
add_filter( 'mla_list_table_bulk_action', 'MLAACFCheckboxExample::mla_list_table_bulk_action', 10, 3 ); //
|
83 |
-
add_filter( 'mla_list_table_inline_values', 'MLAACFCheckboxExample::mla_list_table_inline_values', 10, 1 ); //
|
84 |
-
|
85 |
-
/*
|
86 |
-
* Defined in /media-library-assistant/includes/class-mla-list-table.php
|
87 |
-
*/
|
88 |
add_filter( 'mla_list_table_get_columns', 'MLAACFCheckboxExample::mla_list_table_get_columns', 10, 1 ); //
|
89 |
add_filter( 'mla_list_table_get_hidden_columns', 'MLAACFCheckboxExample::mla_list_table_get_hidden_columns', 10, 1 ); //
|
90 |
add_filter( 'mla_list_table_get_sortable_columns', 'MLAACFCheckboxExample::mla_list_table_get_sortable_columns', 10, 1 ); //
|
91 |
add_filter( 'mla_list_table_column_default', 'MLAACFCheckboxExample::mla_list_table_column_default', 10, 3 ); //
|
92 |
-
add_filter( 'mla_list_table_build_inline_data', 'MLAACFCheckboxExample::mla_list_table_build_inline_data', 10, 2 );
|
93 |
}
|
94 |
|
95 |
-
/**
|
96 |
-
* Records the list of active search fields
|
97 |
-
*
|
98 |
-
* @since 1.00
|
99 |
-
*
|
100 |
-
* @var array
|
101 |
-
*/
|
102 |
-
private static $search_fields = array();
|
103 |
-
|
104 |
-
/**
|
105 |
-
* Process an MLA_List_Table inline action, i.e., Quick Edit
|
106 |
-
*
|
107 |
-
* This filter gives you an opportunity to pre-process an MLA_List_Table "Quick Edit"
|
108 |
-
* action before the MLA handler.
|
109 |
-
*
|
110 |
-
* @since 1.00
|
111 |
-
*
|
112 |
-
* @param array $item_content NULL, to indicate no handler.
|
113 |
-
* @param integer $post_id the affected attachment.
|
114 |
-
*
|
115 |
-
* @return object updated $item_content. NULL if no handler, otherwise
|
116 |
-
* ( 'message' => error or status message(s), 'body' => '',
|
117 |
-
* 'prevent_default' => true to bypass the MLA handler )
|
118 |
-
*/
|
119 |
-
public static function mla_list_table_inline_action( $item_content, $post_id ) {
|
120 |
-
/*
|
121 |
-
* Convert the comma-delimited string of "checked" checkbox values back to
|
122 |
-
* an ACF-compatible array
|
123 |
-
*/
|
124 |
-
if ( isset( $_REQUEST['custom_updates'] ) && isset( $_REQUEST['custom_updates']['acf_checkbox'] ) ) {
|
125 |
-
if ( ! empty( $_REQUEST['custom_updates']['acf_checkbox'] ) ) {
|
126 |
-
$_REQUEST['custom_updates']['acf_checkbox'] = explode( ',', $_REQUEST['custom_updates']['acf_checkbox'] );
|
127 |
-
}
|
128 |
-
}
|
129 |
-
|
130 |
-
return $item_content;
|
131 |
-
} // mla_list_table_inline_action
|
132 |
-
|
133 |
-
/**
|
134 |
-
* Pre-filter MLA_List_Table bulk action request parameters
|
135 |
-
*
|
136 |
-
* This filter gives you an opportunity to pre-process the request parameters for a bulk action
|
137 |
-
* before the action begins. DO NOT assume parameters come from the $_REQUEST super array!
|
138 |
-
*
|
139 |
-
* @since 1.01
|
140 |
-
*
|
141 |
-
* @param array $request bulk action request parameters, including ['mla_bulk_action_do_cleanup'].
|
142 |
-
* @param string $bulk_action the requested action.
|
143 |
-
* @param array $custom_field_map [ slug => field_name ]
|
144 |
-
*
|
145 |
-
* @return array updated bulk action request parameters
|
146 |
-
*/
|
147 |
-
public static function mla_list_table_bulk_action_initial_request( $request, $bulk_action, $custom_field_map ) {
|
148 |
-
/*
|
149 |
-
* If the field is present, save the field value for our own update process and remove it
|
150 |
-
* from the $request array to prevent MLA's default update processing.
|
151 |
-
*/
|
152 |
-
if ( false !== $slug = array_search( 'acf_checkbox', $custom_field_map ) ) {
|
153 |
-
if ( ! empty( $request[ $slug ] ) ) {
|
154 |
-
self::$acf_checkbox_value = trim( $request[ $slug ] );
|
155 |
-
$request[ $slug ] = '';
|
156 |
-
}
|
157 |
-
}
|
158 |
-
|
159 |
-
return $request;
|
160 |
-
} // mla_list_table_bulk_action_initial_request
|
161 |
-
|
162 |
-
/**
|
163 |
-
* Holds the new ACF checkbox value for the duration of a Bulk Edit action
|
164 |
-
*
|
165 |
-
* @since 1.01
|
166 |
-
*
|
167 |
-
* @var string
|
168 |
-
*/
|
169 |
-
private static $acf_checkbox_value = NULL;
|
170 |
-
|
171 |
-
/**
|
172 |
-
* Process an MLA_List_Table bulk action
|
173 |
-
*
|
174 |
-
* This filter gives you an opportunity to pre-process an MLA_List_Table page-level
|
175 |
-
* or single-item action, standard or custom, before the MLA handler.
|
176 |
-
* The filter is called once for each of the items in $_REQUEST['cb_attachment'].
|
177 |
-
*
|
178 |
-
* @since 1.00
|
179 |
-
*
|
180 |
-
* @param array $item_content NULL, to indicate no handler.
|
181 |
-
* @param string $bulk_action the requested action.
|
182 |
-
* @param integer $post_id the affected attachment.
|
183 |
-
*
|
184 |
-
* @return object updated $item_content. NULL if no handler, otherwise
|
185 |
-
* ( 'message' => error or status message(s), 'body' => '',
|
186 |
-
* 'prevent_default' => true to bypass the MLA handler )
|
187 |
-
*/
|
188 |
-
public static function mla_list_table_bulk_action( $item_content, $bulk_action, $post_id ) {
|
189 |
-
/*
|
190 |
-
* If the field is present, apply our own update process. Note the
|
191 |
-
* special 'empty' value to bulk-delete the custom field entirely.
|
192 |
-
*/
|
193 |
-
if ( ! empty( self::$acf_checkbox_value ) ) {
|
194 |
-
if ( 'empty' == self::$acf_checkbox_value ) {
|
195 |
-
delete_post_meta( $post_id, 'acf_checkbox' );
|
196 |
-
$item_content = array( 'message' => sprintf( __( 'Deleting %1$s', 'media-library-assistant' ) . '<br>', 'acf_checkbox' ) );
|
197 |
-
} else {
|
198 |
-
update_post_meta( $post_id, 'acf_checkbox', explode( ',', self::$acf_checkbox_value ) );
|
199 |
-
$item_content = array( 'message' => sprintf( __( 'Adding %1$s = %2$s', 'media-library-assistant' ) . '<br>', 'acf_checkbox', self::$acf_checkbox_value ) );
|
200 |
-
}
|
201 |
-
}
|
202 |
-
|
203 |
-
return $item_content;
|
204 |
-
} // mla_list_table_bulk_action
|
205 |
-
|
206 |
-
/**
|
207 |
-
* MLA_List_Table inline edit item values
|
208 |
-
*
|
209 |
-
* This filter gives you a chance to modify and extend the substitution values
|
210 |
-
* for the Quick and Bulk Edit forms.
|
211 |
-
*
|
212 |
-
* @since 1.00
|
213 |
-
*
|
214 |
-
* @param array $item_values parameter_name => parameter_value pairs
|
215 |
-
*
|
216 |
-
* @return array updated substitution parameter name => value pairs
|
217 |
-
*/
|
218 |
-
public static function mla_list_table_inline_values( $item_values ) {
|
219 |
-
/*
|
220 |
-
* Replace the ACF Field Name with a more friendly Field Label
|
221 |
-
*/
|
222 |
-
$item_values['custom_fields'] = str_replace( '>acf_checkbox<', '>ACF Checkbox<', $item_values['custom_fields'] );
|
223 |
-
$item_values['bulk_custom_fields'] = str_replace( '>acf_checkbox<', '>ACF Checkbox<', $item_values['bulk_custom_fields'] );
|
224 |
-
|
225 |
-
return $item_values;
|
226 |
-
} // mla_list_table_inline_values
|
227 |
-
|
228 |
/**
|
229 |
* Holds the ISC custom field name to column "slug" mapping values
|
230 |
*
|
@@ -261,7 +95,7 @@ class MLAACFCheckboxExample {
|
|
261 |
$new_columns = array();
|
262 |
|
263 |
foreach ( $columns as $key => $value ) {
|
264 |
-
if ( $key
|
265 |
$new_columns['acf_checkbox'] = 'acf_checkbox';
|
266 |
} else {
|
267 |
$new_columns[ $key ] = $value;
|
@@ -317,9 +151,7 @@ class MLAACFCheckboxExample {
|
|
317 |
* @return array updated array of columns.
|
318 |
*/
|
319 |
public static function mla_list_table_get_sortable_columns( $sortable_columns ) {
|
320 |
-
|
321 |
-
* Replace the slug for the column we've captured, preserving its place in the list
|
322 |
-
*/
|
323 |
if ( isset( self::$field_slugs['acf_checkbox'] ) ) {
|
324 |
$slug = self::$field_slugs['acf_checkbox'];
|
325 |
if ( isset( $sortable_columns[ $slug ] ) ) {
|
@@ -353,70 +185,15 @@ class MLAACFCheckboxExample {
|
|
353 |
* @return string Text or HTML to be placed inside the column
|
354 |
*/
|
355 |
public static function mla_list_table_column_default( $content, $item, $column_name ) {
|
356 |
-
|
357 |
-
|
358 |
-
|
359 |
-
*/
|
360 |
-
if ( 'acf_checkbox' == $column_name ) {
|
361 |
-
$values = isset( $item->mla_item_acf_checkbox ) ? $item->mla_item_acf_checkbox : '';
|
362 |
-
if ( empty( $values ) ) {
|
363 |
-
return '';
|
364 |
-
} elseif ( is_array( $values ) ) {
|
365 |
-
return '[' . implode( '],[', $values ) . ']';
|
366 |
-
} else {
|
367 |
-
return $values;
|
368 |
-
}
|
369 |
}
|
370 |
|
371 |
return $content;
|
372 |
} // mla_list_table_column_default_filter
|
373 |
-
|
374 |
-
/**
|
375 |
-
* Filter the data for inline (Quick and Bulk) editing
|
376 |
-
*
|
377 |
-
* This filter gives you an opportunity to filter the data passed to the
|
378 |
-
* JavaScript functions for Quick and Bulk editing.
|
379 |
-
*
|
380 |
-
* @since 1.00
|
381 |
-
*
|
382 |
-
* @param string $inline_data The HTML markup for inline data.
|
383 |
-
* @param object $item The current Media Library item.
|
384 |
-
*
|
385 |
-
* @return string updated HTML markup for inline data.
|
386 |
-
*/
|
387 |
-
public static function mla_list_table_build_inline_data( $inline_data, $item ) {
|
388 |
-
/*
|
389 |
-
* See if the field is present
|
390 |
-
*/
|
391 |
-
if ( ! isset( self::$field_slugs['acf_checkbox'] ) ) {
|
392 |
-
return $inline_data;
|
393 |
-
}
|
394 |
-
|
395 |
-
/*
|
396 |
-
* Convert the ACF-compatible array to a comma-delimited list of
|
397 |
-
* "checked" checkbox values.
|
398 |
-
*/
|
399 |
-
$match_count = preg_match_all( '/\<div class="' . self::$field_slugs['acf_checkbox'] . '"\>(.*)\<\/div\>/', $inline_data, $matches, PREG_OFFSET_CAPTURE );
|
400 |
-
if ( ( $match_count == false ) || ( $match_count == 0 ) ) {
|
401 |
-
return $inline_data;
|
402 |
-
}
|
403 |
-
|
404 |
-
if ( isset( $item->mla_item_acf_checkbox ) ) {
|
405 |
-
$value = $item->mla_item_acf_checkbox;
|
406 |
-
if ( is_array( $value ) ) {
|
407 |
-
$head = substr( $inline_data, 0, $matches[1][0][1] );
|
408 |
-
$value = esc_html( implode( ',', $value ) );
|
409 |
-
$tail = substr( $inline_data, ( $matches[1][0][1] + strlen( $matches[1][0][0] ) ) );
|
410 |
-
$inline_data = $head . $value . $tail;
|
411 |
-
}
|
412 |
-
}
|
413 |
-
|
414 |
-
return $inline_data;
|
415 |
-
} // mla_list_table_build_inline_data_filter
|
416 |
} // Class MLAACFCheckboxExample
|
417 |
|
418 |
-
|
419 |
-
* Install the filters at an early opportunity
|
420 |
-
*/
|
421 |
add_action('init', 'MLAACFCheckboxExample::initialize');
|
422 |
?>
|
1 |
<?php
|
2 |
/**
|
3 |
+
* THIS PLUGIN IS OBSOLETE! PLEASE USE "MLA Advanced Custom Fields Example" INSTEAD.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
4 |
*
|
5 |
* @package MLA ACF Checkbox Example
|
6 |
+
* @version 1.03
|
7 |
*/
|
8 |
|
9 |
/*
|
10 |
Plugin Name: MLA ACF Checkbox Example
|
11 |
Plugin URI: http://davidlingren.com/
|
12 |
+
Description: THIS PLUGIN IS OBSOLETE! PLEASE USE "MLA Advanced Custom Fields Example" INSTEAD.
|
13 |
Author: David Lingren
|
14 |
+
Version: 1.03
|
15 |
Author URI: http://davidlingren.com/
|
16 |
|
17 |
+
Copyright 2021 David Lingren
|
18 |
|
19 |
This program is free software; you can redistribute it and/or modify
|
20 |
it under the terms of the GNU General Public License as published by
|
48 |
* @return void
|
49 |
*/
|
50 |
public static function initialize() {
|
51 |
+
// The filters are only useful for the admin section; exit in the front-end posts/pages
|
|
|
|
|
52 |
if ( ! is_admin() )
|
53 |
return;
|
54 |
|
55 |
+
// Defined in /media-library-assistant/includes/class-mla-list-table.php
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
56 |
add_filter( 'mla_list_table_get_columns', 'MLAACFCheckboxExample::mla_list_table_get_columns', 10, 1 ); //
|
57 |
add_filter( 'mla_list_table_get_hidden_columns', 'MLAACFCheckboxExample::mla_list_table_get_hidden_columns', 10, 1 ); //
|
58 |
add_filter( 'mla_list_table_get_sortable_columns', 'MLAACFCheckboxExample::mla_list_table_get_sortable_columns', 10, 1 ); //
|
59 |
add_filter( 'mla_list_table_column_default', 'MLAACFCheckboxExample::mla_list_table_column_default', 10, 3 ); //
|
|
|
60 |
}
|
61 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
62 |
/**
|
63 |
* Holds the ISC custom field name to column "slug" mapping values
|
64 |
*
|
95 |
$new_columns = array();
|
96 |
|
97 |
foreach ( $columns as $key => $value ) {
|
98 |
+
if ( $key === $slug ) {
|
99 |
$new_columns['acf_checkbox'] = 'acf_checkbox';
|
100 |
} else {
|
101 |
$new_columns[ $key ] = $value;
|
151 |
* @return array updated array of columns.
|
152 |
*/
|
153 |
public static function mla_list_table_get_sortable_columns( $sortable_columns ) {
|
154 |
+
// Replace the slug for the column we've captured, preserving its place in the list
|
|
|
|
|
155 |
if ( isset( self::$field_slugs['acf_checkbox'] ) ) {
|
156 |
$slug = self::$field_slugs['acf_checkbox'];
|
157 |
if ( isset( $sortable_columns[ $slug ] ) ) {
|
185 |
* @return string Text or HTML to be placed inside the column
|
186 |
*/
|
187 |
public static function mla_list_table_column_default( $content, $item, $column_name ) {
|
188 |
+
// Display the notice.
|
189 |
+
if ( 'acf_checkbox' === $column_name ) {
|
190 |
+
return 'THIS PLUGIN IS OBSOLETE! PLEASE USE "MLA Advanced Custom Fields Example" INSTEAD.';
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
191 |
}
|
192 |
|
193 |
return $content;
|
194 |
} // mla_list_table_column_default_filter
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
195 |
} // Class MLAACFCheckboxExample
|
196 |
|
197 |
+
// Install the filters at an early opportunity
|
|
|
|
|
198 |
add_action('init', 'MLAACFCheckboxExample::initialize');
|
199 |
?>
|
examples/plugins/mla-advanced-custom-fields-example.php
DELETED
@@ -1,815 +0,0 @@
|
|
1 |
-
<?php
|
2 |
-
/**
|
3 |
-
* Provides an example of hooking the filters provided by the MLA_List_Table class
|
4 |
-
*
|
5 |
-
* In this example:
|
6 |
-
*
|
7 |
-
* 1. an Advanced Custom Fields "checkbox" custom field is added to the
|
8 |
-
* Media/Assistant submenu table, Quick Edit and Bulk Edit areas.
|
9 |
-
*
|
10 |
-
* 2. an Advanced Custom Fields "repeater" custom field is analyzed to display
|
11 |
-
* "where used" information in the Media/Assistant submenu table.
|
12 |
-
*
|
13 |
-
* 3. Advanced Custom Fields "image" custom field(s) are analyzed to display
|
14 |
-
* "where used" information in the Media/Assistant submenu table.
|
15 |
-
*
|
16 |
-
* 4. Advanced Custom Fields "image" custom field(s) are made available as custom data substitution
|
17 |
-
* parameters, using the prefix "acf:", e.g., "acf:search_bar_image". Three format/option values
|
18 |
-
* can be added: 1) "acf:search_bar_image(count)" returns the number of item references,
|
19 |
-
* 2) "acf:search_bar_image(present)" returns 1 if there are references present, and 3) a numeric
|
20 |
-
* value, e.g., "acf:search_bar_image(3)" returns the count only if it is equal to or greater than
|
21 |
-
* the number of references.
|
22 |
-
*
|
23 |
-
* You can turn each of the three field types on or off by setting the corresponding "_ENABLE" constant
|
24 |
-
* to true or false. You can change the field names and labels by editing the corresponding constants.
|
25 |
-
*
|
26 |
-
* Created for support topic "Advanced Custom Fields repeater"
|
27 |
-
* opened on 3/1/2015 by "ncj"
|
28 |
-
* https://wordpress.org/support/topic/advanced-custom-fields-repeater/
|
29 |
-
*
|
30 |
-
* Enhanced for support topic "finding “where used” in custom field"
|
31 |
-
* opened on 4/19/2020 by "maven1129"
|
32 |
-
* https://wordpress.org/support/topic/finding-where-used-in-custom-field/
|
33 |
-
*
|
34 |
-
* @package MLA Advanced Custom Fields Example
|
35 |
-
* @version 1.05
|
36 |
-
*/
|
37 |
-
|
38 |
-
/*
|
39 |
-
Plugin Name: MLA Advanced Custom Fields Example
|
40 |
-
Plugin URI: http://davidlingren.com/
|
41 |
-
Description: Supports an ACF checkbox, "where-used" in an ACF repeater and one or more ACF "image" variables.
|
42 |
-
Author: David Lingren
|
43 |
-
Version: 1.05
|
44 |
-
Author URI: http://davidlingren.com/
|
45 |
-
|
46 |
-
Copyright 2014 - 2020 David Lingren
|
47 |
-
|
48 |
-
This program is free software; you can redistribute it and/or modify
|
49 |
-
it under the terms of the GNU General Public License as published by
|
50 |
-
the Free Software Foundation; either version 2 of the License, or
|
51 |
-
(at your option) any later version.
|
52 |
-
|
53 |
-
This program is distributed in the hope that it will be useful,
|
54 |
-
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
55 |
-
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
56 |
-
GNU General Public License for more details.
|
57 |
-
|
58 |
-
You can get a copy of the GNU General Public License by writing to the
|
59 |
-
Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110, USA
|
60 |
-
*/
|
61 |
-
|
62 |
-
/**
|
63 |
-
* Class MLA Advanced Custom Fields Example hooks some of the filters provided by the MLA_List_Table and MLAData classes
|
64 |
-
*
|
65 |
-
* Call it anything you want, but give it an unlikely and hopefully unique name. Hiding everything
|
66 |
-
* else inside a class means this is the only name you have to worry about.
|
67 |
-
*
|
68 |
-
* @package MLA Advanced Custom Fields Example
|
69 |
-
* @since 1.00
|
70 |
-
*/
|
71 |
-
class MLAACFExample {
|
72 |
-
/**
|
73 |
-
* True to enable the checkbox field, false to disable
|
74 |
-
*
|
75 |
-
* @since 1.04
|
76 |
-
*
|
77 |
-
* @var string
|
78 |
-
*/
|
79 |
-
const ACF_CHECKBOX_ENABLED = true;
|
80 |
-
|
81 |
-
/**
|
82 |
-
* Field name of the checkbox field
|
83 |
-
*
|
84 |
-
* @since 1.02
|
85 |
-
*
|
86 |
-
* @var string
|
87 |
-
*/
|
88 |
-
const ACF_CHECKBOX_FIELD = 'acf_checkbox';
|
89 |
-
|
90 |
-
/**
|
91 |
-
* Field Label of the checkbox field
|
92 |
-
*
|
93 |
-
* @since 1.02
|
94 |
-
*
|
95 |
-
* @var string
|
96 |
-
*/
|
97 |
-
const ACF_CHECKBOX_TITLE = 'ACF Checkbox';
|
98 |
-
|
99 |
-
/**
|
100 |
-
* True to enable the repeater field, false to disable
|
101 |
-
*
|
102 |
-
* @since 1.04
|
103 |
-
*
|
104 |
-
* @var string
|
105 |
-
*/
|
106 |
-
const ACF_REPEATER_ENABLED = true;
|
107 |
-
|
108 |
-
/**
|
109 |
-
* Field name of the "parent" repeater field
|
110 |
-
*
|
111 |
-
* @since 1.02
|
112 |
-
*
|
113 |
-
* @var string
|
114 |
-
*/
|
115 |
-
const ACF_REPEATER_FIELD = 'photos_alt';
|
116 |
-
|
117 |
-
/**
|
118 |
-
* Field Label of the "parent" repeater field
|
119 |
-
*
|
120 |
-
* @since 1.02
|
121 |
-
*
|
122 |
-
* @var string
|
123 |
-
*/
|
124 |
-
const ACF_REPEATER_TITLE = 'Photos Alt';
|
125 |
-
|
126 |
-
/**
|
127 |
-
* Field name of the "child" image sub field
|
128 |
-
*
|
129 |
-
* @since 1.02
|
130 |
-
*
|
131 |
-
* @var string
|
132 |
-
*/
|
133 |
-
const ACF_SUB_FIELD = 'photo';
|
134 |
-
|
135 |
-
/**
|
136 |
-
* True to enable the image field(s), false to disable
|
137 |
-
*
|
138 |
-
* @since 1.04
|
139 |
-
*
|
140 |
-
* @var string
|
141 |
-
*/
|
142 |
-
const ACF_IMAGE_ENABLED = true;
|
143 |
-
|
144 |
-
/**
|
145 |
-
* Field name(s) of the image field(s)
|
146 |
-
*
|
147 |
-
* @since 1.04
|
148 |
-
*
|
149 |
-
* @var string
|
150 |
-
*/
|
151 |
-
const ACF_IMAGE_FIELDS = 'search_bar_image,rates_search_bar_image';
|
152 |
-
|
153 |
-
/**
|
154 |
-
* Field Label(s) of the image field(s)
|
155 |
-
*
|
156 |
-
* @since 1.04
|
157 |
-
*
|
158 |
-
* @var string
|
159 |
-
*/
|
160 |
-
const ACF_IMAGE_TITLES = 'Header Image,Header Image Alt';
|
161 |
-
|
162 |
-
/**
|
163 |
-
* Initialization function, similar to __construct()
|
164 |
-
*
|
165 |
-
* @since 1.00
|
166 |
-
*
|
167 |
-
* @return void
|
168 |
-
*/
|
169 |
-
public static function initialize() {
|
170 |
-
// The filters are only useful for the admin section; exit in the front-end posts/pages
|
171 |
-
if ( ! is_admin() )
|
172 |
-
return;
|
173 |
-
|
174 |
-
// Defined in /media-library-assistant/includes/class-mla-main.php
|
175 |
-
if ( self::ACF_CHECKBOX_ENABLED ) {
|
176 |
-
add_filter( 'mla_list_table_inline_action', 'MLAACFExample::mla_list_table_inline_action', 10, 2 );
|
177 |
-
add_filter( 'mla_list_table_bulk_action_initial_request', 'MLAACFExample::mla_list_table_bulk_action_initial_request', 10, 3 );
|
178 |
-
add_filter( 'mla_list_table_bulk_action', 'MLAACFExample::mla_list_table_bulk_action', 10, 3 );
|
179 |
-
add_filter( 'mla_list_table_inline_values', 'MLAACFExample::mla_list_table_inline_values', 10, 1 );
|
180 |
-
}
|
181 |
-
|
182 |
-
// Defined in /media-library-assistant/includes/class-mla-list-table.php
|
183 |
-
add_filter( 'mla_list_table_get_columns', 'MLAACFExample::mla_list_table_get_columns', 10, 1 );
|
184 |
-
add_filter( 'mla_list_table_column_default', 'MLAACFExample::mla_list_table_column_default', 10, 3 );
|
185 |
-
|
186 |
-
if ( self::ACF_CHECKBOX_ENABLED ) {
|
187 |
-
add_filter( 'mla_list_table_get_hidden_columns', 'MLAACFExample::mla_list_table_get_hidden_columns', 10, 1 );
|
188 |
-
add_filter( 'mla_list_table_get_sortable_columns', 'MLAACFExample::mla_list_table_get_sortable_columns', 10, 1 );
|
189 |
-
add_filter( 'mla_list_table_build_inline_data', 'MLAACFExample::mla_list_table_build_inline_data', 10, 2 );
|
190 |
-
}
|
191 |
-
|
192 |
-
// Defined in /media-library-assistant/includes/class-mla-data.php
|
193 |
-
if ( self::ACF_IMAGE_ENABLED ) {
|
194 |
-
add_filter( 'mla_expand_custom_prefix', 'MLAACFExample::mla_expand_custom_prefix', 10, 8 );
|
195 |
-
}
|
196 |
-
}
|
197 |
-
|
198 |
-
/**
|
199 |
-
* MLA Expand Custom Prefix Filter
|
200 |
-
*
|
201 |
-
* Gives you an opportunity to generate your custom data value when a parameter's prefix value is not recognized.
|
202 |
-
*
|
203 |
-
* @since 1.00
|
204 |
-
*
|
205 |
-
* @param string NULL, indicating that by default, no custom value is available
|
206 |
-
* @param string the data-source name
|
207 |
-
* @param array data-source components; prefix (empty), value, option, format and args (if present)
|
208 |
-
* @param array values from the query, if any, e.g. shortcode parameters
|
209 |
-
* @param array item-level markup template values, if any
|
210 |
-
* @param integer attachment ID for attachment-specific values
|
211 |
-
* @param boolean for option 'multi', retain existing values
|
212 |
-
* @param string default option value
|
213 |
-
*/
|
214 |
-
public static function mla_expand_custom_prefix( $custom_value, $key, $value, $query, $markup_values, $post_id, $keep_existing, $default_option ) {
|
215 |
-
if ( 'acf' !== strtolower( $value['prefix'] ) ) {
|
216 |
-
return $custom_value;
|
217 |
-
}
|
218 |
-
|
219 |
-
//error_log( __LINE__ . " MLAACFExample::mla_expand_custom_prefix( {$key}, {$post_id}, {$keep_existing}, {$default_option} ) value = " . var_export( $value, true ), 0 );
|
220 |
-
//error_log( __LINE__ . " MLAACFExample::mla_expand_custom_prefix( {$key}, {$post_id} ) query = " . var_export( $query, true ), 0 );
|
221 |
-
//error_log( __LINE__ . " MLAACFExample::mla_expand_custom_prefix( {$key}, {$post_id} ) markup_values = " . var_export( $markup_values, true ), 0 );
|
222 |
-
|
223 |
-
// Look for field/value qualifier
|
224 |
-
$match_count = preg_match( '/^(.+)\((.+)\)/', $value['value'], $matches );
|
225 |
-
if ( $match_count ) {
|
226 |
-
$field = $matches[1];
|
227 |
-
$qualifier = $matches[2];
|
228 |
-
} else {
|
229 |
-
$field = $value['value'];
|
230 |
-
$qualifier = '';
|
231 |
-
}
|
232 |
-
//error_log( __LINE__ . " MLAACFExample::mla_expand_custom_prefix( {$key}, {$post_id} ) field = {$field}, qualifier = {$qualifier}", 0 );
|
233 |
-
|
234 |
-
// Set debug mode
|
235 |
-
$debug_active = isset( $query['mla_debug'] ) && ( 'false' !== trim( strtolower( $query['mla_debug'] ) ) );
|
236 |
-
if ( $debug_active ) {
|
237 |
-
$old_mode = MLACore::mla_debug_mode( 'log' );
|
238 |
-
MLACore::mla_debug_add( __LINE__ . " MLAACFExample::mla_expand_custom_prefix( {$key}, {$post_id}, {$keep_existing}, {$default_option} ) \$_REQUEST = " . var_export( $_REQUEST, true ) );
|
239 |
-
MLACore::mla_debug_add( __LINE__ . " MLAACFExample::mla_expand_custom_prefix( {$field}, {$qualifier} ) \$value = " . var_export( $value, true ) );
|
240 |
-
MLACore::mla_debug_add( __LINE__ . " MLAACFExample::mla_expand_custom_prefix() \$query = " . var_export( $query, true ) );
|
241 |
-
MLACore::mla_debug_add( __LINE__ . " MLAACFExample::mla_expand_custom_prefix() \$markup_values = " . var_export( $markup_values, true ) );
|
242 |
-
}
|
243 |
-
|
244 |
-
$posts = self::_find_field_references( $field, $post_id );
|
245 |
-
//error_log( __LINE__ . " MLAACFExample::mla_expand_custom_prefix( {$key}, {$post_id} ) posts = " . var_export( $posts, true ), 0 );
|
246 |
-
if ( !empty( $posts ) ) {
|
247 |
-
switch ( $qualifier ) {
|
248 |
-
case 'count':
|
249 |
-
$custom_value = count( $posts );
|
250 |
-
break;
|
251 |
-
case 'present':
|
252 |
-
$custom_value = ( count( $posts ) ) ? 1 : 0;
|
253 |
-
break;
|
254 |
-
default:
|
255 |
-
$low_bound = absint( $qualifier );
|
256 |
-
if ( $low_bound ) {
|
257 |
-
$custom_value = count( $posts );
|
258 |
-
if ( $low_bound > $custom_value ) {
|
259 |
-
$custom_value = NULL;
|
260 |
-
}
|
261 |
-
|
262 |
-
break;
|
263 |
-
}
|
264 |
-
|
265 |
-
$custom_value = '';
|
266 |
-
$item = get_post( $post_id );
|
267 |
-
|
268 |
-
foreach ( $posts as $post_id => $post ) {
|
269 |
-
$reference = self::$field_parents[ $post ];
|
270 |
-
$status = self::_format_post_status( $reference->post_status );
|
271 |
-
|
272 |
-
if ( $post_id == $item->post_parent ) {
|
273 |
-
$parent = ', ' . __( 'PARENT', 'media-library-assistant' );
|
274 |
-
} else {
|
275 |
-
$parent = '';
|
276 |
-
}
|
277 |
-
|
278 |
-
$custom_value .= sprintf( '%1$s (%2$s %3$s%4$s%5$s), ',
|
279 |
-
/*%1$s*/ esc_attr( $reference->post_title ),
|
280 |
-
/*%2$s*/ esc_attr( $reference->post_type ),
|
281 |
-
/*%3$s*/ $post_id,
|
282 |
-
/*%4$s*/ $status,
|
283 |
-
/*%5$s*/ $parent );
|
284 |
-
} // foreach $reference
|
285 |
-
}
|
286 |
-
}
|
287 |
-
|
288 |
-
//error_log( __LINE__ . " MLAACFExample::mla_expand_custom_prefix( {$key}, {$post_id} ) custom_value = " . var_export( $custom_value, true ), 0 );
|
289 |
-
return $custom_value;
|
290 |
-
} // mla_expand_custom_prefix
|
291 |
-
|
292 |
-
/**
|
293 |
-
* Process an MLA_List_Table inline action, i.e., Quick Edit
|
294 |
-
*
|
295 |
-
* This filter gives you an opportunity to pre-process an MLA_List_Table "Quick Edit"
|
296 |
-
* action before the MLA handler.
|
297 |
-
*
|
298 |
-
* @since 1.00
|
299 |
-
*
|
300 |
-
* @param array $item_content NULL, to indicate no handler.
|
301 |
-
* @param integer $post_id the affected attachment.
|
302 |
-
*
|
303 |
-
* @return object updated $item_content. NULL if no handler, otherwise
|
304 |
-
* ( 'message' => error or status message(s), 'body' => '',
|
305 |
-
* 'prevent_default' => true to bypass the MLA handler )
|
306 |
-
*/
|
307 |
-
public static function mla_list_table_inline_action( $item_content, $post_id ) {
|
308 |
-
// Convert the comma-delimited string of "checked" checkbox values back to an ACF-compatible array
|
309 |
-
if ( isset( $_REQUEST['custom_updates'] ) && isset( $_REQUEST['custom_updates'][ self::ACF_CHECKBOX_FIELD ] ) ) {
|
310 |
-
if ( ! empty( $_REQUEST['custom_updates'][ self::ACF_CHECKBOX_FIELD ] ) ) {
|
311 |
-
$_REQUEST['custom_updates'][ self::ACF_CHECKBOX_FIELD ] = explode( ',', $_REQUEST['custom_updates'][ self::ACF_CHECKBOX_FIELD ] );
|
312 |
-
}
|
313 |
-
}
|
314 |
-
|
315 |
-
return $item_content;
|
316 |
-
} // mla_list_table_inline_action
|
317 |
-
|
318 |
-
/**
|
319 |
-
* Pre-filter MLA_List_Table bulk action request parameters
|
320 |
-
*
|
321 |
-
* This filter gives you an opportunity to pre-process the request parameters for a bulk action
|
322 |
-
* before the action begins. DO NOT assume parameters come from the $_REQUEST super array!
|
323 |
-
*
|
324 |
-
* @since 1.01
|
325 |
-
*
|
326 |
-
* @param array $request bulk action request parameters, including ['mla_bulk_action_do_cleanup'].
|
327 |
-
* @param string $bulk_action the requested action.
|
328 |
-
* @param array $custom_field_map [ slug => field_name ]
|
329 |
-
*
|
330 |
-
* @return array updated bulk action request parameters
|
331 |
-
*/
|
332 |
-
public static function mla_list_table_bulk_action_initial_request( $request, $bulk_action, $custom_field_map ) {
|
333 |
-
/*
|
334 |
-
* If the field is present, save the field value for our own update process and remove it
|
335 |
-
* from the $request array to prevent MLA's default update processing.
|
336 |
-
*/
|
337 |
-
if ( false !== $slug = array_search( self::ACF_CHECKBOX_FIELD, $custom_field_map ) ) {
|
338 |
-
if ( ! empty( $request[ $slug ] ) ) {
|
339 |
-
self::$acf_checkbox_value = trim( $request[ $slug ] );
|
340 |
-
$request[ $slug ] = '';
|
341 |
-
}
|
342 |
-
}
|
343 |
-
|
344 |
-
return $request;
|
345 |
-
} // mla_list_table_bulk_action_initial_request
|
346 |
-
|
347 |
-
/**
|
348 |
-
* Holds the new ACF checkbox value for the duration of a Bulk Edit action
|
349 |
-
*
|
350 |
-
* @since 1.01
|
351 |
-
*
|
352 |
-
* @var string
|
353 |
-
*/
|
354 |
-
private static $acf_checkbox_value = NULL;
|
355 |
-
|
356 |
-
/**
|
357 |
-
* Process an MLA_List_Table bulk action
|
358 |
-
*
|
359 |
-
* This filter gives you an opportunity to pre-process an MLA_List_Table page-level
|
360 |
-
* or single-item action, standard or custom, before the MLA handler.
|
361 |
-
* The filter is called once for each of the items in $_REQUEST['cb_attachment'].
|
362 |
-
*
|
363 |
-
* @since 1.00
|
364 |
-
*
|
365 |
-
* @param array $item_content NULL, to indicate no handler.
|
366 |
-
* @param string $bulk_action the requested action.
|
367 |
-
* @param integer $post_id the affected attachment.
|
368 |
-
*
|
369 |
-
* @return object updated $item_content. NULL if no handler, otherwise
|
370 |
-
* ( 'message' => error or status message(s), 'body' => '',
|
371 |
-
* 'prevent_default' => true to bypass the MLA handler )
|
372 |
-
*/
|
373 |
-
public static function mla_list_table_bulk_action( $item_content, $bulk_action, $post_id ) {
|
374 |
-
/*
|
375 |
-
* If the field is present, apply our own update process. Note the
|
376 |
-
* special 'empty' value to bulk-delete the custom field entirely.
|
377 |
-
*/
|
378 |
-
if ( ! empty( self::$acf_checkbox_value ) ) {
|
379 |
-
if ( 'empty' == self::$acf_checkbox_value ) {
|
380 |
-
delete_post_meta( $post_id, self::ACF_CHECKBOX_FIELD );
|
381 |
-
$item_content = array( 'message' => sprintf( __( 'Deleting %1$s', 'media-library-assistant' ) . '<br>', self::ACF_CHECKBOX_FIELD ) );
|
382 |
-
} else {
|
383 |
-
update_post_meta( $post_id, self::ACF_CHECKBOX_FIELD, explode( ',', self::$acf_checkbox_value ) );
|
384 |
-
$item_content = array( 'message' => sprintf( __( 'Adding %1$s = %2$s', 'media-library-assistant' ) . '<br>', self::ACF_CHECKBOX_FIELD, self::$acf_checkbox_value ) );
|
385 |
-
}
|
386 |
-
}
|
387 |
-
|
388 |
-
return $item_content;
|
389 |
-
} // mla_list_table_bulk_action
|
390 |
-
|
391 |
-
/**
|
392 |
-
* MLA_List_Table inline edit item values
|
393 |
-
*
|
394 |
-
* This filter gives you a chance to modify and extend the substitution values
|
395 |
-
* for the Quick and Bulk Edit forms.
|
396 |
-
*
|
397 |
-
* @since 1.00
|
398 |
-
*
|
399 |
-
* @param array $item_values parameter_name => parameter_value pairs
|
400 |
-
*
|
401 |
-
* @return array updated substitution parameter name => value pairs
|
402 |
-
*/
|
403 |
-
public static function mla_list_table_inline_values( $item_values ) {
|
404 |
-
// Replace the ACF Field Name with a more friendly Field Label
|
405 |
-
$item_values['custom_fields'] = str_replace( '>acf_checkbox<', '>' . self::ACF_CHECKBOX_TITLE . '<', $item_values['custom_fields'] );
|
406 |
-
$item_values['bulk_custom_fields'] = str_replace( '>acf_checkbox<', '>' . self::ACF_CHECKBOX_TITLE . '<', $item_values['bulk_custom_fields'] );
|
407 |
-
|
408 |
-
return $item_values;
|
409 |
-
} // mla_list_table_inline_values
|
410 |
-
|
411 |
-
/**
|
412 |
-
* Holds the ISC custom field name to column "slug" mapping values
|
413 |
-
*
|
414 |
-
* @since 1.01
|
415 |
-
*
|
416 |
-
* @var array
|
417 |
-
*/
|
418 |
-
private static $field_slugs = array();
|
419 |
-
|
420 |
-
/**
|
421 |
-
* Filter the MLA_List_Table columns
|
422 |
-
*
|
423 |
-
* This MLA-specific filter gives you an opportunity to filter the list table columns.
|
424 |
-
*
|
425 |
-
* @since 1.00
|
426 |
-
*
|
427 |
-
* @param array $columns An array of columns.
|
428 |
-
* format: column_slug => Column Label
|
429 |
-
*
|
430 |
-
* @return array updated array of columns.
|
431 |
-
*/
|
432 |
-
public static function mla_list_table_get_columns( $columns ) {
|
433 |
-
if ( self::ACF_CHECKBOX_ENABLED ) {
|
434 |
-
/*
|
435 |
-
* The Quick and Bulk Edit forms substitute arbitrary "slugs" for the
|
436 |
-
* custom field names. Remember them for table column and bulk update processing.
|
437 |
-
*/
|
438 |
-
if ( false !== $slug = array_search( self::ACF_CHECKBOX_FIELD, $columns ) ) {
|
439 |
-
self::$field_slugs[ self::ACF_CHECKBOX_FIELD ] = $slug;
|
440 |
-
|
441 |
-
/*
|
442 |
-
* Change the column slug so we can provide our own friendly content.
|
443 |
-
* Replace the entry for the column we're capturing, preserving its place in the list
|
444 |
-
*/
|
445 |
-
$new_columns = array();
|
446 |
-
|
447 |
-
foreach ( $columns as $key => $value ) {
|
448 |
-
if ( $key == $slug ) {
|
449 |
-
$new_columns[ self::ACF_CHECKBOX_FIELD ] = self::ACF_CHECKBOX_TITLE;
|
450 |
-
} else {
|
451 |
-
$new_columns[ $key ] = $value;
|
452 |
-
}
|
453 |
-
} // foreach column
|
454 |
-
|
455 |
-
$columns = $new_columns;
|
456 |
-
}
|
457 |
-
}
|
458 |
-
|
459 |
-
// Add a column of our own for the repeater "where-used" information
|
460 |
-
if ( self::ACF_REPEATER_ENABLED ) {
|
461 |
-
$columns[ 'acf_' . self::ACF_REPEATER_FIELD ] = self::ACF_REPEATER_TITLE;
|
462 |
-
}
|
463 |
-
|
464 |
-
// Add columns of our own for the image "where-used" information
|
465 |
-
if ( self::ACF_IMAGE_ENABLED ) {
|
466 |
-
$image_fields = explode( ',', self::ACF_IMAGE_FIELDS );
|
467 |
-
$image_titles = explode( ',', self::ACF_IMAGE_TITLES );
|
468 |
-
|
469 |
-
if ( count( $image_fields ) === count( $image_titles ) ) {
|
470 |
-
foreach( $image_fields as $index => $field_name ) {
|
471 |
-
self::$field_slugs[ 'acf_' . $field_name ] = $field_name;
|
472 |
-
$columns[ 'acf_' . $field_name ] = $image_titles[ $index ];
|
473 |
-
}
|
474 |
-
}
|
475 |
-
}
|
476 |
-
|
477 |
-
return $columns;
|
478 |
-
} // mla_list_table_get_columns
|
479 |
-
|
480 |
-
/**
|
481 |
-
* Filter the MLA_List_Table hidden columns
|
482 |
-
*
|
483 |
-
* This MLA-specific filter gives you an opportunity to filter the hidden list table columns.
|
484 |
-
*
|
485 |
-
* @since 1.00
|
486 |
-
*
|
487 |
-
* @param array $hidden_columns An array of columns.
|
488 |
-
* format: index => column_slug
|
489 |
-
*
|
490 |
-
* @return array updated array of columns.
|
491 |
-
*/
|
492 |
-
public static function mla_list_table_get_hidden_columns( $hidden_columns ) {
|
493 |
-
// Replace the MLA custom field slug with our own slug value
|
494 |
-
if ( isset( self::$field_slugs[ self::ACF_CHECKBOX_FIELD ] ) ) {
|
495 |
-
$index = array_search( self::$field_slugs[ self::ACF_CHECKBOX_FIELD ], $hidden_columns );
|
496 |
-
if ( false !== $index ) {
|
497 |
-
$hidden_columns[ $index ] = self::ACF_CHECKBOX_FIELD;
|
498 |
-
}
|
499 |
-
}
|
500 |
-
|
501 |
-
return $hidden_columns;
|
502 |
-
} // mla_list_table_get_hidden_columns
|
503 |
-
|
504 |
-
/**
|
505 |
-
* Filter the MLA_List_Table sortable columns
|
506 |
-
*
|
507 |
-
* This MLA-specific filter gives you an opportunity to filter the sortable list table
|
508 |
-
* columns; a good alternative to the 'manage_media_page_mla_menu_sortable_columns' filter.
|
509 |
-
*
|
510 |
-
* @since 1.00
|
511 |
-
*
|
512 |
-
* @param array $sortable_columns An array of columns.
|
513 |
-
* Format: 'column_slug' => 'orderby'
|
514 |
-
* or 'column_slug' => array( 'orderby', true )
|
515 |
-
*
|
516 |
-
* The second format will make the initial sorting order be descending.
|
517 |
-
*
|
518 |
-
* @return array updated array of columns.
|
519 |
-
*/
|
520 |
-
public static function mla_list_table_get_sortable_columns( $sortable_columns ) {
|
521 |
-
// Replace the slug for the column we've captured, preserving its place in the list
|
522 |
-
if ( isset( self::$field_slugs[ self::ACF_CHECKBOX_FIELD ] ) ) {
|
523 |
-
$slug = self::$field_slugs[ self::ACF_CHECKBOX_FIELD ];
|
524 |
-
if ( isset( $sortable_columns[ $slug ] ) ) {
|
525 |
-
$new_columns = array();
|
526 |
-
|
527 |
-
foreach ( $sortable_columns as $key => $value ) {
|
528 |
-
if ( $key == $slug ) {
|
529 |
-
$new_columns[ self::ACF_CHECKBOX_FIELD ] = $value;
|
530 |
-
} else {
|
531 |
-
$new_columns[ $key ] = $value;
|
532 |
-
}
|
533 |
-
} // foreach column
|
534 |
-
|
535 |
-
$sortable_columns = $new_columns;
|
536 |
-
} // slug found
|
537 |
-
} // slug exists
|
538 |
-
|
539 |
-
return $sortable_columns;
|
540 |
-
} // mla_list_table_get_sortable_columns
|
541 |
-
|
542 |
-
/**
|
543 |
-
* Translate post_status 'future', 'pending', 'draft' and 'trash' to label
|
544 |
-
*
|
545 |
-
* @since 1.02
|
546 |
-
*
|
547 |
-
* @param string post_status
|
548 |
-
*
|
549 |
-
* @return string Status label or empty string
|
550 |
-
*/
|
551 |
-
protected static function _format_post_status( $post_status ) {
|
552 |
-
$flag = ',<br>';
|
553 |
-
switch ( $post_status ) {
|
554 |
-
case 'draft' :
|
555 |
-
$flag .= __('Draft');
|
556 |
-
break;
|
557 |
-
case 'future' :
|
558 |
-
$flag .= __('Scheduled');
|
559 |
-
break;
|
560 |
-
case 'pending' :
|
561 |
-
$flag .= _x('Pending', 'post state');
|
562 |
-
break;
|
563 |
-
case 'trash' :
|
564 |
-
$flag .= __('Trash');
|
565 |
-
break;
|
566 |
-
default:
|
567 |
-
$flag = '';
|
568 |
-
}
|
569 |
-
|
570 |
-
return $flag;
|
571 |
-
}
|
572 |
-
|
573 |
-
/**
|
574 |
-
* Supply a column value if no column-specific function has been defined
|
575 |
-
*
|
576 |
-
* Called when the MLA_List_Table can't find a value for a given column.
|
577 |
-
*
|
578 |
-
* @since 1.00
|
579 |
-
*
|
580 |
-
* @param string NULL, indicating no default content
|
581 |
-
* @param array A singular item (one full row's worth of data)
|
582 |
-
* @param array The name/slug of the column to be processed
|
583 |
-
* @return string Text or HTML to be placed inside the column
|
584 |
-
*/
|
585 |
-
public static function mla_list_table_column_default( $content, $item, $column_name ) {
|
586 |
-
// Convert the ACF-compatible array to a comma-delimited list of "checked" checkbox values.
|
587 |
-
if ( self::ACF_CHECKBOX_FIELD == $column_name ) {
|
588 |
-
$values = isset( $item->mla_item_acf_checkbox ) ? $item->mla_item_acf_checkbox : '';
|
589 |
-
if ( empty( $values ) ) {
|
590 |
-
return '';
|
591 |
-
} elseif ( is_array( $values ) ) {
|
592 |
-
return '[' . implode( '],[', $values ) . ']';
|
593 |
-
}
|
594 |
-
|
595 |
-
return $values;
|
596 |
-
}
|
597 |
-
|
598 |
-
// Retrieve and format the repeater field "where-used" information
|
599 |
-
if ( ( 'acf_' . self::ACF_REPEATER_FIELD ) == $column_name ) {
|
600 |
-
global $wpdb;
|
601 |
-
|
602 |
-
$where_clause = self::ACF_REPEATER_FIELD . '_%_' . self::ACF_SUB_FIELD;
|
603 |
-
$references = $wpdb->get_results(
|
604 |
-
"
|
605 |
-
SELECT *
|
606 |
-
FROM {$wpdb->postmeta}
|
607 |
-
WHERE meta_key LIKE '{$where_clause}' AND meta_value = {$item->ID}
|
608 |
-
"
|
609 |
-
);
|
610 |
-
|
611 |
-
$content = '';
|
612 |
-
if ( ! empty( $references ) ) {
|
613 |
-
$parents = array();
|
614 |
-
foreach ( $references as $reference ) {
|
615 |
-
// key on post_id to remove duplicates
|
616 |
-
$parents[ $reference->post_id ] = $reference->post_id;
|
617 |
-
}
|
618 |
-
|
619 |
-
$parents = implode( ',', $parents );
|
620 |
-
$references = $wpdb->get_results(
|
621 |
-
"
|
622 |
-
SELECT ID, post_type, post_status, post_title
|
623 |
-
FROM {$wpdb->posts}
|
624 |
-
WHERE ( post_type <> 'revision' ) AND ( ID IN ({$parents}) )
|
625 |
-
"
|
626 |
-
);
|
627 |
-
|
628 |
-
foreach ( $references as $reference ) {
|
629 |
-
$status = self::_format_post_status( $reference->post_status );
|
630 |
-
|
631 |
-
if ( $reference->ID == $item->post_parent ) {
|
632 |
-
$parent = ',<br>' . __( 'PARENT', 'media-library-assistant' );
|
633 |
-
} else {
|
634 |
-
$parent = '';
|
635 |
-
}
|
636 |
-
|
637 |
-
$content .= sprintf( '<a href="%1$s" title="' . __( 'Edit', 'media-library-assistant' ) . ' “%2$s”">%2$s</a> (%3$s %4$s%5$s%6$s), ',
|
638 |
-
/*%1$s*/ esc_url( add_query_arg( array('post' => $reference->ID, 'action' => 'edit'), 'post.php' ) ),
|
639 |
-
/*%2$s*/ esc_attr( $reference->post_title ),
|
640 |
-
/*%3$s*/ esc_attr( $reference->post_type ),
|
641 |
-
/*%4$s*/ $reference->ID,
|
642 |
-
/*%5$s*/ $status,
|
643 |
-
/*%6$s*/ $parent ) . "<br>\r\n";
|
644 |
-
} // foreach $reference
|
645 |
-
} // found $references
|
646 |
-
|
647 |
-
return $content;
|
648 |
-
} // found repeater column
|
649 |
-
|
650 |
-
|
651 |
-
// Retrieve and format the image field(s) "where-used" information
|
652 |
-
if ( array_key_exists( $column_name, self::$field_slugs ) ) {
|
653 |
-
$content = '';
|
654 |
-
|
655 |
-
$posts = self::_find_field_references( self::$field_slugs[ $column_name ], $item->ID );
|
656 |
-
foreach ( $posts as $post_id => $post ) {
|
657 |
-
$reference = self::$field_parents[ $post ];
|
658 |
-
$status = self::_format_post_status( $reference->post_status );
|
659 |
-
|
660 |
-
if ( $post_id == $item->post_parent ) {
|
661 |
-
$parent = ',<br>' . __( 'PARENT', 'media-library-assistant' );
|
662 |
-
} else {
|
663 |
-
$parent = '';
|
664 |
-
}
|
665 |
-
|
666 |
-
$content .= sprintf( '<a href="%1$s" title="' . __( 'Edit', 'media-library-assistant' ) . ' “%2$s”">%2$s</a> (%3$s %4$s%5$s%6$s), ',
|
667 |
-
/*%1$s*/ esc_url( add_query_arg( array('post' => $post_id, 'action' => 'edit'), 'post.php' ) ),
|
668 |
-
/*%2$s*/ esc_attr( $reference->post_title ),
|
669 |
-
/*%3$s*/ esc_attr( $reference->post_type ),
|
670 |
-
/*%4$s*/ $post_id,
|
671 |
-
/*%5$s*/ $status,
|
672 |
-
/*%6$s*/ $parent ) . "<br>\r\n";
|
673 |
-
} // foreach $reference
|
674 |
-
|
675 |
-
return $content;
|
676 |
-
} // found image column
|
677 |
-
|
678 |
-
return $content;
|
679 |
-
} // mla_list_table_column_default
|
680 |
-
|
681 |
-
/**
|
682 |
-
* Filter the data for inline (Quick and Bulk) editing
|
683 |
-
*
|
684 |
-
* This filter gives you an opportunity to filter the data passed to the
|
685 |
-
* JavaScript functions for Quick and Bulk editing.
|
686 |
-
*
|
687 |
-
* @since 1.00
|
688 |
-
*
|
689 |
-
* @param string $inline_data The HTML markup for inline data.
|
690 |
-
* @param object $item The current Media Library item.
|
691 |
-
*
|
692 |
-
* @return string updated HTML markup for inline data.
|
693 |
-
*/
|
694 |
-
public static function mla_list_table_build_inline_data( $inline_data, $item ) {
|
695 |
-
// See if the field is present
|
696 |
-
if ( ! isset( self::$field_slugs[ self::ACF_CHECKBOX_FIELD ] ) ) {
|
697 |
-
return $inline_data;
|
698 |
-
}
|
699 |
-
|
700 |
-
// Convert the ACF-compatible array to a comma-delimited list of "checked" checkbox values.
|
701 |
-
$match_count = preg_match_all( '/\<div class="' . self::$field_slugs[ self::ACF_CHECKBOX_FIELD ] . '"\>(.*)\<\/div\>/', $inline_data, $matches, PREG_OFFSET_CAPTURE );
|
702 |
-
if ( ( $match_count == false ) || ( $match_count == 0 ) ) {
|
703 |
-
return $inline_data;
|
704 |
-
}
|
705 |
-
|
706 |
-
if ( isset( $item->mla_item_acf_checkbox ) ) {
|
707 |
-
$value = $item->mla_item_acf_checkbox;
|
708 |
-
if ( is_array( $value ) ) {
|
709 |
-
$head = substr( $inline_data, 0, $matches[1][0][1] );
|
710 |
-
$value = esc_html( implode( ',', $value ) );
|
711 |
-
$tail = substr( $inline_data, ( $matches[1][0][1] + strlen( $matches[1][0][0] ) ) );
|
712 |
-
$inline_data = $head . $value . $tail;
|
713 |
-
}
|
714 |
-
}
|
715 |
-
|
716 |
-
return $inline_data;
|
717 |
-
} // mla_list_table_build_inline_data
|
718 |
-
|
719 |
-
/**
|
720 |
-
* Cached values for the ACF Image fields
|
721 |
-
*
|
722 |
-
* @since 1.05
|
723 |
-
*
|
724 |
-
* @var array( field_slug => array( item_ID => array( reference_ID => reference_ID ) ) )
|
725 |
-
*/
|
726 |
-
private static $field_instances = array();
|
727 |
-
|
728 |
-
/**
|
729 |
-
* Cached "parent post" values for the ACF Image fields
|
730 |
-
*
|
731 |
-
* @since 1.05
|
732 |
-
*
|
733 |
-
* @var array( post_ID => array( post_type, post_status, post_title ) )
|
734 |
-
*/
|
735 |
-
private static $field_parents = array();
|
736 |
-
|
737 |
-
/**
|
738 |
-
* Filter the data for inline (Quick and Bulk) editing
|
739 |
-
*
|
740 |
-
* This filter gives you an opportunity to filter the data passed to the
|
741 |
-
* JavaScript functions for Quick and Bulk editing.
|
742 |
-
*
|
743 |
-
* @since 1.00
|
744 |
-
*
|
745 |
-
* @param string $field_slug ACF Image variable slug.
|
746 |
-
* @param integer $item_ID Media Library item ID.
|
747 |
-
*
|
748 |
-
* @return array post_id values referencing the item.
|
749 |
-
*/
|
750 |
-
private static function _find_field_references( $field_slug, $item_ID ) {
|
751 |
-
global $wpdb;
|
752 |
-
|
753 |
-
if ( !isset( self::$field_instances[ $field_slug ] ) ) {
|
754 |
-
$references = $wpdb->get_results(
|
755 |
-
"
|
756 |
-
SELECT post_id, meta_value
|
757 |
-
FROM {$wpdb->postmeta}
|
758 |
-
WHERE meta_key LIKE '{$field_slug}'
|
759 |
-
"
|
760 |
-
);
|
761 |
-
|
762 |
-
$post_ids = array();
|
763 |
-
foreach ( $references as $reference ) {
|
764 |
-
$post_id = (int) $reference->post_id;
|
765 |
-
$meta_value = (int) $reference->meta_value;
|
766 |
-
self::$field_instances[ $field_slug ][ $meta_value ][ $post_id ] = $post_id;
|
767 |
-
$post_ids[ $post_id ] = $post_id;
|
768 |
-
}
|
769 |
-
|
770 |
-
// Find the post information, excluding revisions
|
771 |
-
$parents = implode( ',', $post_ids );
|
772 |
-
$references = $wpdb->get_results(
|
773 |
-
"
|
774 |
-
SELECT ID, post_type, post_status, post_title
|
775 |
-
FROM {$wpdb->posts}
|
776 |
-
WHERE ( post_type <> 'revision' ) AND ( ID IN ({$parents}) )
|
777 |
-
"
|
778 |
-
);
|
779 |
-
|
780 |
-
foreach ( $references as $reference ) {
|
781 |
-
$post_id = (int) $reference->ID;
|
782 |
-
unset( $reference->ID );
|
783 |
-
self::$field_parents[ $post_id ] = $reference;
|
784 |
-
}
|
785 |
-
//error_log( __LINE__ . " MLAACFExample::_find_field_references( {$field_slug} ) field_parents = " . var_export( self::$field_parents, true ), 0 );
|
786 |
-
|
787 |
-
// Remove the revisions from the field references
|
788 |
-
foreach ( self::$field_instances[ $field_slug ] as $meta_value => $post_ids ) {
|
789 |
-
$references = array();
|
790 |
-
foreach ( $post_ids as $post_id ) {
|
791 |
-
if ( array_key_exists( $post_id, self::$field_parents ) ) {
|
792 |
-
$references[ $post_id ] = $post_id;
|
793 |
-
}
|
794 |
-
}
|
795 |
-
|
796 |
-
if ( count( $references ) ) {
|
797 |
-
self::$field_instances[ $field_slug ][ $meta_value ] = $references;
|
798 |
-
} else {
|
799 |
-
unset( self::$field_instances[ $field_slug ][ $meta_value ] );
|
800 |
-
}
|
801 |
-
}
|
802 |
-
//error_log( __LINE__ . " MLAACFExample::_find_field_references( {$field_slug} ) field_instances = " . var_export( self::$field_instances, true ), 0 );
|
803 |
-
} // !isset( self::$field_instances[ $field_slug ] )
|
804 |
-
|
805 |
-
if ( isset( self::$field_instances[ $field_slug ][ $item_ID ] ) ) {
|
806 |
-
return self::$field_instances[ $field_slug ][ $item_ID ];
|
807 |
-
}
|
808 |
-
|
809 |
-
return array();
|
810 |
-
} // _find_field_references
|
811 |
-
} // Class MLAACFExample
|
812 |
-
|
813 |
-
// Install the filters at an early opportunity
|
814 |
-
add_action('init', 'MLAACFExample::initialize');
|
815 |
-
?>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
examples/plugins/mla-advanced-custom-fields-example/admin-settings-page.tpl
ADDED
@@ -0,0 +1,469 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<!-- template="page" -->
|
2 |
+
<a name="backtotop"></a>
|
3 |
+
|
4 |
+
<div class="wrap">
|
5 |
+
<h1 class="wp-heading-inline">[+plugin_title+] [+version+] Settings</h1>
|
6 |
+
[+messages+]
|
7 |
+
[+tablist+]
|
8 |
+
[+tab_content+]
|
9 |
+
</div><!-- wrap -->
|
10 |
+
|
11 |
+
<!-- template="tablist" -->
|
12 |
+
<h2 class="nav-tab-wrapper">
|
13 |
+
[+tablist+]
|
14 |
+
</h2>
|
15 |
+
<!-- template="tablist-item" -->
|
16 |
+
<a data-tab-id="[+data-tab-id+]" class="nav-tab [+nav-tab-active+]" href="?page=[+settings-page+]&mla_tab=[+data-tab-id+]">[+title+]</a>
|
17 |
+
|
18 |
+
<!-- template="messages" -->
|
19 |
+
<div class="[+mla_messages_class+]">
|
20 |
+
<p>
|
21 |
+
[+messages+]
|
22 |
+
</p>
|
23 |
+
</div>
|
24 |
+
|
25 |
+
<!-- template="page-level-options" -->
|
26 |
+
<tr valign="top">
|
27 |
+
<td class="textright">
|
28 |
+
<input name="[+slug_prefix+]_options[acf_checkbox_enabled]" id="[+slug_prefix+]_options_acf_checkbox_enabled" type="checkbox" [+acf_checkbox_enabled_checked+] value="1" />
|
29 |
+
</td>
|
30 |
+
<td>
|
31 |
+
<strong>Enable Checkbox Field</strong>
|
32 |
+
<div class="mla-settings-help"> Check this option to activate support for one ACF Checkbox field.</div>
|
33 |
+
</td>
|
34 |
+
</tr>
|
35 |
+
<tr valign="top">
|
36 |
+
<td class="textright">
|
37 |
+
<strong>Checkbox Field</strong>
|
38 |
+
</td>
|
39 |
+
<td>
|
40 |
+
<input name="[+slug_prefix+]_options[acf_checkbox_fields]" id="[+slug_prefix+]_options_acf_checkbox_fields" type="text" size="30" maxlength="30" value="[+acf_checkbox_fields+]" />
|
41 |
+
<div class="mla-settings-help"> Enter one (and only one) checkbox field name (not label).</div>
|
42 |
+
</td>
|
43 |
+
</tr>
|
44 |
+
<tr valign="top">
|
45 |
+
<td class="textright">
|
46 |
+
<strong>Checkbox Titles</strong>
|
47 |
+
</td>
|
48 |
+
<td>
|
49 |
+
<input name="[+slug_prefix+]_options[acf_checkbox_titles]" id="[+slug_prefix+]_options_acf_checkbox_titles" type="text" size="30" maxlength="30" value="[+acf_checkbox_titles+]" />
|
50 |
+
<div class="mla-settings-help"> Enter one (and only one) checkbox field title.</div>
|
51 |
+
</td>
|
52 |
+
</tr>
|
53 |
+
|
54 |
+
<tr valign="top">
|
55 |
+
<td class="textright">
|
56 |
+
<input name="[+slug_prefix+]_options[acf_select_enabled]" id="[+slug_prefix+]_options_acf_select_enabled" type="checkbox" [+acf_select_enabled_checked+] value="1" />
|
57 |
+
</td>
|
58 |
+
<td>
|
59 |
+
<strong>Enable Select Fields</strong>
|
60 |
+
<div class="mla-settings-help"> Check this option to activate support for one or more ACF Select fields.</div>
|
61 |
+
</td>
|
62 |
+
</tr>
|
63 |
+
<tr valign="top">
|
64 |
+
<td class="textright">
|
65 |
+
<strong>Select Fields</strong>
|
66 |
+
</td>
|
67 |
+
<td>
|
68 |
+
<input name="[+slug_prefix+]_options[acf_select_fields]" id="[+slug_prefix+]_options_acf_select_fields" type="text" size="80" maxlength="80" value="[+acf_select_fields+]" />
|
69 |
+
<div class="mla-settings-help"> Enter one or more select field names (not labels) separated by commas.</div>
|
70 |
+
</td>
|
71 |
+
</tr>
|
72 |
+
<tr valign="top">
|
73 |
+
<td class="textright">
|
74 |
+
<strong>Select Titles</strong>
|
75 |
+
</td>
|
76 |
+
<td>
|
77 |
+
<input name="[+slug_prefix+]_options[acf_select_titles]" id="[+slug_prefix+]_options_acf_select_titles" type="text" size="80" maxlength="80" value="[+acf_select_titles+]" />
|
78 |
+
<div class="mla-settings-help"> Enter one or more optional select field titles separated by commas. An empty value will be replaced by the corresponding ACF Label.</div>
|
79 |
+
</td>
|
80 |
+
</tr>
|
81 |
+
|
82 |
+
<tr valign="top">
|
83 |
+
<td class="textright">
|
84 |
+
<input name="[+slug_prefix+]_options[acf_repeater_enabled]" id="[+slug_prefix+]_options_acf_repeater_enabled" type="checkbox" [+acf_repeater_enabled_checked+] value="1" />
|
85 |
+
</td>
|
86 |
+
<td>
|
87 |
+
<strong>Enable Repeater Field</strong>
|
88 |
+
<div class="mla-settings-help"> Check this option to activate support for "where used" analysis of one ACF Repeater field.</div>
|
89 |
+
</td>
|
90 |
+
</tr>
|
91 |
+
<tr valign="top">
|
92 |
+
<td class="textright">
|
93 |
+
<strong>Repeater Field</strong>
|
94 |
+
</td>
|
95 |
+
<td>
|
96 |
+
<input name="[+slug_prefix+]_options[acf_repeater_fields]" id="[+slug_prefix+]_options_acf_repeater_fields" type="text" size="30" maxlength="30" value="[+acf_repeater_fields+]" />
|
97 |
+
<div class="mla-settings-help"> Enter one (and only one) repeater field name (not label).</div>
|
98 |
+
</td>
|
99 |
+
</tr>
|
100 |
+
<tr valign="top">
|
101 |
+
<td class="textright">
|
102 |
+
<strong>Repeater Subfield</strong>
|
103 |
+
</td>
|
104 |
+
<td>
|
105 |
+
<input name="[+slug_prefix+]_options[acf_repeater_subfields]" id="[+slug_prefix+]_options_acf_repeater_subfields" type="text" size="30" maxlength="30" value="[+acf_repeater_subfields+]" />
|
106 |
+
<div class="mla-settings-help"> Enter one (and only one) repeater field subfield name (not label).</div>
|
107 |
+
</td>
|
108 |
+
</tr>
|
109 |
+
<tr valign="top">
|
110 |
+
<td class="textright">
|
111 |
+
<strong>Repeater Title</strong>
|
112 |
+
</td>
|
113 |
+
<td>
|
114 |
+
<input name="[+slug_prefix+]_options[acf_repeater_titles]" id="[+slug_prefix+]_options_acf_repeater_titles" type="text" size="30" maxlength="30" value="[+acf_repeater_titles+]" />
|
115 |
+
<div class="mla-settings-help"> Enter one (and only one) repeater field title.</div>
|
116 |
+
</td>
|
117 |
+
</tr>
|
118 |
+
|
119 |
+
<tr valign="top">
|
120 |
+
<td class="textright">
|
121 |
+
<input name="[+slug_prefix+]_options[acf_image_enabled]" id="[+slug_prefix+]_options_acf_image_enabled" type="checkbox" [+acf_image_enabled_checked+] value="1" />
|
122 |
+
</td>
|
123 |
+
<td>
|
124 |
+
<strong>Enable Image Fields</strong>
|
125 |
+
<div class="mla-settings-help"> Check this option to activate support for "where used" analysis of one or more ACF Image fields.</div>
|
126 |
+
</td>
|
127 |
+
</tr>
|
128 |
+
<tr valign="top">
|
129 |
+
<td class="textright">
|
130 |
+
<strong>Image Fields</strong>
|
131 |
+
</td>
|
132 |
+
<td>
|
133 |
+
<input name="[+slug_prefix+]_options[acf_image_fields]" id="[+slug_prefix+]_options_acf_image_fields" type="text" size="80" maxlength="80" value="[+acf_image_fields+]" />
|
134 |
+
<div class="mla-settings-help"> Enter one or more image field names (not labels) separated by commas.</div>
|
135 |
+
</td>
|
136 |
+
</tr>
|
137 |
+
<tr valign="top">
|
138 |
+
<td class="textright">
|
139 |
+
<strong>Image Titles</strong>
|
140 |
+
</td>
|
141 |
+
<td>
|
142 |
+
<input name="[+slug_prefix+]_options[acf_image_titles]" id="[+slug_prefix+]_options_acf_image_titles" type="text" size="80" maxlength="80" value="[+acf_image_titles+]" />
|
143 |
+
<div class="mla-settings-help"> Enter one or more optional image field titles separated by commas. An empty value will be replaced by the corresponding ACF Label.</div>
|
144 |
+
</td>
|
145 |
+
</tr>
|
146 |
+
|
147 |
+
|
148 |
+
<!-- template="general-tab" -->
|
149 |
+
<style type='text/css'>
|
150 |
+
.mla-settings-help {
|
151 |
+
font-size: 8pt;
|
152 |
+
padding-bottom: 5px
|
153 |
+
}
|
154 |
+
|
155 |
+
.mla-page-level-options-form {
|
156 |
+
margin-left: 0px;
|
157 |
+
margin-top: 10px;
|
158 |
+
padding-bottom: 10px;
|
159 |
+
border-bottom:thin solid #888888;
|
160 |
+
}
|
161 |
+
|
162 |
+
span.submit.mla-settings-submit,
|
163 |
+
p.submit.mla-settings-submit {
|
164 |
+
padding-bottom: 0px
|
165 |
+
}
|
166 |
+
</style>
|
167 |
+
<h2>Plugin Options</h2>
|
168 |
+
<div style="max-width:700px">
|
169 |
+
<p>In this tab you can enable any of four types of enhanced support for the popular Advanced Custom Fields (ACF) plugin.</p>
|
170 |
+
<ol>
|
171 |
+
<li>An ACF "checkbox" custom field is added to the Media/Assistant submenu table, Quick Edit and Bulk Edit areas.</li>
|
172 |
+
<li>ACF "select" custom fields are made available in the Media/Assistant submenu table as columns that display the ACF label (Vs the value) ssigned to each choice. You can edit the fields by changing the label; the plugin will convert this to the corresponding value and update the field appropriately.</li>
|
173 |
+
<li>An ACF "repeater" custom field is analyzed to display "where used" information in the Media/Assistant submenu table.</li>
|
174 |
+
<li>ACF "image" custom fields are analyzed to display "where used" information in the Media/Assistant submenu table. Some "image" custom field(s) values are made available as custom data substitution parameters, using the prefix "acf:"</li>
|
175 |
+
</ol>
|
176 |
+
<p>You can find more information about using all of the features of this plugin in the Documentation tab on this page.</p>
|
177 |
+
</div>
|
178 |
+
<div class="mla-page-level-options-form">
|
179 |
+
<form action="[+form_url+]" method="post" class="mla-display-settings-page" id="[+slug_prefix+]_options_general_tab">
|
180 |
+
<table class="optiontable">
|
181 |
+
<tbody>
|
182 |
+
[+options_list+]
|
183 |
+
</tbody>
|
184 |
+
</table>
|
185 |
+
<span class="submit mla-settings-submit">
|
186 |
+
<input name="[+slug_prefix+]_options_save" class="button-primary" id="[+slug_prefix+]_options_save" type="submit" value="Save Changes" />
|
187 |
+
<input name="[+slug_prefix+]_options_reset" class="button-primary alignright" id="[+slug_prefix+]_options_reset" type="submit" value="Delete Settings, Restore Defaults" />
|
188 |
+
</span>
|
189 |
+
[+_wpnonce+]
|
190 |
+
</form>
|
191 |
+
</div>
|
192 |
+
|
193 |
+
<!-- template="documentation-tab" -->
|
194 |
+
<style type='text/css'>
|
195 |
+
.mla-doc-toc-list {
|
196 |
+
list-style-position:inside;
|
197 |
+
list-style:disc;
|
198 |
+
line-height: 15px;
|
199 |
+
padding-left: 20px
|
200 |
+
}
|
201 |
+
|
202 |
+
.mla-doc-hook-label {
|
203 |
+
text-align: right;
|
204 |
+
padding: 0 1em 2em 0;
|
205 |
+
vertical-align: top;
|
206 |
+
font-weight:bold
|
207 |
+
}
|
208 |
+
|
209 |
+
.mla-doc-hook-definition {
|
210 |
+
vertical-align: top;
|
211 |
+
}
|
212 |
+
|
213 |
+
.mla-doc-table-label {
|
214 |
+
text-align: right;
|
215 |
+
padding-right: 10px;
|
216 |
+
vertical-align: top;
|
217 |
+
font-weight:bold
|
218 |
+
}
|
219 |
+
|
220 |
+
.mla-doc-table-sublabel {
|
221 |
+
padding-right: 10px;
|
222 |
+
vertical-align: top
|
223 |
+
}
|
224 |
+
|
225 |
+
.mla-doc-table-reverse {
|
226 |
+
text-align: right;
|
227 |
+
padding-right: 10px;
|
228 |
+
vertical-align:top
|
229 |
+
}
|
230 |
+
|
231 |
+
.mla-doc-table-definition {
|
232 |
+
vertical-align: top;
|
233 |
+
}
|
234 |
+
|
235 |
+
.mla-doc-bold-link {
|
236 |
+
font-size:14px;
|
237 |
+
font-weight:bold
|
238 |
+
}
|
239 |
+
</style>
|
240 |
+
<h2>Plugin Documentation</h2>
|
241 |
+
<p>In this tab, jump to:</p>
|
242 |
+
<div class="mla-display-settings-page" id="[+slug_prefix+]_options_documentation_tab" style="width:700px">
|
243 |
+
<ul class="mla-doc-toc-list">
|
244 |
+
<li><a href="#introduction"><strong>Introduction</strong></a></li>
|
245 |
+
<li><a href="#processing"><strong>How the Plugin Works</strong></a></li>
|
246 |
+
<li><a href="#checkbox"><strong>Checkbox Field</strong></a></li>
|
247 |
+
<li><a href="#select"><strong>Select Fields</strong></a></li>
|
248 |
+
<li><a href="#repeater"><strong>Repeater Field "Where Used" Analysis</strong></a></li>
|
249 |
+
<li><a href="#image"><strong>Image Fields "Where Used" Analysis</strong></a></li>
|
250 |
+
<li><a href="#debugging"><strong>Debugging and Troubleshooting</strong></a></li>
|
251 |
+
</ul>
|
252 |
+
<p>
|
253 |
+
|
254 |
+
<a name="introduction"></a>
|
255 |
+
</p>
|
256 |
+
<p>
|
257 |
+
<a href="#backtotop">Go to Top</a>
|
258 |
+
</p>
|
259 |
+
<h3>Introduction</h3>
|
260 |
+
<p>
|
261 |
+
The <a href="https://wordpress.org/plugins/advanced-custom-fields/" title="ACF, by Delicious Brains" target="_blank">Advanced Custom Fields</a> plugin allows you to quickly and easily add fields of many types to WP edit screens. The MLA Advanced Custom Fields Example plugin makes some types of ACF fields available in the Media/Assistant submenu table and the quick and bulk edit areas. It allows you to do "where-used" anaysis to see where Media Library items are used in ACF Image and Repeater fields. The example plugin was originally developed (as the "MLA ACF Checkbox Example" plugin) in response to this MLA support topic:
|
262 |
+
</p>
|
263 |
+
<ul class="mla-doc-toc-list">
|
264 |
+
<li><a href="https://wordpress.org/support/topic/bulk-edit-a-custom-field-value/#post-4428935" title="View the topic" target="_blank">Bulk edit a custom field value</a></li>
|
265 |
+
</ul>
|
266 |
+
<p>
|
267 |
+
The Select Field support was added in response to this MLA support topic:
|
268 |
+
</p>
|
269 |
+
<ul class="mla-doc-toc-list">
|
270 |
+
<li><a href="https://wordpress.org/support/topic/bulk-edit-acf-custom-field/" title="View the topic" target="_blank">Bulk edit ACF custom field</a></li>
|
271 |
+
</ul>
|
272 |
+
<p>
|
273 |
+
The Repeater Field support was added in response to this MLA support topic:
|
274 |
+
</p>
|
275 |
+
<ul class="mla-doc-toc-list">
|
276 |
+
<li><a href="https://wordpress.org/support/topic/advanced-custom-fields-repeater/" title="View the topic" target="_blank">Advanced Custom Fields repeater</a></li>
|
277 |
+
</ul>
|
278 |
+
<p>
|
279 |
+
The Image Field support was added in response to this MLA support topic:
|
280 |
+
</p>
|
281 |
+
<ul class="mla-doc-toc-list">
|
282 |
+
<li><a href="https://wordpress.org/support/topic/finding-where-used-in-custom-field/" title="View the topic" target="_blank">finding "where used" in custom field</a></li>
|
283 |
+
</ul>
|
284 |
+
<p>
|
285 |
+
To use the plugin you must configure the options on the General tab for the field type(s) you want to add to MLA. Each type has an "Enable" checkbox so you can turn it on or off easily, without deleting any of the other values you enter. For each of the types you must enter the Field Name(s) of the ACF fields you want to use. These names are all lowercase and may have underscores. You can also enter "Titles" to identify the fields in the MLA User Interface.
|
286 |
+
</p>
|
287 |
+
<p>
|
288 |
+
More details on the features available for each field type are in the sections of this Documentation page.
|
289 |
+
</p>
|
290 |
+
<p>
|
291 |
+
You might also be interested in the "MLA Parent Custom Field Mapping" example plugin, which allows IPTC/EXIF and Custom Field mapping rules to update custom fields in the item’s parent post/page rather than the items’s own fields. Support for Advanced Custom Fields and WP/LR Sync is included. That plugin was developed in response to this MLA support topic:
|
292 |
+
</p>
|
293 |
+
<ul class="mla-doc-toc-list">
|
294 |
+
<li><a href="https://wordpress.org/support/topic/iptc-exif-mapping-on-picture-upload-to-parent-posts-custom-fields/" title="View the topic" target="_blank">IPTC/EXIF Mapping on picture upload to parent post’s custom fields</a></li>
|
295 |
+
</ul>
|
296 |
+
<p>
|
297 |
+
|
298 |
+
<a name="processing"></a>
|
299 |
+
</p>
|
300 |
+
<p>
|
301 |
+
<a href="#backtotop">Go to Top</a>
|
302 |
+
</p>
|
303 |
+
<h3>How the Plugin Works</h3>
|
304 |
+
<p>
|
305 |
+
The example plugin makes no changes or additions to the MLA core code; it uses (or "hooks" - verb) some of the many actions and filters MLA provides. When the post/page is loaded this plugin is initialized, setting thirteen MLA "hooks" (noun) that may be called to perform the plugin’s processing. There are three groups of action/filter functions that implement the features of this example plugin. Within each group the "Enable" option settings are examined to see if the corresponding ACF field type is to be processed. The outline that follows is somewhat technical, but should give you an idea of the sequence of events and actions that allow the plugin to do its work.
|
306 |
+
</p>
|
307 |
+
<p>
|
308 |
+
To support adding columns to the Media/Assistant admin submenu table five hooks are set:
|
309 |
+
</p>
|
310 |
+
<ul class="mla-doc-toc-list">
|
311 |
+
<li><strong>mla_list_table_get_columns</strong> - called at the start of composing the Media/Assistant submenu page. Column definitions for the fields defined on the General tab are added to the list.</li>
|
312 |
+
<li><strong>mla_list_table_get_hidden_columns</strong> - called when the submenu table navigation elements are composed. Definitions for this plugin’s columns are added..</li>
|
313 |
+
<li><strong>mla_list_table_get_sortable_columns</strong> - called when the submenu table navigation elements are composed. Definitions for this plugin’s columns are added.</li>
|
314 |
+
<li><strong>mla_list_table_column_default</strong> - Called when the MLA_List_Table can't find a value for a given column. This example plugin will look for a match with the fields defined on the General tab and supply the field’s value if matched.</li>
|
315 |
+
<li><strong>mla_list_table_query_final_terms</strong> - called just before the database is queried to find items for the submenu table display. If a sort specification for a select column is present it is added to the query arguments.</li>
|
316 |
+
</ul>
|
317 |
+
<p>
|
318 |
+
All five of the above hooks are defined and called ("applied") in <code>/media-library-assistant/includes/class-mla-list-table.php</code>.
|
319 |
+
</p>
|
320 |
+
<p>
|
321 |
+
To support editing the ACF field values in the Media/Assistant Bulk and Quick Edit areas six hooks are set:
|
322 |
+
</p>
|
323 |
+
<ul class="mla-doc-toc-list">
|
324 |
+
<li><strong>mla_list_table_build_inline_data</strong> - called for each item as it is added to the table display. Current values for this plugin’s fields are added.</li>
|
325 |
+
<li><strong>mla_list_table_inline_fields</strong> - called as the Quick and Bulk Edit areas are set up. This plugin’s fields are added to the list of fields eligible for Quick and Bulk editing.</li>
|
326 |
+
<li><strong>mla_list_table_inline_action</strong> - called just before the Quick Edit updates are processed. This plugin’s checkbox and select field values are converted from the values used in the User Interface to the values stored in the database.</li>
|
327 |
+
<li><strong>mla_list_table_bulk_action_initial_request</strong> - called at the start of the AJAX request that will apply Bulk Edit updates. This plugin’s checkbox and select field values are saved for later processing and removed from the request to prevent MLA's default processing.</li>
|
328 |
+
<li><strong>mla_list_table_bulk_action</strong> - called just before the Bulk Edit updates are processed. This plugin’s checkbox and select field values are converted from the values used in the User Interface to the values stored in the database.</li>
|
329 |
+
<li><strong>mla_list_table_inline_values</strong> - called as the Quick and Bulk Edit areas are set up. This plugin’s fields are added to the HTML markup for the areas.</li>
|
330 |
+
</ul>
|
331 |
+
<p>
|
332 |
+
The build inline data hook is defined and called ("applied") in <code>/media-library-assistant/includes/class-mla-list-table.php</code>. The other five hooks are defined and called ("applied") in <code>/media-library-assistant/includes/class-mla-main.php</code>.
|
333 |
+
</p>
|
334 |
+
<p>
|
335 |
+
To support adding columns to the Media/Assistant admin submenu table one hook is set:
|
336 |
+
</p>
|
337 |
+
<ul class="mla-doc-toc-list">
|
338 |
+
<li><strong>mla_expand_custom_prefix</strong> - called when a substitution parameter's prefix value is not recognized by MLA. In this plugin the <code>acf:</code> custom prefix lowers the risk that the plugin’s data-source name(s) will conflict with other plugins or future MLA versions.</li>
|
339 |
+
</ul>
|
340 |
+
<p>
|
341 |
+
The above hook is defined and called ("applied") in <code>/media-library-assistant/includes/class-mla-data.php</code>. It is the only plugin feature that must be available in the "front end" of the site, where it can be used with the MLA shortcodes to display galleries.
|
342 |
+
<a name="checkbox"></a>
|
343 |
+
</p>
|
344 |
+
<p>
|
345 |
+
<a href="#backtotop">Go to Top</a>
|
346 |
+
</p>
|
347 |
+
<h3>Checkbox Field</h3>
|
348 |
+
<p>
|
349 |
+
An ACF "Checkbox" field has one or more HTML checkbox elements, each with a value and a label. The value is stored in the database and the label is shown to the user. Each element can have just a label, in which case the label and value are identical, or a separate value and label. Each element is shown to the user as an HTML checkbox, and the value is stored in the database only if the box is checked.
|
350 |
+
</p>
|
351 |
+
<p>
|
352 |
+
This example plugin supports one ACF Checkbox field. The title displayed in the Media/Assistant admin submenu is set in the General tab. The "MLA value" for the field shows only the elements whose box is checked; the value is shown as a simple string if just one box is checked or as a comma-separated list if more than one box is checked. This plugin manages the values associated with the field, but you must also create an MLA Custom Field mapping rule to add the field to the UI. To create the ruls:
|
353 |
+
</p>
|
354 |
+
<ol>
|
355 |
+
<li>Navigate to the Settings/Media Library Assistant "Custom Fields" tab.</li></li>
|
356 |
+
<li>Scroll down to the "Add New Custom Field Rule" section on the left-hand side of the page.</li>
|
357 |
+
<li>Select the ACF field name in the "Name" dropdown. If you don't see it in the list, click "Enter new field" and enter the name of the field.</li>
|
358 |
+
<li>Leave the default Data Source dropdown, "– None (select a value) –". You don't want this rule to overwrite the ACF values.</li>
|
359 |
+
<li>Leave the Meta/Template text box empty.</li>
|
360 |
+
<li>Check the "MLA Column" box if you want to display the field as a column in the Media/Assistant submenu table.</li>
|
361 |
+
<li>Check the "Quick Edit" box to enable changing the field value(s) in the Media/Assistant Quick Edit area.</li>
|
362 |
+
<li>Check the "Bulk Edit" box to enable changing the field value(s) in the Media/Assistant Bulk Edit area.</li>
|
363 |
+
<li>Select "Keep" for "Existing Text".</li>
|
364 |
+
<li>Select "Native" for "Format".</li>
|
365 |
+
<li>Select "Text" for "Option".</li>
|
366 |
+
<li>Check the "Delete NULL Values" box to avoid storing empty values.</li>
|
367 |
+
<li>Leave the default "Status", "Active".</li>
|
368 |
+
<li>Click "Add Rule" to create the new rule.</li>
|
369 |
+
</ol>
|
370 |
+
<p>
|
371 |
+
Once the rule is in place this plugin will "capture" the custom field and apply its logic:
|
372 |
+
</p>
|
373 |
+
<ul class="mla-doc-toc-list">
|
374 |
+
<li>If the "MLA Column" box is checked the corresponding Media/Assistant table column will have the Title entered in the General tab and will display field values as a comma-separated list.</li>
|
375 |
+
<li>If the "Quick Edit" box is checked the field will appear in the Quick Edit Area. You can enter one or more comma-separated field values in the text box and they will be converted to an array for storage in the database.</li>
|
376 |
+
<li>If the "Bulk Edit" box is checked the field will appear in the Bulk Edit Area. You can enter one or more comma-separated field values in the text box and they will be converted to an array for storage in the database. You can also enter the special value "empty" to delete/uncheck all of the boxes in the field.</li>
|
377 |
+
</ul>
|
378 |
+
<p>
|
379 |
+
You can always define the custom field rule without naming it as the Checkbox field in this plugin. If the field has exactly one checkbox element you can enter the field value directly. However, if the field has more than one checkbox element the values will be shown as an array and the Quick and Bulk edit functions will not work..
|
380 |
+
</p>
|
381 |
+
<p>
|
382 |
+
<strong>NOTE:</strong> Although commas are allowed in the ACF field value, they are not supported in this plugin because the comma is used here to separate one value from another. If that's a problem, open a support topic and I will consider enhancing this plugin.
|
383 |
+
<a name="select"></a>
|
384 |
+
</p>
|
385 |
+
<p>
|
386 |
+
<a href="#backtotop">Go to Top</a>
|
387 |
+
</p>
|
388 |
+
<h3>Select Fields</h3>
|
389 |
+
<p>
|
390 |
+
An ACF "Select" field creates an HTML dropdown control with one or more choices, each with a value and a label. The value is stored in the database and the label is shown to the user. Each element can have just a label, in which case the label and value are identical, or a separate value and label. The choices shown to the user as an HTML dropdown control, and the selected value is stored in the database.
|
391 |
+
</p>
|
392 |
+
<p>
|
393 |
+
This example plugin supports one or more Select fields. The title displayed in the Media/Assistant admin submenu is set in the General tab. The "MLA value" for the field shows the label. To change the choice recorded in the database you can enter the label of the choice you want in the Quick or Bulk Edit areas. This plugin translates the label entered to the corresponding value and stores that in the database. You can sort the submenu table by clicking the column header. The sort order will be the field value, not the label, so the results might appear to be out of order.
|
394 |
+
</p>
|
395 |
+
<p>
|
396 |
+
If your ACF field definition allows "Select multiple values", the label(s) will be presented as a comma separated list. You can enter multiple comma separated labels in the Quick and Bulk Area text boxes. You can also enter the special value "empty" in the Bulk Edit text box to delete all choices.
|
397 |
+
</p>
|
398 |
+
<p>
|
399 |
+
You do not have to define an MLA Custom Field mapping rule for your select field(s). This plugin will automatically add the fields specified on the General tab to the Media/Assistant submenu table and the Quick and Bulk Edit areas. If you do define an MLA rule for the field it will be shown in addition to the field defined by this plugin. The MLA field will show and use the ACF values, not the labels, for its content.
|
400 |
+
</p>
|
401 |
+
<p>
|
402 |
+
|
403 |
+
<a name="repeater"></a>
|
404 |
+
</p>
|
405 |
+
<p>
|
406 |
+
<a href="#backtotop">Go to Top</a>
|
407 |
+
</p>
|
408 |
+
<h3>Repeater Field "Where Used" Analysis</h3>
|
409 |
+
<p>
|
410 |
+
An ACF "Repeater" field provides a solution for repeating content. This field type acts as a parent to a set of sub fields which can be repeated again and again. Any kind of field can be used within a Repeater, and there are no limits to the number of repeats. If one of a Repeater's sub fields is an ACF "Image" field, this plugin can show you where each Media Library item is used in that sub field.
|
411 |
+
</p>
|
412 |
+
<p>
|
413 |
+
This example plugin analyzes one Image sub field in one Repeater field; the results are shown in a Media/Assistant submenu table column. For each item used in the Repeater/Image sub field the column will show the title, type (post, page, etc.) and ID of the using entity. You can click on the title to go to the Edit page for the entity.
|
414 |
+
|
415 |
+
<a name="image"></a>
|
416 |
+
</p>
|
417 |
+
<p>
|
418 |
+
<a href="#backtotop">Go to Top</a>
|
419 |
+
</p>
|
420 |
+
<h3>Image Fields "Where Used" Analysis</h3>
|
421 |
+
<p>
|
422 |
+
An ACF "Image" field allows an image to be uploaded and selected by using the native WordPress media modal. The ID of the Media Library item containing the image is stored in the database.
|
423 |
+
</p>
|
424 |
+
<p>
|
425 |
+
This example plugin analyzes one or Image field(s); the results for each field are shown in a Media/Assistant submenu table column. For each item used in each Image field the column will show the title, type (post, page, etc.) and ID of the using entity. You can click on the title to go to the Edit page for the entity.
|
426 |
+
<a name="debugging"></a>
|
427 |
+
</p>
|
428 |
+
<p>
|
429 |
+
<a href="#backtotop">Go to Top</a>
|
430 |
+
</p>
|
431 |
+
<h3>Debugging and Troubleshooting</h3>
|
432 |
+
<p>
|
433 |
+
If you are not getting the results you expect from the plugin carefully inspecting the results of its operations can be a valuable exercise. You can activate some MLA debug logging to add information to the site error log that details what the plugin is doing.
|
434 |
+
</p>
|
435 |
+
<p>
|
436 |
+
The most common cause of unexpected results is mispelling the ACF field name or trying to use the field label instead of the name. For the Quick and Bulk edit areas, make sure you enter the exact checkbox value or select option label without leading or trailing spaces. These values are case sensitive; "Yes" is different from "yes".</p>
|
437 |
+
</p>
|
438 |
+
<p>
|
439 |
+
If a problem persists you can activate additional MLA debug logging, run a test and inspect the log file for more information about what's going on. To activate MLA’s debug logging:
|
440 |
+
</p>
|
441 |
+
<ol>
|
442 |
+
<li>Navigate to the Settings/Media Library Assistant Debug tab.</li>
|
443 |
+
<li>Scroll down to the “MLA Reporting” text box and enter “0x8003”. This will turn on MLA debug logging for the example plugin and AJAX operations (such as Quick and Bulk updates).</li>
|
444 |
+
<li>Click the Save Changes button to record your new setting.</li>
|
445 |
+
<li>Optionally, scroll to the bottom of the screen and click “Reset” to clear the error log. You may not want to do this depending on how you manage your error log.</li>
|
446 |
+
</ol>
|
447 |
+
<p>
|
448 |
+
Once that’s done you can run a test. The debug log can be very detailed, so restricting the test as best you can will be very helpful. If you are working with the Media/Assistant admin submenu table try reducing the "Entries per page" to a small number, e.g., 1. When you’ve finished testing, go back to the Debug screen and:
|
449 |
+
</p>
|
450 |
+
<ol>
|
451 |
+
<li>Enter “0” in the MLA Reporting text box to turn debug logging off.</li>
|
452 |
+
<li>Click the Save Changes button to record your new setting.</li>
|
453 |
+
<li>Scroll to the bottom and click “Download” to get the log content in a text file.</li>
|
454 |
+
<li>Optionally, scroll to the bottom of the screen and click “Reset” to clear the error log.</li>
|
455 |
+
</ol>
|
456 |
+
<p>
|
457 |
+
There may be a lot of messages written to the log, so limit the amount of activity during the logging period. You should see messages in the log like these:
|
458 |
+
</p>
|
459 |
+
<blockquote>
|
460 |
+
[07-Oct-2021 23:51:09 UTC] 187 MLAACFExample::initialize plugin_settings = array (<br />
|
461 |
+
'acf_checkbox_enabled' => true,<br />
|
462 |
+
...<br />
|
463 |
+
)<br />
|
464 |
+
[07-Oct-2021 23:51:14 UTC] 640 MLACore::mla_plugins_loaded_action() MLA 2.97 (20210930) mla_debug_level 0x8003
|
465 |
+
</blockquote>
|
466 |
+
<p>
|
467 |
+
Of course, the details will be different. If you discover a defect in the plugin (or in MLA) you can <a href="http://wordpress.org/support/plugin/media-library-assistant" target="_blank">open a support topic</a> or <a href="http://davidlingren.com/#two" target="_blank">contact me at my web site</a> so it can be investigated further. I may ask for a copy of the log file from your tests.
|
468 |
+
</p>
|
469 |
+
</div>
|
examples/plugins/{mla-custom-field-search-example/class-mla-example-plugin-settings.php → mla-advanced-custom-fields-example/class-mla-example-plugin-settings-101.php}
RENAMED
@@ -4,12 +4,12 @@
|
|
4 |
*
|
5 |
* This file might be shared among multiple example plugins, so load it with:
|
6 |
*
|
7 |
-
* if ( ! class_exists( '
|
8 |
-
* require_once( pathinfo( __FILE__, PATHINFO_DIRNAME ) . '/class-mla-example-plugin-settings.php' );
|
9 |
* }
|
10 |
*
|
11 |
* @package Media Library Assistant
|
12 |
-
* @
|
13 |
*/
|
14 |
|
15 |
/**
|
@@ -18,7 +18,7 @@
|
|
18 |
* @package MLA Example Settings Menu
|
19 |
* @since 1.00
|
20 |
*/
|
21 |
-
class
|
22 |
/**
|
23 |
* Default values for the __construct function
|
24 |
*
|
@@ -55,6 +55,7 @@ class MLAExamplePluginSettings {
|
|
55 |
* @param array $attr Option definitions and settings
|
56 |
*/
|
57 |
public function __construct( $attr ) {
|
|
|
58 |
// Make sure $attr is an array, even if it's empty
|
59 |
if ( empty( $attr ) ) {
|
60 |
$attr = array();
|
@@ -71,6 +72,17 @@ class MLAExamplePluginSettings {
|
|
71 |
}
|
72 |
|
73 |
if ( is_admin() ) {
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
74 |
// Add submenu page in the "Settings" section
|
75 |
add_action( 'admin_menu', array( $this, 'admin_menu' ) );
|
76 |
}
|
@@ -296,10 +308,10 @@ class MLAExamplePluginSettings {
|
|
296 |
if ( 'checkbox' === $option['type'] ) {
|
297 |
$page_values[ $slug . '_checked' ] = $this->get_plugin_option( $slug ) ? 'checked="checked" ' : '';
|
298 |
} else {
|
299 |
-
$page_values[ $slug ] = $this->get_plugin_option( $slug );
|
300 |
}
|
301 |
}
|
302 |
-
//error_log( __LINE__ . '
|
303 |
|
304 |
$options_list = MLAData::mla_parse_template( $this->page_template_array['page-level-options'], $page_values );
|
305 |
|
@@ -345,17 +357,20 @@ class MLAExamplePluginSettings {
|
|
345 |
$page_content = array( 'message' => 'Settings unchanged.', 'body' => '' );
|
346 |
|
347 |
$changed = false;
|
|
|
348 |
foreach ( $this->current_arguments['options'] as $slug => $option ) {
|
349 |
if ( 'checkbox' === $option['type'] ) {
|
350 |
-
$changed |= $this->_update_plugin_option( $slug, isset( $
|
351 |
} else {
|
352 |
-
if ( isset( $
|
353 |
-
$changed |= $this->_update_plugin_option( $slug, $
|
354 |
} else {
|
355 |
$changed |= $this->_update_plugin_option( $slug, $option['default'] );
|
356 |
}
|
357 |
}
|
358 |
} // foreach option
|
|
|
|
|
359 |
|
360 |
if ( $changed ) {
|
361 |
// No reason to save defaults in the database
|
@@ -410,6 +425,7 @@ class MLAExamplePluginSettings {
|
|
410 |
|
411 |
// Update the plugin options from the wp_options table or set defaults
|
412 |
$this->current_settings = get_option( $this->current_arguments['slug_prefix'] . '-settings' );
|
|
|
413 |
if ( !is_array( $this->current_settings ) ) {
|
414 |
$this->current_settings = $this->default_settings;
|
415 |
}
|
@@ -421,9 +437,19 @@ class MLAExamplePluginSettings {
|
|
421 |
}
|
422 |
}
|
423 |
|
|
|
424 |
return true;
|
425 |
}
|
426 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
427 |
/**
|
428 |
* In-memory representation of the option settings
|
429 |
*
|
@@ -442,6 +468,31 @@ class MLAExamplePluginSettings {
|
|
442 |
*/
|
443 |
private $default_settings = array();
|
444 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
445 |
/**
|
446 |
* Get a plugin option setting
|
447 |
*
|
@@ -456,36 +507,63 @@ class MLAExamplePluginSettings {
|
|
456 |
return NULL;
|
457 |
}
|
458 |
|
459 |
-
|
460 |
-
|
|
|
|
|
|
|
|
|
|
|
461 |
}
|
462 |
|
463 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
464 |
}
|
465 |
|
466 |
/**
|
467 |
-
*
|
468 |
*
|
469 |
-
* @since 1.
|
470 |
*
|
471 |
-
* @param string
|
472 |
-
* @param mixed $new_value Option value
|
473 |
*
|
474 |
-
* @return
|
475 |
*/
|
476 |
-
|
477 |
-
if (
|
478 |
return NULL;
|
479 |
}
|
480 |
|
481 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
482 |
|
483 |
if ( $new_value === $old_value ) {
|
484 |
return false;
|
485 |
}
|
486 |
|
487 |
-
$this->
|
488 |
return true;
|
489 |
}
|
490 |
-
} // Class
|
491 |
?>
|
4 |
*
|
5 |
* This file might be shared among multiple example plugins, so load it with:
|
6 |
*
|
7 |
+
* if ( ! class_exists( 'MLAExamplePluginSettings101' ) ) {
|
8 |
+
* require_once( pathinfo( __FILE__, PATHINFO_DIRNAME ) . '/class-mla-example-plugin-settings-101.php' );
|
9 |
* }
|
10 |
*
|
11 |
* @package Media Library Assistant
|
12 |
+
* @version 1.01
|
13 |
*/
|
14 |
|
15 |
/**
|
18 |
* @package MLA Example Settings Menu
|
19 |
* @since 1.00
|
20 |
*/
|
21 |
+
class MLAExamplePluginSettings101 {
|
22 |
/**
|
23 |
* Default values for the __construct function
|
24 |
*
|
55 |
* @param array $attr Option definitions and settings
|
56 |
*/
|
57 |
public function __construct( $attr ) {
|
58 |
+
//error_log( __LINE__ . " MLAExamplePluginSettings101::__construct() _REQUEST = " . var_export( $_REQUEST, true ), 0 );
|
59 |
// Make sure $attr is an array, even if it's empty
|
60 |
if ( empty( $attr ) ) {
|
61 |
$attr = array();
|
72 |
}
|
73 |
|
74 |
if ( is_admin() ) {
|
75 |
+
// Record new settings if they're being updated
|
76 |
+
$this->request_settings = array();
|
77 |
+
if ( !empty( $_REQUEST[ $this->current_arguments['slug_prefix'] . '_options_save'] ) ) {
|
78 |
+
if ( isset( $_REQUEST[ $this->current_arguments['slug_prefix'] . '_options' ] ) ) {
|
79 |
+
$this->request_settings = wp_unslash( $_REQUEST[ $this->current_arguments['slug_prefix'] . '_options' ] );
|
80 |
+
}
|
81 |
+
} elseif ( !empty( $_REQUEST[ $this->current_arguments['slug_prefix'] . '_options_reset'] ) ) {
|
82 |
+
$this->request_settings = $this->default_settings;
|
83 |
+
}
|
84 |
+
//error_log( __LINE__ . ' MLAExamplePluginSettings101::__construct request_settings = ' . var_export( $this->request_settings, true ), 0 );
|
85 |
+
//error_log( __LINE__ . ' MLAExamplePluginSettings101::__construct mla_hex_dump( exports ) = ' . var_export( MLAData::mla_hex_dump( $this->request_settings['exports'] ), true ), 0 );
|
86 |
// Add submenu page in the "Settings" section
|
87 |
add_action( 'admin_menu', array( $this, 'admin_menu' ) );
|
88 |
}
|
308 |
if ( 'checkbox' === $option['type'] ) {
|
309 |
$page_values[ $slug . '_checked' ] = $this->get_plugin_option( $slug ) ? 'checked="checked" ' : '';
|
310 |
} else {
|
311 |
+
$page_values[ $slug ] = esc_attr( $this->get_plugin_option( $slug ) );
|
312 |
}
|
313 |
}
|
314 |
+
//error_log( __LINE__ . ' MLAExamplePluginSettings101::_compose_general_tab page_values = ' . var_export( $page_values, true ), 0 );
|
315 |
|
316 |
$options_list = MLAData::mla_parse_template( $this->page_template_array['page-level-options'], $page_values );
|
317 |
|
357 |
$page_content = array( 'message' => 'Settings unchanged.', 'body' => '' );
|
358 |
|
359 |
$changed = false;
|
360 |
+
//error_log( __LINE__ . ' MLAExamplePluginSettings101::_save_setting_changes current_arguments[options] = ' . var_export( $this->current_arguments['options'], true ), 0 );
|
361 |
foreach ( $this->current_arguments['options'] as $slug => $option ) {
|
362 |
if ( 'checkbox' === $option['type'] ) {
|
363 |
+
$changed |= $this->_update_plugin_option( $slug, isset( $this->request_settings[ $slug ] ) );
|
364 |
} else {
|
365 |
+
if ( isset( $this->request_settings[ $slug ] ) ) {
|
366 |
+
$changed |= $this->_update_plugin_option( $slug, $this->request_settings[ $slug ] );
|
367 |
} else {
|
368 |
$changed |= $this->_update_plugin_option( $slug, $option['default'] );
|
369 |
}
|
370 |
}
|
371 |
} // foreach option
|
372 |
+
$this->request_settings = array();
|
373 |
+
//error_log( __LINE__ . " MLAExamplePluginSettings101::_save_setting_changes( {$changed} ) final current_settings = " . var_export( $this->current_settings, true ), 0 );
|
374 |
|
375 |
if ( $changed ) {
|
376 |
// No reason to save defaults in the database
|
425 |
|
426 |
// Update the plugin options from the wp_options table or set defaults
|
427 |
$this->current_settings = get_option( $this->current_arguments['slug_prefix'] . '-settings' );
|
428 |
+
//error_log( __LINE__ . ' MLAExamplePluginSettings101::_get_plugin_settings stored current_settings = ' . var_export( $this->current_settings, true ), 0 );
|
429 |
if ( !is_array( $this->current_settings ) ) {
|
430 |
$this->current_settings = $this->default_settings;
|
431 |
}
|
437 |
}
|
438 |
}
|
439 |
|
440 |
+
//error_log( __LINE__ . ' MLAExamplePluginSettings101::_get_plugin_settings final current_settings = ' . var_export( $this->current_settings, true ), 0 );
|
441 |
return true;
|
442 |
}
|
443 |
|
444 |
+
/**
|
445 |
+
* Updated option settings from the $_REQUEST array
|
446 |
+
*
|
447 |
+
* @since 1.01
|
448 |
+
*
|
449 |
+
* @var array
|
450 |
+
*/
|
451 |
+
private $request_settings = array();
|
452 |
+
|
453 |
/**
|
454 |
* In-memory representation of the option settings
|
455 |
*
|
468 |
*/
|
469 |
private $default_settings = array();
|
470 |
|
471 |
+
/**
|
472 |
+
* Update a plugin option setting
|
473 |
+
*
|
474 |
+
* @since 1.00
|
475 |
+
*
|
476 |
+
* @param string $name Option name
|
477 |
+
* @param mixed $new_value Option value
|
478 |
+
*
|
479 |
+
* @return mixed True if option value changed, false if value unchanged, NULL if failure
|
480 |
+
*/
|
481 |
+
private function _update_plugin_option( $name, $new_value ) {
|
482 |
+
if ( !$this->_get_plugin_settings() ) {
|
483 |
+
return NULL;
|
484 |
+
}
|
485 |
+
|
486 |
+
$old_value = isset( $this->current_settings[ $name ] ) ? $this->current_settings[ $name ] : NULL;
|
487 |
+
|
488 |
+
if ( $new_value === $old_value ) {
|
489 |
+
return false;
|
490 |
+
}
|
491 |
+
|
492 |
+
$this->current_settings[ $name ] = $new_value;
|
493 |
+
return true;
|
494 |
+
}
|
495 |
+
|
496 |
/**
|
497 |
* Get a plugin option setting
|
498 |
*
|
507 |
return NULL;
|
508 |
}
|
509 |
|
510 |
+
// See if the setting is being updated
|
511 |
+
if ( isset( $this->request_settings[ $name ] ) ) {
|
512 |
+
return $this->request_settings[ $name ];
|
513 |
+
}
|
514 |
+
|
515 |
+
if ( isset( $this->current_settings[ $name ] ) ) {
|
516 |
+
return $this->current_settings[ $name ];
|
517 |
}
|
518 |
|
519 |
+
// Special names for debug logging
|
520 |
+
switch ( $name ) {
|
521 |
+
case 'request_settings':
|
522 |
+
return $this->request_settings;
|
523 |
+
case 'current_settings':
|
524 |
+
return $this->current_settings;
|
525 |
+
case 'default_settings':
|
526 |
+
return $this->default_settings;
|
527 |
+
}
|
528 |
+
|
529 |
+
return NULL;
|
530 |
}
|
531 |
|
532 |
/**
|
533 |
+
* Get a plugin argument setting
|
534 |
*
|
535 |
+
* @since 1.01
|
536 |
*
|
537 |
+
* @param string $name Argument name
|
|
|
538 |
*
|
539 |
+
* @return mixed Argument value, if it exists else NULL
|
540 |
*/
|
541 |
+
public function get_plugin_argument( $name ) {
|
542 |
+
if ( !isset( $this->current_arguments[ $name ] ) ) {
|
543 |
return NULL;
|
544 |
}
|
545 |
|
546 |
+
return $this->current_arguments[ $name ];
|
547 |
+
}
|
548 |
+
|
549 |
+
/**
|
550 |
+
* Update a plugin argument setting
|
551 |
+
*
|
552 |
+
* @since 1.01
|
553 |
+
*
|
554 |
+
* @param string $name Argument name
|
555 |
+
*
|
556 |
+
* @return boolean True if argument value changed, false if value unchanged
|
557 |
+
*/
|
558 |
+
public function update_plugin_argument( $name, $new_value ) {
|
559 |
+
$old_value = isset( $this->current_arguments[ $name ] ) ? $this->current_arguments[ $name ] : NULL;
|
560 |
|
561 |
if ( $new_value === $old_value ) {
|
562 |
return false;
|
563 |
}
|
564 |
|
565 |
+
$this->current_arguments[ $name ] = $new_value;
|
566 |
return true;
|
567 |
}
|
568 |
+
} // Class MLAExamplePluginSettings101
|
569 |
?>
|
examples/plugins/mla-advanced-custom-fields-example/mla-advanced-custom-fields-example.php
ADDED
@@ -0,0 +1,1212 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* Supports an ACF checkbox, "where-used" in an ACF repeater, one or more ACF "image" fields and one or more ACF "select" fields
|
4 |
+
*
|
5 |
+
* In this example:
|
6 |
+
*
|
7 |
+
* 1. an Advanced Custom Fields "checkbox" custom field is added to the
|
8 |
+
* Media/Assistant submenu table, Quick Edit and Bulk Edit areas.
|
9 |
+
*
|
10 |
+
* 2. an Advanced Custom Fields "repeater" custom field is analyzed to display
|
11 |
+
* "where used" information in the Media/Assistant submenu table.
|
12 |
+
*
|
13 |
+
* 3. Advanced Custom Fields "image" custom field(s) are analyzed to display
|
14 |
+
* "where used" information in the Media/Assistant submenu table.
|
15 |
+
*
|
16 |
+
* 4. Advanced Custom Fields "image" custom field(s) are made available as custom data substitution
|
17 |
+
* parameters, using the prefix "acf:", e.g., "acf:search_bar_image". Three format/option values
|
18 |
+
* can be added: 1) "acf:search_bar_image(count)" returns the number of item references,
|
19 |
+
* 2) "acf:search_bar_image(present)" returns 1 if there are references present, and 3) a numeric
|
20 |
+
* value, e.g., "acf:search_bar_image(3)" returns the count only if it is equal to or greater than
|
21 |
+
* the number of references.
|
22 |
+
*
|
23 |
+
* 5. Advanced Custom Fields "select" custom field(s) are made available in the Media/Assistant submenu
|
24 |
+
* table as columns that display the ACF label (Vs the value) ssigned to each choice. You can edit
|
25 |
+
* the fields by changing the label; the plugin will convert this to the corresponding value and
|
26 |
+
* update the field appropriately.
|
27 |
+
*
|
28 |
+
* You can turn each of the four field types on or off by setting the corresponding "Enable" option on the
|
29 |
+
* Settings/MLA AC Fields "General" tab. You can change the field names and titles/labels by editing the
|
30 |
+
* corresponding options.
|
31 |
+
*
|
32 |
+
* Much more information is in the Settings/MLA AC Fields "Documentation" tab.
|
33 |
+
*
|
34 |
+
* Created (ACF Checkbox Field) as the "MLA ACF Checkbox Example" plugin for support topic "Bulk edit a custom field value"
|
35 |
+
* opened on 12/18/2013 by "saqwild"
|
36 |
+
* https://wordpress.org/support/topic/bulk-edit-a-custom-field-value/#post-4428935
|
37 |
+
*
|
38 |
+
* Enhanced (ACF Repeater Field) for support topic "Advanced Custom Fields repeater"
|
39 |
+
* opened on 3/1/2015 by "ncj"
|
40 |
+
* https://wordpress.org/support/topic/advanced-custom-fields-repeater/
|
41 |
+
*
|
42 |
+
* Enhanced (ACF Image Fields) for support topic "finding “where used” in custom field"
|
43 |
+
* opened on 4/19/2020 by "maven1129"
|
44 |
+
* https://wordpress.org/support/topic/finding-where-used-in-custom-field/
|
45 |
+
*
|
46 |
+
* Enhanced (ACF Select Fields) for support topic "Bulk edit ACF custom field"
|
47 |
+
* opened on 6/15/2021 by "andreatkc"
|
48 |
+
* https://wordpress.org/support/topic/bulk-edit-acf-custom-field/
|
49 |
+
*
|
50 |
+
* @package MLA Advanced Custom Fields Example
|
51 |
+
* @version 1.07
|
52 |
+
*/
|
53 |
+
|
54 |
+
/*
|
55 |
+
Plugin Name: MLA Advanced Custom Fields Example
|
56 |
+
Plugin URI: http://davidlingren.com/
|
57 |
+
Description: Supports an ACF checkbox, "where-used" in an ACF repeater, one or more ACF "image" fields and one or more ACF "select" fields.
|
58 |
+
Author: David Lingren
|
59 |
+
Version: 1.07
|
60 |
+
Author URI: http://davidlingren.com/
|
61 |
+
|
62 |
+
Copyright 2014 - 2021 David Lingren
|
63 |
+
|
64 |
+
This program is free software; you can redistribute it and/or modify
|
65 |
+
it under the terms of the GNU General Public License as published by
|
66 |
+
the Free Software Foundation; either version 2 of the License, or
|
67 |
+
(at your option) any later version.
|
68 |
+
|
69 |
+
This program is distributed in the hope that it will be useful,
|
70 |
+
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
71 |
+
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
72 |
+
GNU General Public License for more details.
|
73 |
+
|
74 |
+
You can get a copy of the GNU General Public License by writing to the
|
75 |
+
Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110, USA
|
76 |
+
*/
|
77 |
+
|
78 |
+
/**
|
79 |
+
* Class MLA Advanced Custom Fields Example hooks some of the filters provided by the MLA_List_Table and MLAData classes
|
80 |
+
*
|
81 |
+
* Call it anything you want, but give it an unlikely and hopefully unique name. Hiding everything
|
82 |
+
* else inside a class means this is the only name you have to worry about.
|
83 |
+
*
|
84 |
+
* @package MLA Advanced Custom Fields Example
|
85 |
+
* @since 1.00
|
86 |
+
*/
|
87 |
+
class MLAACFExample {
|
88 |
+
/**
|
89 |
+
* Plugin version number for debug logging
|
90 |
+
*
|
91 |
+
* @since 1.01
|
92 |
+
*
|
93 |
+
* @var integer
|
94 |
+
*/
|
95 |
+
const PLUGIN_VERSION = '1.07';
|
96 |
+
|
97 |
+
/**
|
98 |
+
* Constant to log this plugin's debug activity
|
99 |
+
*
|
100 |
+
* @since 1.06
|
101 |
+
*
|
102 |
+
* @var integer
|
103 |
+
*/
|
104 |
+
const MLA_DEBUG_CATEGORY = 0x00008000;
|
105 |
+
|
106 |
+
/**
|
107 |
+
* Slug prefix for registering and enqueueing submenu pages, style sheets, scripts and settings
|
108 |
+
*
|
109 |
+
* @since 1.06
|
110 |
+
*
|
111 |
+
* @var string
|
112 |
+
*/
|
113 |
+
const SLUG_PREFIX = 'mlaacfexample';
|
114 |
+
|
115 |
+
/**
|
116 |
+
* Configuration values for the Settings Management object
|
117 |
+
*
|
118 |
+
* @since 1.06
|
119 |
+
*
|
120 |
+
* @var array
|
121 |
+
*/
|
122 |
+
private static $settings_arguments = array(
|
123 |
+
'slug_prefix' => self::SLUG_PREFIX,
|
124 |
+
'plugin_title' => 'MLA Advanced Custom Fields Example',
|
125 |
+
'menu_title' => 'MLA AC Fields',
|
126 |
+
'plugin_file_name_only' => 'mla-advanced-custom-fields-example',
|
127 |
+
'plugin_version' => self::PLUGIN_VERSION,
|
128 |
+
'template_file' => '/admin-settings-page.tpl', // Add the path at runtime, in initialize()
|
129 |
+
'options' => array( // 'slug' => array( 'type' => 'text|checkbox', 'default' => 'text|boolean' )
|
130 |
+
'acf_checkbox_enabled' =>array( 'type' => 'checkbox', 'default' => false ),
|
131 |
+
'acf_checkbox_fields' =>array( 'type' => 'text', 'default' => '' ),
|
132 |
+
'acf_checkbox_titles' =>array( 'type' => 'text', 'default' => '' ),
|
133 |
+
'acf_repeater_enabled' =>array( 'type' => 'checkbox', 'default' => false ),
|
134 |
+
'acf_repeater_fields' =>array( 'type' => 'text', 'default' => '' ),
|
135 |
+
'acf_repeater_titles' =>array( 'type' => 'text', 'default' => '' ),
|
136 |
+
'acf_repeater_subfields' =>array( 'type' => 'text', 'default' => '' ),
|
137 |
+
'acf_image_enabled' =>array( 'type' => 'checkbox', 'default' => false ),
|
138 |
+
'acf_image_fields' =>array( 'type' => 'text', 'default' => '' ),
|
139 |
+
'acf_image_titles' =>array( 'type' => 'text', 'default' => '' ),
|
140 |
+
'acf_select_enabled' =>array( 'type' => 'checkbox', 'default' => false ),
|
141 |
+
'acf_select_fields' =>array( 'type' => 'text', 'default' => '' ),
|
142 |
+
'acf_select_titles' =>array( 'type' => 'text', 'default' => '' ),
|
143 |
+
),
|
144 |
+
'general_tab_values' => array(), // additional page_values for 'page-level-options' template
|
145 |
+
'documentation_tab_values' => array(
|
146 |
+
'plugin_title' => 'MLA Advanced Custom Fields Example',
|
147 |
+
), // page_values for 'documentation-tab' template
|
148 |
+
);
|
149 |
+
|
150 |
+
/**
|
151 |
+
* Settings Management object
|
152 |
+
*
|
153 |
+
* @since 1.06
|
154 |
+
*
|
155 |
+
* @var array
|
156 |
+
*/
|
157 |
+
private static $plugin_settings = NULL;
|
158 |
+
|
159 |
+
/**
|
160 |
+
* Initialization function, similar to __construct()
|
161 |
+
*
|
162 |
+
* @since 1.00
|
163 |
+
*
|
164 |
+
* @return void
|
165 |
+
*/
|
166 |
+
public static function initialize() {
|
167 |
+
// This plugin requires MLA
|
168 |
+
if ( ! class_exists( 'MLACore', false ) ) {
|
169 |
+
return;
|
170 |
+
}
|
171 |
+
|
172 |
+
// This plugin requires ACF to be active
|
173 |
+
if ( !function_exists('acf_get_field') ) {
|
174 |
+
return;
|
175 |
+
}
|
176 |
+
|
177 |
+
// The plugin settings class is shared with other MLA example plugins
|
178 |
+
if ( ! class_exists( 'MLAExamplePluginSettings101' ) ) {
|
179 |
+
require_once( pathinfo( __FILE__, PATHINFO_DIRNAME ) . '/class-mla-example-plugin-settings-101.php' );
|
180 |
+
}
|
181 |
+
|
182 |
+
// Add the run-time values to the arguments
|
183 |
+
self::$settings_arguments['template_file'] = dirname( __FILE__ ) . self::$settings_arguments['template_file'];
|
184 |
+
|
185 |
+
// Create our own settings object
|
186 |
+
self::$plugin_settings = new MLAExamplePluginSettings101( self::$settings_arguments );
|
187 |
+
MLACore::mla_debug_add( __LINE__ . ' MLAACFExample::initialize plugin_settings = ' . var_export( self::$plugin_settings->get_plugin_option( 'current_settings' ), true ), self::MLA_DEBUG_CATEGORY );
|
188 |
+
|
189 |
+
// Defined in /media-library-assistant/includes/class-mla-data.php
|
190 |
+
add_filter( 'mla_expand_custom_prefix', 'MLAACFExample::mla_expand_custom_prefix', 10, 8 );
|
191 |
+
|
192 |
+
// The remaining filters are only useful for the admin section; exit in the front-end posts/pages
|
193 |
+
if ( ! is_admin() )
|
194 |
+
return;
|
195 |
+
|
196 |
+
// Build a cache of ACF select field "objects" (actually arrays)
|
197 |
+
self::_build_select_field_objects();
|
198 |
+
|
199 |
+
// Defined in /media-library-assistant/includes/class-mla-main.php
|
200 |
+
add_filter( 'mla_list_table_inline_fields', 'MLAACFExample::mla_list_table_inline_fields', 10, 1 );
|
201 |
+
add_filter( 'mla_list_table_inline_action', 'MLAACFExample::mla_list_table_inline_action', 10, 2 );
|
202 |
+
add_filter( 'mla_list_table_bulk_action_initial_request', 'MLAACFExample::mla_list_table_bulk_action_initial_request', 10, 3 );
|
203 |
+
add_filter( 'mla_list_table_bulk_action', 'MLAACFExample::mla_list_table_bulk_action', 10, 3 );
|
204 |
+
add_filter( 'mla_list_table_inline_values', 'MLAACFExample::mla_list_table_inline_values', 10, 1 );
|
205 |
+
|
206 |
+
// Defined in /media-library-assistant/includes/class-mla-list-table.php
|
207 |
+
add_filter( 'mla_list_table_get_columns', 'MLAACFExample::mla_list_table_get_columns', 10, 1 );
|
208 |
+
add_filter( 'mla_list_table_get_hidden_columns', 'MLAACFExample::mla_list_table_get_hidden_columns', 10, 1 );
|
209 |
+
add_filter( 'mla_list_table_get_sortable_columns', 'MLAACFExample::mla_list_table_get_sortable_columns', 10, 1 );
|
210 |
+
add_filter( 'mla_list_table_column_default', 'MLAACFExample::mla_list_table_column_default', 10, 3 );
|
211 |
+
add_filter( 'mla_list_table_query_final_terms', 'MLAACFExample::mla_list_table_query_final_terms', 10, 1 );
|
212 |
+
|
213 |
+
add_filter( 'mla_list_table_build_inline_data', 'MLAACFExample::mla_list_table_build_inline_data', 10, 2 );
|
214 |
+
}
|
215 |
+
|
216 |
+
/**
|
217 |
+
* Process an MLA_List_Table inline action, i.e., Quick Edit
|
218 |
+
*
|
219 |
+
* This filter gives you an opportunity to pre-process an MLA_List_Table "Quick Edit"
|
220 |
+
* action before the MLA handler.
|
221 |
+
*
|
222 |
+
* @since 1.00
|
223 |
+
*
|
224 |
+
* @param array $fields slug(s) of Quick/Bulk Edit eligible fields.
|
225 |
+
*/
|
226 |
+
public static function mla_list_table_inline_fields( $fields ) {
|
227 |
+
// Add columns of our own for the select information
|
228 |
+
if ( self::$plugin_settings->get_plugin_option( 'acf_select_enabled' ) ) {
|
229 |
+
foreach( self::$field_objects as $field_name => $field_object ) {
|
230 |
+
$fields[] = 'acf_' . $field_name;
|
231 |
+
}
|
232 |
+
} // acf_select_enabled
|
233 |
+
|
234 |
+
return $fields;
|
235 |
+
} // mla_list_table_inline_action
|
236 |
+
|
237 |
+
/**
|
238 |
+
* Convert an ACF select field label to its field value
|
239 |
+
*
|
240 |
+
* @since 1.06
|
241 |
+
*
|
242 |
+
* @param string $field_name ACF field name
|
243 |
+
* @param string $field_label ACF field name (candidate)
|
244 |
+
*
|
245 |
+
* @return string ACF field value, if valid else empty.
|
246 |
+
*/
|
247 |
+
private static function _convert_acf_label_to_value( $field_name, $field_label ) {
|
248 |
+
if ( isset( self::$field_objects[ $field_name ] ) ) {
|
249 |
+
// choices -> array( value => label )
|
250 |
+
$choices = self::$field_objects[ $field_name ]['choices'];
|
251 |
+
|
252 |
+
// Multi-select dropdowns are allowed, returning an array of choices
|
253 |
+
if ( self::$field_objects[ $field_name ]['multiple'] ) {
|
254 |
+
$values = array();
|
255 |
+
foreach ( explode( ',', $field_label ) as $label ) {
|
256 |
+
$value = array_search( $label, $choices );
|
257 |
+
|
258 |
+
if ( false !== $value ) {
|
259 |
+
$values[] = $value;
|
260 |
+
}
|
261 |
+
}
|
262 |
+
|
263 |
+
return $values;
|
264 |
+
} else {
|
265 |
+
$value = array_search( $field_label, $choices );
|
266 |
+
|
267 |
+
if ( false !== $value ) {
|
268 |
+
return $value;
|
269 |
+
}
|
270 |
+
}
|
271 |
+
}
|
272 |
+
|
273 |
+
return '';
|
274 |
+
} // _convert_acf_label_to_value
|
275 |
+
|
276 |
+
/**
|
277 |
+
* Process an MLA_List_Table inline action, i.e., Quick Edit
|
278 |
+
*
|
279 |
+
* This filter gives you an opportunity to pre-process an MLA_List_Table "Quick Edit"
|
280 |
+
* action before the MLA handler.
|
281 |
+
*
|
282 |
+
* @since 1.00
|
283 |
+
*
|
284 |
+
* @param array $item_content NULL, to indicate no handler.
|
285 |
+
* @param integer $post_id the affected attachment.
|
286 |
+
*
|
287 |
+
* @return object updated $item_content. NULL if no handler, otherwise
|
288 |
+
* ( 'message' => error or status message(s), 'body' => '',
|
289 |
+
* 'prevent_default' => true to bypass the MLA handler )
|
290 |
+
*/
|
291 |
+
public static function mla_list_table_inline_action( $item_content, $post_id ) {
|
292 |
+
if ( self::$plugin_settings->get_plugin_option( 'acf_checkbox_enabled' ) ) {
|
293 |
+
$field = self::$plugin_settings->get_plugin_option( 'acf_checkbox_fields' );
|
294 |
+
// Convert the comma-delimited string of "checked" checkbox values back to an ACF-compatible array
|
295 |
+
if ( isset( $_REQUEST['custom_updates'] ) && isset( $_REQUEST['custom_updates'][ $field ] ) ) {
|
296 |
+
if ( ! empty( $_REQUEST['custom_updates'][ $field ] ) ) {
|
297 |
+
$_REQUEST['custom_updates'][ $field ] = explode( ',', $_REQUEST['custom_updates'][ $field ] );
|
298 |
+
}
|
299 |
+
}
|
300 |
+
} // acf_checkbox_enabled
|
301 |
+
|
302 |
+
// Convert select field updates from label to value, move to 'custom_updates'
|
303 |
+
if ( self::$plugin_settings->get_plugin_option( 'acf_select_enabled' ) ) {
|
304 |
+
$select_updates = array();
|
305 |
+
|
306 |
+
foreach( self::$field_objects as $field_name => $field_object ) {
|
307 |
+
$acf_field = 'acf_' . $field_name;
|
308 |
+
if ( isset( $_REQUEST[ $acf_field ] ) ) {
|
309 |
+
$new_value = self::_convert_acf_label_to_value( $field_name, $_REQUEST[ $acf_field ] );
|
310 |
+
|
311 |
+
if ( !empty( $new_value ) ) {
|
312 |
+
$select_updates[ $field_name ] = $new_value;
|
313 |
+
}
|
314 |
+
|
315 |
+
unset( $_REQUEST[ $acf_field ] );
|
316 |
+
}
|
317 |
+
}
|
318 |
+
|
319 |
+
if ( !empty( $select_updates ) ) {
|
320 |
+
if ( isset( $_REQUEST['custom_updates'] ) ) {
|
321 |
+
$_REQUEST['custom_updates'] = array_merge( $_REQUEST['custom_updates'], $select_updates );
|
322 |
+
} else {
|
323 |
+
$_REQUEST['custom_updates'] = $select_updates;
|
324 |
+
}
|
325 |
+
}
|
326 |
+
} // acf_select_enabled
|
327 |
+
|
328 |
+
if ( isset( $_REQUEST['custom_updates'] ) ) {
|
329 |
+
MLACore::mla_debug_add( __LINE__ . ' MLAACFExample::mla_list_table_inline_action custom_updates = ' . var_export( $_REQUEST['custom_updates'], true ), self::MLA_DEBUG_CATEGORY );
|
330 |
+
} else {
|
331 |
+
MLACore::mla_debug_add( __LINE__ . ' MLAACFExample::mla_list_table_inline_action NO custom_updates', self::MLA_DEBUG_CATEGORY );
|
332 |
+
}
|
333 |
+
|
334 |
+
return $item_content;
|
335 |
+
} // mla_list_table_inline_action
|
336 |
+
|
337 |
+
/**
|
338 |
+
* Pre-filter MLA_List_Table bulk action request parameters
|
339 |
+
*
|
340 |
+
* This filter gives you an opportunity to pre-process the request parameters for a bulk action
|
341 |
+
* before the action begins. DO NOT assume parameters come from the $_REQUEST super array!
|
342 |
+
*
|
343 |
+
* @since 1.01
|
344 |
+
*
|
345 |
+
* @param array $request bulk action request parameters, including ['mla_bulk_action_do_cleanup'].
|
346 |
+
* @param string $bulk_action the requested action.
|
347 |
+
* @param array $custom_field_map [ slug => field_name ]
|
348 |
+
*
|
349 |
+
* @return array updated bulk action request parameters
|
350 |
+
*/
|
351 |
+
public static function mla_list_table_bulk_action_initial_request( $request, $bulk_action, $custom_field_map ) {
|
352 |
+
MLACore::mla_debug_add( __LINE__ . ' MLAACFExample::mla_list_table_bulk_action_initial_request request = ' . var_export( $request, true ), self::MLA_DEBUG_CATEGORY );
|
353 |
+
MLACore::mla_debug_add( __LINE__ . ' MLAACFExample::mla_list_table_bulk_action_initial_request custom_field_map = ' . var_export( $custom_field_map, true ), self::MLA_DEBUG_CATEGORY );
|
354 |
+
|
355 |
+
if ( self::$plugin_settings->get_plugin_option( 'acf_checkbox_enabled' ) ) {
|
356 |
+
/*
|
357 |
+
* If the field is present, save the field value for our own update process and remove it
|
358 |
+
* from the $request array to prevent MLA's default update processing.
|
359 |
+
*/
|
360 |
+
$acf_checkbox_field = self::$plugin_settings->get_plugin_option( 'acf_checkbox_fields' );
|
361 |
+
foreach( $custom_field_map as $slug => $custom_field ) {
|
362 |
+
if ( $acf_checkbox_field === $custom_field['name'] ) {
|
363 |
+
if ( ! empty( $request[ $slug ] ) ) {
|
364 |
+
// Convert the comma-delimited string of "checked" checkbox values back to an ACF-compatible array
|
365 |
+
self::$acf_checkbox_value = explode( ',', trim( $request[ $slug ] ) );
|
366 |
+
$request[ $slug ] = '';
|
367 |
+
}
|
368 |
+
|
369 |
+
break;
|
370 |
+
}
|
371 |
+
}
|
372 |
+
|
373 |
+
MLACore::mla_debug_add( __LINE__ . ' MLAACFExample::mla_list_table_bulk_action_initial_request self::$acf_checkbox_value = ' . var_export( self::$acf_checkbox_value, true ), self::MLA_DEBUG_CATEGORY );
|
374 |
+
} // acf_checkbox_enabled
|
375 |
+
|
376 |
+
// Save select field values
|
377 |
+
if ( self::$plugin_settings->get_plugin_option( 'acf_select_enabled' ) ) {
|
378 |
+
self::$field_objects['MLAACFExample_bulk_edit_values'] = array();
|
379 |
+
foreach( self::$field_objects as $field_name => $field_object ) {
|
380 |
+
if ( !empty( $request[ 'acf_' . $field_name ] ) ) {
|
381 |
+
self::$field_objects['MLAACFExample_bulk_edit_values'][ $field_name ] = $request[ 'acf_' . $field_name ];
|
382 |
+
}
|
383 |
+
|
384 |
+
unset( $request[ 'acf_' . $field_name ] );
|
385 |
+
}
|
386 |
+
|
387 |
+
MLACore::mla_debug_add( __LINE__ . ' MLAACFExample::mla_list_table_bulk_action_initial_request bulk_edit_values = ' . var_export( self::$field_objects['MLAACFExample_bulk_edit_values'], true ), self::MLA_DEBUG_CATEGORY );
|
388 |
+
} // acf_select_enabled
|
389 |
+
|
390 |
+
return $request;
|
391 |
+
} // mla_list_table_bulk_action_initial_request
|
392 |
+
|
393 |
+
/**
|
394 |
+
* Holds the new ACF checkbox value for the duration of a Bulk Edit action
|
395 |
+
*
|
396 |
+
* @since 1.01
|
397 |
+
*
|
398 |
+
* @var string
|
399 |
+
*/
|
400 |
+
private static $acf_checkbox_value = NULL;
|
401 |
+
|
402 |
+
/**
|
403 |
+
* Process an MLA_List_Table bulk action
|
404 |
+
*
|
405 |
+
* This filter gives you an opportunity to pre-process an MLA_List_Table page-level
|
406 |
+
* or single-item action, standard or custom, before the MLA handler.
|
407 |
+
* The filter is called once for each of the items in $_REQUEST['cb_attachment'].
|
408 |
+
*
|
409 |
+
* @since 1.00
|
410 |
+
*
|
411 |
+
* @param array $item_content NULL, to indicate no handler.
|
412 |
+
* @param string $bulk_action the requested action.
|
413 |
+
* @param integer $post_id the affected attachment.
|
414 |
+
*
|
415 |
+
* @return object updated $item_content. NULL if no handler, otherwise
|
416 |
+
* ( 'message' => error or status message(s), 'body' => '',
|
417 |
+
* 'prevent_default' => true to bypass the MLA handler )
|
418 |
+
*/
|
419 |
+
public static function mla_list_table_bulk_action( $item_content, $bulk_action, $post_id ) {
|
420 |
+
// Accumulate multiple messages
|
421 |
+
$messages = '';
|
422 |
+
|
423 |
+
if ( self::$plugin_settings->get_plugin_option( 'acf_checkbox_enabled' ) ) {
|
424 |
+
/*
|
425 |
+
* If the field is present, apply our own update process. Note the
|
426 |
+
* special 'empty' value to bulk-delete the custom field entirely.
|
427 |
+
*/
|
428 |
+
if ( ! empty( self::$acf_checkbox_value ) ) {
|
429 |
+
$field = self::$plugin_settings->get_plugin_option( 'acf_checkbox_fields' );
|
430 |
+
if ( 'empty' === self::$acf_checkbox_value ) {
|
431 |
+
delete_post_meta( $post_id, $field );
|
432 |
+
$messages .= sprintf( __( 'Deleting %1$s', 'media-library-assistant' ) . '<br>', $field );
|
433 |
+
} else {
|
434 |
+
update_post_meta( $post_id, $field, self::$acf_checkbox_value );
|
435 |
+
$messages .= sprintf( __( 'Adding %1$s = %2$s', 'media-library-assistant' ) . '<br>', $field, implode( ',', self::$acf_checkbox_value ) );
|
436 |
+
}
|
437 |
+
}
|
438 |
+
} // acf_checkbox_enabled
|
439 |
+
|
440 |
+
// Apply select field values
|
441 |
+
if ( self::$plugin_settings->get_plugin_option( 'acf_select_enabled' ) ) {
|
442 |
+
foreach( self::$field_objects['MLAACFExample_bulk_edit_values'] as $field_name => $new_label ) {
|
443 |
+
if ( 'empty' === $new_label ) {
|
444 |
+
delete_post_meta( $post_id, $field_name );
|
445 |
+
$messages .= sprintf( __( 'Deleting %1$s', 'media-library-assistant' ) . '<br>', $field_name );
|
446 |
+
} else {
|
447 |
+
$new_value = self::_convert_acf_label_to_value( $field_name, $new_label );
|
448 |
+
|
449 |
+
if ( !empty( $new_value ) ) {
|
450 |
+
update_post_meta( $post_id, $field_name, $new_value );
|
451 |
+
$messages .= sprintf( __( 'Adding %1$s = %2$s', 'media-library-assistant' ) . '<br>', $field_name, $new_value );
|
452 |
+
}
|
453 |
+
}
|
454 |
+
}
|
455 |
+
|
456 |
+
self::$field_objects['MLAACFExample_bulk_edit_values'] = array();
|
457 |
+
} // acf_select_enabled
|
458 |
+
|
459 |
+
MLACore::mla_debug_add( __LINE__ . ' MLAACFExample::mla_list_table_bulk_action message = ' . var_export( $messages, true ), self::MLA_DEBUG_CATEGORY );
|
460 |
+
if ( !empty( $messages ) ) {
|
461 |
+
$item_content = array( 'message' => $messages );
|
462 |
+
}
|
463 |
+
|
464 |
+
return $item_content;
|
465 |
+
} // mla_list_table_bulk_action
|
466 |
+
|
467 |
+
/**
|
468 |
+
* MLA_List_Table inline edit item values
|
469 |
+
*
|
470 |
+
* This filter gives you a chance to modify and extend the substitution values
|
471 |
+
* for the Quick and Bulk Edit forms.
|
472 |
+
*
|
473 |
+
* @since 1.00
|
474 |
+
*
|
475 |
+
* @param array $item_values parameter_name => parameter_value pairs
|
476 |
+
*
|
477 |
+
* @return array updated substitution parameter name => value pairs
|
478 |
+
*/
|
479 |
+
public static function mla_list_table_inline_values( $item_values ) {
|
480 |
+
if ( self::$plugin_settings->get_plugin_option( 'acf_checkbox_enabled' ) ) {
|
481 |
+
$title = self::$plugin_settings->get_plugin_option( 'acf_checkbox_titles' );
|
482 |
+
// Replace the ACF Field Name with a more friendly Field Label
|
483 |
+
$item_values['custom_fields'] = str_replace( '>acf_checkbox<', '>' . $title . '<', $item_values['custom_fields'] );
|
484 |
+
$item_values['bulk_custom_fields'] = str_replace( '>acf_checkbox<', '>' . $title . '<', $item_values['bulk_custom_fields'] );
|
485 |
+
} // acf_checkbox_enabled
|
486 |
+
|
487 |
+
if ( self::$plugin_settings->get_plugin_option( 'acf_select_enabled' ) ) {
|
488 |
+
// Append the ACF Select Field(s) to the Quick and Bulk lists
|
489 |
+
foreach( self::$field_objects as $field_name => $field_object ) {
|
490 |
+
$custom_fields_item = ' <label class="inline-edit-acf_' . $field_name . '" style="clear:both"> ';
|
491 |
+
$custom_fields_item .= '<span class="title">' . $field_object['mla_field_label'] . '</span> ';
|
492 |
+
$custom_fields_item .= '<span class="input-text-wrap">' . "\n";
|
493 |
+
$custom_fields_item .= ' <input type="text" name="acf_' . $field_name . '" value="" />' . "\n";
|
494 |
+
$custom_fields_item .= ' </span> </label>' . "\n";
|
495 |
+
$item_values['custom_fields'] .= $custom_fields_item;
|
496 |
+
$item_values['bulk_custom_fields'] .= $custom_fields_item;
|
497 |
+
}
|
498 |
+
} // acf_select_enabled
|
499 |
+
|
500 |
+
return $item_values;
|
501 |
+
} // mla_list_table_inline_values
|
502 |
+
|
503 |
+
/**
|
504 |
+
* Holds the ISC custom field name to column "slug" mapping values
|
505 |
+
*
|
506 |
+
* @since 1.01
|
507 |
+
*
|
508 |
+
* @var array
|
509 |
+
*/
|
510 |
+
private static $field_slugs = array();
|
511 |
+
|
512 |
+
/**
|
513 |
+
* Caches the ACF field definitions
|
514 |
+
*
|
515 |
+
* @since 1.06
|
516 |
+
*
|
517 |
+
* @var array ( field_name => field_object_array )
|
518 |
+
*/
|
519 |
+
private static $field_objects = NULL;
|
520 |
+
|
521 |
+
/**
|
522 |
+
* Populate the select fields array
|
523 |
+
*
|
524 |
+
* @since 1.06
|
525 |
+
*/
|
526 |
+
private static function _build_select_field_objects() {
|
527 |
+
// Build a cache of ACF select field "objects" (actually arrays)
|
528 |
+
if ( self::$plugin_settings->get_plugin_option( 'acf_select_enabled' ) && is_null( self::$field_objects ) ) {
|
529 |
+
self::$field_objects = array();
|
530 |
+
$select_fields = explode( ',', self::$plugin_settings->get_plugin_option( 'acf_select_fields' ) );
|
531 |
+
$select_titles = explode( ',', self::$plugin_settings->get_plugin_option( 'acf_select_titles' ) );
|
532 |
+
|
533 |
+
if ( count( $select_fields ) ) {
|
534 |
+
foreach( $select_fields as $index => $field_name ) {
|
535 |
+
$field_object = acf_get_field( $field_name );
|
536 |
+
if ( false === $field_object ) {
|
537 |
+
continue;
|
538 |
+
}
|
539 |
+
|
540 |
+
if ( isset( $select_titles[ $index ] ) && !empty( $select_titles[ $index ] ) ) {
|
541 |
+
$field_object[ 'mla_field_label' ] = $select_titles[ $index ];
|
542 |
+
} else {
|
543 |
+
$field_object[ 'mla_field_label' ] = $field_object['label'];
|
544 |
+
}
|
545 |
+
|
546 |
+
self::$field_objects[ $field_name ] = $field_object;
|
547 |
+
}
|
548 |
+
}
|
549 |
+
} // acf_select_enabled
|
550 |
+
MLACore::mla_debug_add( __LINE__ . ' MLAACFExample::_build_select_field_objects field_objects = ' . var_export( self::$field_objects, true ), self::MLA_DEBUG_CATEGORY );
|
551 |
+
} // _build_select_field_objects
|
552 |
+
|
553 |
+
/**
|
554 |
+
* Holds the select column sort specification
|
555 |
+
*
|
556 |
+
* @since 2.98
|
557 |
+
*
|
558 |
+
* @var array
|
559 |
+
*/
|
560 |
+
private static $acf_sort_specification = array();
|
561 |
+
|
562 |
+
/**
|
563 |
+
* Filter the MLA_List_Table columns
|
564 |
+
*
|
565 |
+
* This MLA-specific filter gives you an opportunity to filter the list table columns.
|
566 |
+
*
|
567 |
+
* @since 1.00
|
568 |
+
*
|
569 |
+
* @param array $columns An array of columns.
|
570 |
+
* format: column_slug => Column Label
|
571 |
+
*
|
572 |
+
* @return array updated array of columns.
|
573 |
+
*/
|
574 |
+
public static function mla_list_table_get_columns( $columns ) {
|
575 |
+
if ( self::$plugin_settings->get_plugin_option( 'acf_checkbox_enabled' ) ) {
|
576 |
+
/*
|
577 |
+
* The Quick and Bulk Edit forms substitute arbitrary "slugs" for the
|
578 |
+
* custom field names. Remember them for table column and bulk update processing.
|
579 |
+
*/
|
580 |
+
if ( false !== $slug = array_search( self::$plugin_settings->get_plugin_option( 'acf_checkbox_fields' ), $columns ) ) {
|
581 |
+
self::$field_slugs[ self::$plugin_settings->get_plugin_option( 'acf_checkbox_fields' ) ] = $slug;
|
582 |
+
|
583 |
+
/*
|
584 |
+
* Change the column slug so we can provide our own friendly content.
|
585 |
+
* Replace the entry for the column we're capturing, preserving its place in the list
|
586 |
+
*/
|
587 |
+
$new_columns = array();
|
588 |
+
|
589 |
+
foreach ( $columns as $key => $value ) {
|
590 |
+
if ( $key === $slug ) {
|
591 |
+
$new_columns[ self::$plugin_settings->get_plugin_option( 'acf_checkbox_fields' ) ] = self::$plugin_settings->get_plugin_option( 'acf_checkbox_titles' );
|
592 |
+
} else {
|
593 |
+
$new_columns[ $key ] = $value;
|
594 |
+
}
|
595 |
+
} // foreach column
|
596 |
+
|
597 |
+
$columns = $new_columns;
|
598 |
+
}
|
599 |
+
} // acf_checkbox_enabled
|
600 |
+
|
601 |
+
// Add a column of our own for the repeater "where-used" information
|
602 |
+
if ( self::$plugin_settings->get_plugin_option( 'acf_repeater_enabled' ) ) {
|
603 |
+
$columns[ 'acf_' . self::$plugin_settings->get_plugin_option( 'acf_repeater_fields' ) ] = self::$plugin_settings->get_plugin_option( 'acf_repeater_titles' );
|
604 |
+
}
|
605 |
+
|
606 |
+
// Add columns of our own for the image "where-used" information
|
607 |
+
if ( self::$plugin_settings->get_plugin_option( 'acf_image_enabled' ) ) {
|
608 |
+
$image_fields = explode( ',', self::$plugin_settings->get_plugin_option( 'acf_image_fields' ) );
|
609 |
+
$image_titles = explode( ',', self::$plugin_settings->get_plugin_option( 'acf_image_titles' ) );
|
610 |
+
|
611 |
+
if ( count( $image_fields ) ) {
|
612 |
+
foreach( $image_fields as $index => $field_name ) {
|
613 |
+
$field_object = acf_get_field( $field_name );
|
614 |
+
if ( false === $field_object ) {
|
615 |
+
continue;
|
616 |
+
}
|
617 |
+
|
618 |
+
if ( isset( $image_titles[ $index ] ) && !empty( $image_titles[ $index ] ) ) {
|
619 |
+
$field_label = $image_titles[ $index ];
|
620 |
+
} else {
|
621 |
+
$field_label = $field_object['label'];
|
622 |
+
}
|
623 |
+
|
624 |
+
self::$field_slugs[ 'acf_' . $field_name ] = $field_name;
|
625 |
+
$columns[ 'acf_' . $field_name ] = $field_label;
|
626 |
+
}
|
627 |
+
}
|
628 |
+
} // acf_image_enabled
|
629 |
+
|
630 |
+
if ( self::$plugin_settings->get_plugin_option( 'acf_select_enabled' ) ) {
|
631 |
+
self::$acf_sort_specification = array();
|
632 |
+
foreach( self::$field_objects as $field_name => $field_object ) {
|
633 |
+
$acf_field_name = 'acf_' . $field_name;
|
634 |
+
// Add columns of our own for the select information
|
635 |
+
self::$field_slugs[ $acf_field_name ] = $field_name;
|
636 |
+
$columns[ $acf_field_name ] = $field_object['mla_field_label'];
|
637 |
+
|
638 |
+
// Reformat Media/Assistant submenu table sort specificaion for final terms filter
|
639 |
+
if ( isset( $_REQUEST['orderby'] ) && ( $field_name === $_REQUEST['orderby'] ) ) {
|
640 |
+
self::$acf_sort_specification[MLAQuery::MLA_ORDERBY_SUBQUERY] = true;
|
641 |
+
self::$acf_sort_specification['orderby'] = 'c_' . $field_name;
|
642 |
+
self::$acf_sort_specification['orderby_key'] = $field_name;
|
643 |
+
unset($_REQUEST['orderby']);
|
644 |
+
}
|
645 |
+
}
|
646 |
+
} // acf_select_enabled
|
647 |
+
|
648 |
+
return $columns;
|
649 |
+
} // mla_list_table_get_columns
|
650 |
+
|
651 |
+
/**
|
652 |
+
* Filter the MLA_List_Table hidden columns
|
653 |
+
*
|
654 |
+
* This MLA-specific filter gives you an opportunity to filter the hidden list table columns.
|
655 |
+
*
|
656 |
+
* @since 1.00
|
657 |
+
*
|
658 |
+
* @param array $hidden_columns An array of columns.
|
659 |
+
* format: index => column_slug
|
660 |
+
*
|
661 |
+
* @return array updated array of columns.
|
662 |
+
*/
|
663 |
+
public static function mla_list_table_get_hidden_columns( $hidden_columns ) {
|
664 |
+
if ( self::$plugin_settings->get_plugin_option( 'acf_checkbox_enabled' ) ) {
|
665 |
+
$field = self::$plugin_settings->get_plugin_option( 'acf_checkbox_fields' );
|
666 |
+
// Replace the MLA custom field slug with our own slug value
|
667 |
+
if ( isset( self::$field_slugs[ $field ] ) ) {
|
668 |
+
$index = array_search( self::$field_slugs[ $field ], $hidden_columns );
|
669 |
+
if ( false !== $index ) {
|
670 |
+
$hidden_columns[ $index ] = $field;
|
671 |
+
}
|
672 |
+
}
|
673 |
+
} // acf_checkbox_enabled
|
674 |
+
|
675 |
+
return $hidden_columns;
|
676 |
+
} // mla_list_table_get_hidden_columns
|
677 |
+
|
678 |
+
/**
|
679 |
+
* Filter the MLA_List_Table sortable columns
|
680 |
+
*
|
681 |
+
* This MLA-specific filter gives you an opportunity to filter the sortable list table
|
682 |
+
* columns; a good alternative to the 'manage_media_page_mla_menu_sortable_columns' filter.
|
683 |
+
*
|
684 |
+
* @since 1.00
|
685 |
+
*
|
686 |
+
* @param array $sortable_columns An array of columns.
|
687 |
+
* Format: 'column_slug' => 'orderby'
|
688 |
+
* or 'column_slug' => array( 'orderby', true )
|
689 |
+
*
|
690 |
+
* The second format will make the initial sorting order be descending.
|
691 |
+
*
|
692 |
+
* @return array updated array of columns.
|
693 |
+
*/
|
694 |
+
public static function mla_list_table_get_sortable_columns( $sortable_columns ) {
|
695 |
+
if ( self::$plugin_settings->get_plugin_option( 'acf_checkbox_enabled' ) ) {
|
696 |
+
$field = self::$plugin_settings->get_plugin_option( 'acf_checkbox_fields' );
|
697 |
+
// Replace the slug for the column we've captured, preserving its place in the list
|
698 |
+
if ( isset( self::$field_slugs[ $field ] ) ) {
|
699 |
+
$slug = self::$field_slugs[ $field ];
|
700 |
+
if ( isset( $sortable_columns[ $slug ] ) ) {
|
701 |
+
$new_columns = array();
|
702 |
+
|
703 |
+
foreach ( $sortable_columns as $key => $value ) {
|
704 |
+
if ( $key == $slug ) {
|
705 |
+
$new_columns[ $field ] = $value;
|
706 |
+
} else {
|
707 |
+
$new_columns[ $key ] = $value;
|
708 |
+
}
|
709 |
+
} // foreach column
|
710 |
+
|
711 |
+
$sortable_columns = $new_columns;
|
712 |
+
} // slug found
|
713 |
+
} // slug exists
|
714 |
+
} // acf_checkbox_enabled
|
715 |
+
|
716 |
+
// Add columns of our own for the select information
|
717 |
+
if ( self::$plugin_settings->get_plugin_option( 'acf_select_enabled' ) ) {
|
718 |
+
foreach( self::$field_objects as $field_name => $field_object ) {
|
719 |
+
$sortable_columns[ 'acf_' . $field_name ] = array( $field_name, true );
|
720 |
+
}
|
721 |
+
} // acf_select_enabled
|
722 |
+
|
723 |
+
return $sortable_columns;
|
724 |
+
} // mla_list_table_get_sortable_columns
|
725 |
+
|
726 |
+
/**
|
727 |
+
* Translate post_status 'future', 'pending', 'draft' and 'trash' to label
|
728 |
+
*
|
729 |
+
* @since 1.02
|
730 |
+
*
|
731 |
+
* @param string post_status
|
732 |
+
*
|
733 |
+
* @return string Status label or empty string
|
734 |
+
*/
|
735 |
+
protected static function _format_post_status( $post_status ) {
|
736 |
+
$flag = ',<br>';
|
737 |
+
switch ( $post_status ) {
|
738 |
+
case 'draft' :
|
739 |
+
$flag .= __('Draft');
|
740 |
+
break;
|
741 |
+
case 'future' :
|
742 |
+
$flag .= __('Scheduled');
|
743 |
+
break;
|
744 |
+
case 'pending' :
|
745 |
+
$flag .= _x('Pending', 'post state');
|
746 |
+
break;
|
747 |
+
case 'trash' :
|
748 |
+
$flag .= __('Trash');
|
749 |
+
break;
|
750 |
+
default:
|
751 |
+
$flag = '';
|
752 |
+
}
|
753 |
+
|
754 |
+
return $flag;
|
755 |
+
}
|
756 |
+
|
757 |
+
/**
|
758 |
+
* Supply a column value if no column-specific function has been defined
|
759 |
+
*
|
760 |
+
* Called when the MLA_List_Table can't find a value for a given column.
|
761 |
+
*
|
762 |
+
* @since 1.00
|
763 |
+
*
|
764 |
+
* @param string NULL, indicating no default content
|
765 |
+
* @param array A singular item (one full row's worth of data)
|
766 |
+
* @param array The name/slug of the column to be processed
|
767 |
+
* @return string Text or HTML to be placed inside the column
|
768 |
+
*/
|
769 |
+
public static function mla_list_table_column_default( $content, $item, $column_name ) {
|
770 |
+
|
771 |
+
if ( self::$plugin_settings->get_plugin_option( 'acf_select_enabled' ) ) {
|
772 |
+
if ( 0 === strpos( $column_name, 'acf_' ) ) {
|
773 |
+
$acf_name = substr( $column_name, 4 );
|
774 |
+
if ( isset( self::$field_objects[ $acf_name ] ) ) {
|
775 |
+
$acf_field_value = get_field( $acf_name, $item->ID, false );
|
776 |
+
if ( !empty( $acf_field_value ) ) {
|
777 |
+
// choices -> array( value => label )
|
778 |
+
$acf_choices = self::$field_objects[ $acf_name ]['choices'];
|
779 |
+
|
780 |
+
// Multi-select dropdowns are allowed, returning an array of choices
|
781 |
+
$inline_value = array();
|
782 |
+
foreach ( (array) $acf_field_value as $choice ) {
|
783 |
+
if ( isset( $acf_choices[ $choice ] ) ) {
|
784 |
+
$inline_value[] = $acf_choices[ $choice ];
|
785 |
+
} else {
|
786 |
+
$inline_value[] = $choice;
|
787 |
+
}
|
788 |
+
}
|
789 |
+
return implode( ',', $inline_value );
|
790 |
+
}
|
791 |
+
|
792 |
+
return '';
|
793 |
+
} // found field_object
|
794 |
+
} // found acf_ column
|
795 |
+
} // acf_select_enabled
|
796 |
+
|
797 |
+
if ( self::$plugin_settings->get_plugin_option( 'acf_checkbox_enabled' ) ) {
|
798 |
+
// Convert the ACF-compatible array to a comma-delimited list of "checked" checkbox values.
|
799 |
+
if ( self::$plugin_settings->get_plugin_option( 'acf_checkbox_fields' ) == $column_name ) {
|
800 |
+
$mla_name = 'mla_item_' . $column_name;
|
801 |
+
$values = isset( $item->$mla_name ) ? $item->$mla_name : '';
|
802 |
+
if ( empty( $values ) ) {
|
803 |
+
return '';
|
804 |
+
} elseif ( is_array( $values ) ) {
|
805 |
+
// return '[' . implode( '],[', $values ) . ']';
|
806 |
+
return implode( ',', $values );
|
807 |
+
}
|
808 |
+
|
809 |
+
return $values;
|
810 |
+
}
|
811 |
+
} // acf_checkbox_enabled
|
812 |
+
|
813 |
+
if ( self::$plugin_settings->get_plugin_option( 'acf_repeater_enabled' ) ) {
|
814 |
+
$field = self::$plugin_settings->get_plugin_option( 'acf_repeater_fields' );
|
815 |
+
// Retrieve and format the repeater field "where-used" information
|
816 |
+
if ( ( 'acf_' . $field ) == $column_name ) {
|
817 |
+
global $wpdb;
|
818 |
+
|
819 |
+
$where_clause = $field . '_%_' . self::$plugin_settings->get_plugin_option( 'acf_repeater_subfields' );
|
820 |
+
$references = $wpdb->get_results(
|
821 |
+
"
|
822 |
+
SELECT *
|
823 |
+
FROM {$wpdb->postmeta}
|
824 |
+
WHERE meta_key LIKE '{$where_clause}' AND meta_value = {$item->ID}
|
825 |
+
"
|
826 |
+
);
|
827 |
+
|
828 |
+
$content = '';
|
829 |
+
if ( ! empty( $references ) ) {
|
830 |
+
$parents = array();
|
831 |
+
foreach ( $references as $reference ) {
|
832 |
+
// key on post_id to remove duplicates
|
833 |
+
$parents[ $reference->post_id ] = $reference->post_id;
|
834 |
+
}
|
835 |
+
|
836 |
+
$parents = implode( ',', $parents );
|
837 |
+
$references = $wpdb->get_results(
|
838 |
+
"
|
839 |
+
SELECT ID, post_type, post_status, post_title
|
840 |
+
FROM {$wpdb->posts}
|
841 |
+
WHERE ( post_type <> 'revision' ) AND ( ID IN ({$parents}) )
|
842 |
+
"
|
843 |
+
);
|
844 |
+
|
845 |
+
foreach ( $references as $reference ) {
|
846 |
+
$status = self::_format_post_status( $reference->post_status );
|
847 |
+
|
848 |
+
if ( $reference->ID == $item->post_parent ) {
|
849 |
+
$parent = ',<br>' . __( 'PARENT', 'media-library-assistant' );
|
850 |
+
} else {
|
851 |
+
$parent = '';
|
852 |
+
}
|
853 |
+
|
854 |
+
$content .= sprintf( '<a href="%1$s" title="' . __( 'Edit', 'media-library-assistant' ) . ' “%2$s”">%2$s</a> (%3$s %4$s%5$s%6$s), ',
|
855 |
+
/*%1$s*/ esc_url( add_query_arg( array('post' => $reference->ID, 'action' => 'edit'), 'post.php' ) ),
|
856 |
+
/*%2$s*/ esc_attr( $reference->post_title ),
|
857 |
+
/*%3$s*/ esc_attr( $reference->post_type ),
|
858 |
+
/*%4$s*/ $reference->ID,
|
859 |
+
/*%5$s*/ $status,
|
860 |
+
/*%6$s*/ $parent ) . "<br>\r\n";
|
861 |
+
} // foreach $reference
|
862 |
+
} // found $references
|
863 |
+
|
864 |
+
return $content;
|
865 |
+
} // found repeater column
|
866 |
+
} // acf_repeater_enabled
|
867 |
+
|
868 |
+
if ( self::$plugin_settings->get_plugin_option( 'acf_image_enabled' ) ) {
|
869 |
+
// Retrieve and format the image field(s) "where-used" information
|
870 |
+
if ( array_key_exists( $column_name, self::$field_slugs ) ) {
|
871 |
+
$content = '';
|
872 |
+
|
873 |
+
$posts = self::_find_field_references( self::$field_slugs[ $column_name ], $item->ID );
|
874 |
+
foreach ( $posts as $post_id => $post ) {
|
875 |
+
$reference = self::$field_parents[ $post ];
|
876 |
+
$status = self::_format_post_status( $reference->post_status );
|
877 |
+
|
878 |
+
if ( $post_id == $item->post_parent ) {
|
879 |
+
$parent = ',<br>' . __( 'PARENT', 'media-library-assistant' );
|
880 |
+
} else {
|
881 |
+
$parent = '';
|
882 |
+
}
|
883 |
+
|
884 |
+
$content .= sprintf( '<a href="%1$s" title="' . __( 'Edit', 'media-library-assistant' ) . ' “%2$s”">%2$s</a> (%3$s %4$s%5$s%6$s), ',
|
885 |
+
/*%1$s*/ esc_url( add_query_arg( array('post' => $post_id, 'action' => 'edit'), 'post.php' ) ),
|
886 |
+
/*%2$s*/ esc_attr( $reference->post_title ),
|
887 |
+
/*%3$s*/ esc_attr( $reference->post_type ),
|
888 |
+
/*%4$s*/ $post_id,
|
889 |
+
/*%5$s*/ $status,
|
890 |
+
/*%6$s*/ $parent ) . "<br>\r\n";
|
891 |
+
} // foreach $reference
|
892 |
+
|
893 |
+
return $content;
|
894 |
+
} // found image column
|
895 |
+
} // acf_image_enabled
|
896 |
+
|
897 |
+
return $content;
|
898 |
+
} // mla_list_table_column_default
|
899 |
+
|
900 |
+
/**
|
901 |
+
* Filter the data for inline (Quick and Bulk) editing
|
902 |
+
*
|
903 |
+
* This filter gives you an opportunity to filter the data passed to the
|
904 |
+
* JavaScript functions for Quick and Bulk editing.
|
905 |
+
*
|
906 |
+
* @since 1.00
|
907 |
+
*
|
908 |
+
* @param string $inline_data The HTML markup for inline data.
|
909 |
+
* @param object $item The current Media Library item.
|
910 |
+
*
|
911 |
+
* @return string updated HTML markup for inline data.
|
912 |
+
*/
|
913 |
+
public static function mla_list_table_build_inline_data( $inline_data, $item ) {
|
914 |
+
|
915 |
+
if ( self::$plugin_settings->get_plugin_option( 'acf_select_enabled' ) ) {
|
916 |
+
foreach ( self::$field_objects as $acf_name => $acf_field_object ) {
|
917 |
+
$inline_value = '';
|
918 |
+
$acf_field_value = get_field( $acf_name, $item->ID, false );
|
919 |
+
//error_log( __LINE__ . ' mla_list_table_build_inline_data acf_field_object = ' . var_export( $acf_field_object, true ), 0 );
|
920 |
+
//error_log( __LINE__ . ' mla_list_table_build_inline_data acf_field_value = ' . var_export( $acf_field_value, true ), 0 );
|
921 |
+
|
922 |
+
if ( !empty( $acf_field_value ) ) {
|
923 |
+
// choices -> array( value => label )
|
924 |
+
$acf_choices = $acf_field_object['choices'];
|
925 |
+
|
926 |
+
// Multi-select dropdowns are allowed, returning an array of choices
|
927 |
+
$inline_value = array();
|
928 |
+
foreach ( (array) $acf_field_value as $choice ) {
|
929 |
+
if ( isset( $acf_choices[ $choice ] ) ) {
|
930 |
+
$inline_value[] = $acf_choices[ $choice ];
|
931 |
+
} else {
|
932 |
+
$inline_value[] = $choice;
|
933 |
+
}
|
934 |
+
}
|
935 |
+
$inline_value = implode( ',', $inline_value );
|
936 |
+
}
|
937 |
+
|
938 |
+
$inline_data .= ' <div class="acf_' . $acf_name . '">' . esc_html( $inline_value ) . "</div>\r\n";
|
939 |
+
} // foreach acf field
|
940 |
+
} // acf_select_enabled
|
941 |
+
|
942 |
+
if ( self::$plugin_settings->get_plugin_option( 'acf_checkbox_enabled' ) ) {
|
943 |
+
$acf_checkbox_field = self::$plugin_settings->get_plugin_option( 'acf_checkbox_fields' );
|
944 |
+
// See if the field is present
|
945 |
+
if ( ! isset( self::$field_slugs[ $acf_checkbox_field ] ) ) {
|
946 |
+
return $inline_data;
|
947 |
+
}
|
948 |
+
|
949 |
+
// Convert the ACF-compatible array to a comma-delimited list of "checked" checkbox values.
|
950 |
+
$match_count = preg_match_all( '/\<div class="' . self::$field_slugs[ $acf_checkbox_field ] . '"\>(.*)\<\/div\>/', $inline_data, $matches, PREG_OFFSET_CAPTURE );
|
951 |
+
if ( ( $match_count == false ) || ( $match_count == 0 ) ) {
|
952 |
+
return $inline_data;
|
953 |
+
}
|
954 |
+
|
955 |
+
$mla_checkbox_field = 'mla_item_' . $acf_checkbox_field;
|
956 |
+
if ( isset( $item->$mla_checkbox_field ) ) {
|
957 |
+
$value = $item->$mla_checkbox_field;
|
958 |
+
if ( is_array( $value ) ) {
|
959 |
+
$head = substr( $inline_data, 0, $matches[1][0][1] );
|
960 |
+
$value = esc_html( implode( ',', $value ) );
|
961 |
+
$tail = substr( $inline_data, ( $matches[1][0][1] + strlen( $matches[1][0][0] ) ) );
|
962 |
+
$inline_data = $head . $value . $tail;
|
963 |
+
}
|
964 |
+
}
|
965 |
+
} // acf_checkbox_enabled
|
966 |
+
|
967 |
+
MLACore::mla_debug_add( __LINE__ . ' MLAACFExample::mla_list_table_build_inline_data inline_data = ' . var_export( $inline_data, true ), self::MLA_DEBUG_CATEGORY );
|
968 |
+
return $inline_data;
|
969 |
+
} // mla_list_table_build_inline_data
|
970 |
+
|
971 |
+
/**
|
972 |
+
* MLA List Table Query Final Terms Filter
|
973 |
+
*
|
974 |
+
* Gives you an opportunity to modify the query just before it is executed.
|
975 |
+
*
|
976 |
+
* @since 1.06
|
977 |
+
*
|
978 |
+
* @param array WP_Query parameters
|
979 |
+
*/
|
980 |
+
public static function mla_list_table_query_final_terms( $request ) {
|
981 |
+
|
982 |
+
// Set in self::mla_list_table_get_columns()
|
983 |
+
if ( !empty( self::$acf_sort_specification ) ) {
|
984 |
+
MLAQuery::$query_parameters = array_merge( MLAQuery::$query_parameters, self::$acf_sort_specification );
|
985 |
+
unset( $request['orderby'] );
|
986 |
+
unset( $request['order'] );
|
987 |
+
}
|
988 |
+
|
989 |
+
return $request;
|
990 |
+
} // mla_list_table_query_final_terms
|
991 |
+
|
992 |
+
/**
|
993 |
+
* MLA Expand Custom Prefix Filter
|
994 |
+
*
|
995 |
+
* Gives you an opportunity to generate your custom data value when a parameter's prefix value is not recognized.
|
996 |
+
*
|
997 |
+
* @since 1.00
|
998 |
+
*
|
999 |
+
* @param string NULL, indicating that by default, no custom value is available
|
1000 |
+
* @param string the data-source name
|
1001 |
+
* @param array data-source components; prefix (empty), value, option, format and args (if present)
|
1002 |
+
* @param array values from the query, if any, e.g. shortcode parameters
|
1003 |
+
* @param array item-level markup template values, if any
|
1004 |
+
* @param integer attachment ID for attachment-specific values
|
1005 |
+
* @param boolean for option 'multi', retain existing values
|
1006 |
+
* @param string default option value
|
1007 |
+
*/
|
1008 |
+
public static function mla_expand_custom_prefix( $custom_value, $key, $value, $query, $markup_values, $post_id, $keep_existing, $default_option ) {
|
1009 |
+
if ( 'acf' !== strtolower( $value['prefix'] ) ) {
|
1010 |
+
return $custom_value;
|
1011 |
+
}
|
1012 |
+
|
1013 |
+
// Parse the original text to separate out the qualifier
|
1014 |
+
$value = MLAData::mla_parse_substitution_parameter( $key, $default_option );
|
1015 |
+
$field = $value['value'];
|
1016 |
+
$qualifier = $value['qualifier'];
|
1017 |
+
//error_log( __LINE__ . " MLAACFExample::mla_expand_custom_prefix( {$key}, {$post_id}, {$keep_existing}, {$default_option} ) value = " . var_export( $value, true ), 0 );
|
1018 |
+
//error_log( __LINE__ . " MLAACFExample::mla_expand_custom_prefix( {$key}, {$post_id} ) query = " . var_export( $query, true ), 0 );
|
1019 |
+
//error_log( __LINE__ . " MLAACFExample::mla_expand_custom_prefix( {$key}, {$post_id} ) markup_values = " . var_export( $markup_values, true ), 0 );
|
1020 |
+
|
1021 |
+
// Set debug mode
|
1022 |
+
$debug_active = isset( $query['mla_debug'] ) && ( 'false' !== trim( strtolower( $query['mla_debug'] ) ) );
|
1023 |
+
if ( $debug_active ) {
|
1024 |
+
$old_mode = MLACore::mla_debug_mode( 'log' );
|
1025 |
+
MLACore::mla_debug_add( __LINE__ . " MLAACFExample::mla_expand_custom_prefix( {$key}, {$post_id}, {$keep_existing}, {$default_option} ) \$_REQUEST = " . var_export( $_REQUEST, true ) );
|
1026 |
+
MLACore::mla_debug_add( __LINE__ . " MLAACFExample::mla_expand_custom_prefix() \$value = " . var_export( $value, true ) );
|
1027 |
+
MLACore::mla_debug_add( __LINE__ . " MLAACFExample::mla_expand_custom_prefix() \$query = " . var_export( $query, true ) );
|
1028 |
+
MLACore::mla_debug_add( __LINE__ . " MLAACFExample::mla_expand_custom_prefix() \$markup_values = " . var_export( $markup_values, true ) );
|
1029 |
+
}
|
1030 |
+
|
1031 |
+
if ( self::$plugin_settings->get_plugin_option( 'acf_image_enabled' ) ) {
|
1032 |
+
$posts = self::_find_field_references( $field, $post_id );
|
1033 |
+
//error_log( __LINE__ . " MLAACFExample::mla_expand_custom_prefix( {$key}, {$post_id} ) posts = " . var_export( $posts, true ), 0 );
|
1034 |
+
if ( !empty( $posts ) ) {
|
1035 |
+
switch ( $qualifier ) {
|
1036 |
+
case 'count':
|
1037 |
+
$custom_value = count( $posts );
|
1038 |
+
break;
|
1039 |
+
case 'present':
|
1040 |
+
$custom_value = ( count( $posts ) ) ? 1 : 0;
|
1041 |
+
break;
|
1042 |
+
default:
|
1043 |
+
$low_bound = absint( $qualifier );
|
1044 |
+
if ( $low_bound ) {
|
1045 |
+
$custom_value = count( $posts );
|
1046 |
+
if ( $low_bound > $custom_value ) {
|
1047 |
+
$custom_value = NULL;
|
1048 |
+
}
|
1049 |
+
|
1050 |
+
break;
|
1051 |
+
}
|
1052 |
+
|
1053 |
+
$custom_value = '';
|
1054 |
+
$item = get_post( $post_id );
|
1055 |
+
|
1056 |
+
foreach ( $posts as $post_id => $post ) {
|
1057 |
+
$reference = self::$field_parents[ $post ];
|
1058 |
+
$status = self::_format_post_status( $reference->post_status );
|
1059 |
+
|
1060 |
+
if ( $post_id == $item->post_parent ) {
|
1061 |
+
$parent = ', ' . __( 'PARENT', 'media-library-assistant' );
|
1062 |
+
} else {
|
1063 |
+
$parent = '';
|
1064 |
+
}
|
1065 |
+
|
1066 |
+
$custom_value .= sprintf( '%1$s (%2$s %3$s%4$s%5$s), ',
|
1067 |
+
/*%1$s*/ esc_attr( $reference->post_title ),
|
1068 |
+
/*%2$s*/ esc_attr( $reference->post_type ),
|
1069 |
+
/*%3$s*/ $post_id,
|
1070 |
+
/*%4$s*/ $status,
|
1071 |
+
/*%5$s*/ $parent );
|
1072 |
+
} // foreach $reference
|
1073 |
+
}
|
1074 |
+
}
|
1075 |
+
} // acf_image_enabled
|
1076 |
+
|
1077 |
+
if ( self::$plugin_settings->get_plugin_option( 'acf_select_enabled' ) ) {
|
1078 |
+
// Build a cache of ACF select field "objects" (actually arrays)
|
1079 |
+
self::_build_select_field_objects();
|
1080 |
+
|
1081 |
+
if ( isset( self::$field_objects[ $field ] ) ) {
|
1082 |
+
$acf_field_object = self::$field_objects[ $field ];
|
1083 |
+
$acf_field_value = get_field( $field, $post_id, false );
|
1084 |
+
|
1085 |
+
if ( empty( $acf_field_value ) ) {
|
1086 |
+
$acf_field_value = '';
|
1087 |
+
}
|
1088 |
+
|
1089 |
+
// choices -> array( value => label )
|
1090 |
+
$acf_choices = $acf_field_object['choices'];
|
1091 |
+
|
1092 |
+
switch ( $qualifier ) {
|
1093 |
+
case 'choices':
|
1094 |
+
$custom_value = $acf_field_object['choices'];
|
1095 |
+
break;
|
1096 |
+
case 'value':
|
1097 |
+
$custom_value = $acf_field_value;
|
1098 |
+
break;
|
1099 |
+
case 'label':
|
1100 |
+
if ( isset( $acf_choices[ $acf_field_value ] ) ) {
|
1101 |
+
$custom_value = $acf_choices[ $acf_field_value ];
|
1102 |
+
} else {
|
1103 |
+
$custom_value = $acf_field_value;
|
1104 |
+
}
|
1105 |
+
break;
|
1106 |
+
case 'mla_field_label':
|
1107 |
+
$custom_value = $acf_field_object['mla_field_label'];
|
1108 |
+
break;
|
1109 |
+
}
|
1110 |
+
|
1111 |
+
$custom_value = MLAData::mla_apply_field_level_format( $custom_value, $value );
|
1112 |
+
} // found select field
|
1113 |
+
} // acf_select_enabled
|
1114 |
+
|
1115 |
+
MLACore::mla_debug_add( __LINE__ . " MLAACFExample::mla_expand_custom_prefix( {$key}, {$post_id} ) custom_value = " . var_export( $custom_value, true ) );
|
1116 |
+
return $custom_value;
|
1117 |
+
} // mla_expand_custom_prefix
|
1118 |
+
|
1119 |
+
/**
|
1120 |
+
* Cached values for the ACF Image fields
|
1121 |
+
*
|
1122 |
+
* @since 1.05
|
1123 |
+
*
|
1124 |
+
* @var array( field_slug => array( item_ID => array( reference_ID => reference_ID ) ) )
|
1125 |
+
*/
|
1126 |
+
private static $field_instances = array();
|
1127 |
+
|
1128 |
+
/**
|
1129 |
+
* Cached "parent post" values for the ACF Image fields
|
1130 |
+
*
|
1131 |
+
* @since 1.05
|
1132 |
+
*
|
1133 |
+
* @var array( post_ID => array( post_type, post_status, post_title ) )
|
1134 |
+
*/
|
1135 |
+
private static $field_parents = array();
|
1136 |
+
|
1137 |
+
/**
|
1138 |
+
* Find references to Media Library items in ACF Image fields
|
1139 |
+
*
|
1140 |
+
* @since 1.00
|
1141 |
+
*
|
1142 |
+
* @param string $field_slug ACF Image variable slug.
|
1143 |
+
* @param integer $item_ID Media Library item ID.
|
1144 |
+
*
|
1145 |
+
* @return array post_id values referencing the item.
|
1146 |
+
*/
|
1147 |
+
private static function _find_field_references( $field_slug, $item_ID ) {
|
1148 |
+
global $wpdb;
|
1149 |
+
|
1150 |
+
if ( !isset( self::$field_instances[ $field_slug ] ) ) {
|
1151 |
+
$references = $wpdb->get_results(
|
1152 |
+
"
|
1153 |
+
SELECT post_id, meta_value
|
1154 |
+
FROM {$wpdb->postmeta}
|
1155 |
+
WHERE meta_key LIKE '{$field_slug}'
|
1156 |
+
"
|
1157 |
+
);
|
1158 |
+
|
1159 |
+
$post_ids = array();
|
1160 |
+
foreach ( $references as $reference ) {
|
1161 |
+
$post_id = (int) $reference->post_id;
|
1162 |
+
$meta_value = (int) $reference->meta_value;
|
1163 |
+
self::$field_instances[ $field_slug ][ $meta_value ][ $post_id ] = $post_id;
|
1164 |
+
$post_ids[ $post_id ] = $post_id;
|
1165 |
+
}
|
1166 |
+
|
1167 |
+
// Find the post information, excluding revisions
|
1168 |
+
$parents = implode( ',', $post_ids );
|
1169 |
+
$references = $wpdb->get_results(
|
1170 |
+
"
|
1171 |
+
SELECT ID, post_type, post_status, post_title
|
1172 |
+
FROM {$wpdb->posts}
|
1173 |
+
WHERE ( post_type <> 'revision' ) AND ( ID IN ({$parents}) )
|
1174 |
+
"
|
1175 |
+
);
|
1176 |
+
|
1177 |
+
foreach ( $references as $reference ) {
|
1178 |
+
$post_id = (int) $reference->ID;
|
1179 |
+
unset( $reference->ID );
|
1180 |
+
self::$field_parents[ $post_id ] = $reference;
|
1181 |
+
}
|
1182 |
+
MLACore::mla_debug_add( __LINE__ . " MLAACFExample::_find_field_references( {$field_slug} ) field_parents = " . var_export( self::$field_parents, true ) );
|
1183 |
+
|
1184 |
+
// Remove the revisions from the field references
|
1185 |
+
foreach ( self::$field_instances[ $field_slug ] as $meta_value => $post_ids ) {
|
1186 |
+
$references = array();
|
1187 |
+
foreach ( $post_ids as $post_id ) {
|
1188 |
+
if ( array_key_exists( $post_id, self::$field_parents ) ) {
|
1189 |
+
$references[ $post_id ] = $post_id;
|
1190 |
+
}
|
1191 |
+
}
|
1192 |
+
|
1193 |
+
if ( count( $references ) ) {
|
1194 |
+
self::$field_instances[ $field_slug ][ $meta_value ] = $references;
|
1195 |
+
} else {
|
1196 |
+
unset( self::$field_instances[ $field_slug ][ $meta_value ] );
|
1197 |
+
}
|
1198 |
+
}
|
1199 |
+
MLACore::mla_debug_add( __LINE__ . " MLAACFExample::_find_field_references( {$field_slug} ) field_instances = " . var_export( self::$field_instances, true ) );
|
1200 |
+
} // !isset( self::$field_instances[ $field_slug ] )
|
1201 |
+
|
1202 |
+
if ( isset( self::$field_instances[ $field_slug ][ $item_ID ] ) ) {
|
1203 |
+
return self::$field_instances[ $field_slug ][ $item_ID ];
|
1204 |
+
}
|
1205 |
+
|
1206 |
+
return array();
|
1207 |
+
} // _find_field_references
|
1208 |
+
} // Class MLAACFExample
|
1209 |
+
|
1210 |
+
// Install the filters at an early opportunity
|
1211 |
+
add_action('init', 'MLAACFExample::initialize');
|
1212 |
+
?>
|
examples/plugins/mla-csv-data-source-example/class-mla-example-plugin-settings-101.php
CHANGED
@@ -516,6 +516,16 @@ class MLAExamplePluginSettings101 {
|
|
516 |
return $this->current_settings[ $name ];
|
517 |
}
|
518 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
519 |
return NULL;
|
520 |
}
|
521 |
|
516 |
return $this->current_settings[ $name ];
|
517 |
}
|
518 |
|
519 |
+
// Special names for debug logging
|
520 |
+
switch ( $name ) {
|
521 |
+
case 'request_settings':
|
522 |
+
return $this->request_settings;
|
523 |
+
case 'current_settings':
|
524 |
+
return $this->current_settings;
|
525 |
+
case 'default_settings':
|
526 |
+
return $this->default_settings;
|
527 |
+
}
|
528 |
+
|
529 |
return NULL;
|
530 |
}
|
531 |
|
examples/plugins/mla-custom-field-search-example/admin-settings-page.tpl
CHANGED
@@ -239,7 +239,7 @@ A custom field query has four parts:
|
|
239 |
</p>
|
240 |
<ol>
|
241 |
<li>A prefix, "custom:" by default, or whatever you set on the General tab.</li>
|
242 |
-
<li>A comma-separated list of one or more custom field names.</li>
|
243 |
<li>An equals sign ("="), to divide the field names from the values</li>
|
244 |
<li>A comma-separated list of one or more values</li>
|
245 |
</ol>
|
@@ -250,6 +250,12 @@ So, for example, if you have a custom field named "Kingdom" with values of "Anim
|
|
250 |
<li><code>custom:Kingdom=Animal</code></li>
|
251 |
</ul>
|
252 |
<p>
|
|
|
|
|
|
|
|
|
|
|
|
|
253 |
It is important to note that custom field values are somewhat different from the keywords and phrases used in the standard Search Media searches. There is no "and/or" option or matching on one of the words you enter. If you enter "this example", the search will not match "this" or "example".
|
254 |
|
255 |
<a name="multiple_values"></a>
|
@@ -273,13 +279,13 @@ If you want to search for more than one value, simply separate each value you wa
|
|
273 |
</p>
|
274 |
<h3>Searching Partial Values; Wildcards</h3>
|
275 |
<p>Wildcard specifications are also supported; for example:
|
|
|
276 |
<ul class="mla-doc-toc-list">
|
277 |
<li><code>custom:Kingdom=*al</code> to match anything ending in "al", e.g., "Animal" and "Mineral"</li>
|
278 |
<li><code>custom:Kingdom=*get*</code> to match "Vegetable".</li>
|
279 |
<li><code>custom:Headline=*this*,*example*</code> will match values containing "this" or "example".</li>
|
280 |
<li>As explained below, a value of <code>custom:Kingdom=*</code> will match any non-NULL value for a custom field.</li>
|
281 |
</ul>
|
282 |
-
</p>
|
283 |
<p>
|
284 |
|
285 |
<a name="multiple_fields"></a>
|
@@ -288,6 +294,7 @@ If you want to search for more than one value, simply separate each value you wa
|
|
288 |
<a href="#backtotop">Go to Top</a>
|
289 |
</p>
|
290 |
<h3>Searching in Multiple Fields or All Fields</h3>
|
|
|
291 |
If you want to search for the same value(s) in more than one custom field, simply separate each field name you want to search in by a comma, such as:
|
292 |
</p>
|
293 |
<ul class="mla-doc-toc-list">
|
@@ -295,6 +302,13 @@ If you want to search for the same value(s) in more than one custom field, simpl
|
|
295 |
<li><code>custom:Artist,Patron=smith,jones</code></li>
|
296 |
</ul>
|
297 |
<p>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
298 |
|
299 |
<a name="non_null_searches"></a>
|
300 |
</p>
|
239 |
</p>
|
240 |
<ol>
|
241 |
<li>A prefix, "custom:" by default, or whatever you set on the General tab.</li>
|
242 |
+
<li>A comma-separated list of one or more custom field names. If you omit this the "Default Field(s): set on the General tab will be substituted.</li>
|
243 |
<li>An equals sign ("="), to divide the field names from the values</li>
|
244 |
<li>A comma-separated list of one or more values</li>
|
245 |
</ol>
|
250 |
<li><code>custom:Kingdom=Animal</code></li>
|
251 |
</ul>
|
252 |
<p>
|
253 |
+
If you have set "Kingdom" as the Default Field you can compose a search like:
|
254 |
+
</p>
|
255 |
+
<ul class="mla-doc-toc-list">
|
256 |
+
<li><code>custom:=Animal</code></li>
|
257 |
+
</ul>
|
258 |
+
<p>
|
259 |
It is important to note that custom field values are somewhat different from the keywords and phrases used in the standard Search Media searches. There is no "and/or" option or matching on one of the words you enter. If you enter "this example", the search will not match "this" or "example".
|
260 |
|
261 |
<a name="multiple_values"></a>
|
279 |
</p>
|
280 |
<h3>Searching Partial Values; Wildcards</h3>
|
281 |
<p>Wildcard specifications are also supported; for example:
|
282 |
+
</p>
|
283 |
<ul class="mla-doc-toc-list">
|
284 |
<li><code>custom:Kingdom=*al</code> to match anything ending in "al", e.g., "Animal" and "Mineral"</li>
|
285 |
<li><code>custom:Kingdom=*get*</code> to match "Vegetable".</li>
|
286 |
<li><code>custom:Headline=*this*,*example*</code> will match values containing "this" or "example".</li>
|
287 |
<li>As explained below, a value of <code>custom:Kingdom=*</code> will match any non-NULL value for a custom field.</li>
|
288 |
</ul>
|
|
|
289 |
<p>
|
290 |
|
291 |
<a name="multiple_fields"></a>
|
294 |
<a href="#backtotop">Go to Top</a>
|
295 |
</p>
|
296 |
<h3>Searching in Multiple Fields or All Fields</h3>
|
297 |
+
<p>
|
298 |
If you want to search for the same value(s) in more than one custom field, simply separate each field name you want to search in by a comma, such as:
|
299 |
</p>
|
300 |
<ul class="mla-doc-toc-list">
|
302 |
<li><code>custom:Artist,Patron=smith,jones</code></li>
|
303 |
</ul>
|
304 |
<p>
|
305 |
+
If you want to search for the same value(s) in all of your custom field, check the "Enable All Fields name substitution" box and enter your "All Fields Name" (default "*"), such as:
|
306 |
+
</p>
|
307 |
+
<ul class="mla-doc-toc-list">
|
308 |
+
<li><code>custom:*=smith</code></li>
|
309 |
+
<li><code>custom:*=smith,jones</code></li>
|
310 |
+
</ul>
|
311 |
+
<p>
|
312 |
|
313 |
<a name="non_null_searches"></a>
|
314 |
</p>
|
examples/plugins/mla-custom-field-search-example/class-mla-example-plugin-settings-101.php
ADDED
@@ -0,0 +1,569 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* Provides option management and Settings/ General and Documentation submenu pages
|
4 |
+
*
|
5 |
+
* This file might be shared among multiple example plugins, so load it with:
|
6 |
+
*
|
7 |
+
* if ( ! class_exists( 'MLAExamplePluginSettings101' ) ) {
|
8 |
+
* require_once( pathinfo( __FILE__, PATHINFO_DIRNAME ) . '/class-mla-example-plugin-settings-101.php' );
|
9 |
+
* }
|
10 |
+
*
|
11 |
+
* @package Media Library Assistant
|
12 |
+
* @version 1.01
|
13 |
+
*/
|
14 |
+
|
15 |
+
/**
|
16 |
+
* Class MLA Example Settings Menu adds Settings/ General and Documentation submenu pages to an example plugin
|
17 |
+
*
|
18 |
+
* @package MLA Example Settings Menu
|
19 |
+
* @since 1.00
|
20 |
+
*/
|
21 |
+
class MLAExamplePluginSettings101 {
|
22 |
+
/**
|
23 |
+
* Default values for the __construct function
|
24 |
+
*
|
25 |
+
* @since 1.00
|
26 |
+
*
|
27 |
+
* @var array
|
28 |
+
*/
|
29 |
+
private static $default_arguments = array(
|
30 |
+
'slug_prefix' => 'example-plugin',
|
31 |
+
'plugin_title' => 'The Example Plugin',
|
32 |
+
'menu_title' => 'Example Plugin',
|
33 |
+
'plugin_file_name_only' => 'the-example-plugin',
|
34 |
+
'plugin_version' => '1.00',
|
35 |
+
'template_file' => 'absolute path to the template file', // e.g., dirname( __FILE__ ) . '/admin-settings-page.tpl'
|
36 |
+
'options' => array( 'slug' => array( 'type' => 'text|checkbox', 'default' => 'text|boolean' ) ),
|
37 |
+
'general_tab_values' => array(), // additional page_values for 'page-level-options' template
|
38 |
+
'documentation_tab_values' => array(), // page_values for 'documentation-tab' template
|
39 |
+
);
|
40 |
+
|
41 |
+
/**
|
42 |
+
* Current values for this object instance
|
43 |
+
*
|
44 |
+
* @since 1.00
|
45 |
+
*
|
46 |
+
* @var array
|
47 |
+
*/
|
48 |
+
private $current_arguments = array();
|
49 |
+
|
50 |
+
/**
|
51 |
+
* This function sets option definitions and installs filters.
|
52 |
+
*
|
53 |
+
* @since 1.00
|
54 |
+
*
|
55 |
+
* @param array $attr Option definitions and settings
|
56 |
+
*/
|
57 |
+
public function __construct( $attr ) {
|
58 |
+
//error_log( __LINE__ . " MLAExamplePluginSettings101::__construct() _REQUEST = " . var_export( $_REQUEST, true ), 0 );
|
59 |
+
// Make sure $attr is an array, even if it's empty
|
60 |
+
if ( empty( $attr ) ) {
|
61 |
+
$attr = array();
|
62 |
+
} elseif ( is_string( $attr ) ) {
|
63 |
+
$attr = shortcode_parse_atts( $attr );
|
64 |
+
}
|
65 |
+
|
66 |
+
// Accept only the attributes we need and supply defaults
|
67 |
+
$this->current_arguments = shortcode_atts( self::$default_arguments, $attr );
|
68 |
+
|
69 |
+
// Compile the default settings
|
70 |
+
foreach ( $this->current_arguments['options'] as $slug => $option ) {
|
71 |
+
$this->default_settings[ $slug ] = $option['default'];
|
72 |
+
}
|
73 |
+
|
74 |
+
if ( is_admin() ) {
|
75 |
+
// Record new settings if they're being updated
|
76 |
+
$this->request_settings = array();
|
77 |
+
if ( !empty( $_REQUEST[ $this->current_arguments['slug_prefix'] . '_options_save'] ) ) {
|
78 |
+
if ( isset( $_REQUEST[ $this->current_arguments['slug_prefix'] . '_options' ] ) ) {
|
79 |
+
$this->request_settings = wp_unslash( $_REQUEST[ $this->current_arguments['slug_prefix'] . '_options' ] );
|
80 |
+
}
|
81 |
+
} elseif ( !empty( $_REQUEST[ $this->current_arguments['slug_prefix'] . '_options_reset'] ) ) {
|
82 |
+
$this->request_settings = $this->default_settings;
|
83 |
+
}
|
84 |
+
//error_log( __LINE__ . ' MLAExamplePluginSettings101::__construct request_settings = ' . var_export( $this->request_settings, true ), 0 );
|
85 |
+
//error_log( __LINE__ . ' MLAExamplePluginSettings101::__construct mla_hex_dump( exports ) = ' . var_export( MLAData::mla_hex_dump( $this->request_settings['exports'] ), true ), 0 );
|
86 |
+
// Add submenu page in the "Settings" section
|
87 |
+
add_action( 'admin_menu', array( $this, 'admin_menu' ) );
|
88 |
+
}
|
89 |
+
}
|
90 |
+
|
91 |
+
/**
|
92 |
+
* Add submenu page in the "Settings" section
|
93 |
+
*
|
94 |
+
* @since 1.00
|
95 |
+
*/
|
96 |
+
public function admin_menu() {
|
97 |
+
/*
|
98 |
+
* We need a tab-specific page ID to manage the screen options on the General tab.
|
99 |
+
* Use the URL suffix, if present. If the URL doesn't have a tab suffix, use '-general'.
|
100 |
+
* This hack is required to pass the WordPress "referer" validation.
|
101 |
+
*/
|
102 |
+
if ( isset( $_REQUEST['page'] ) && is_string( $_REQUEST['page'] ) && ( $this->current_arguments['slug_prefix'] . '-settings-' == substr( $_REQUEST['page'], 0, strlen( $this->current_arguments['slug_prefix'] . '-settings-' ) ) ) ) {
|
103 |
+
$tab = substr( $_REQUEST['page'], strlen( $this->current_arguments['slug_prefix'] . '-settings-' ) );
|
104 |
+
} else {
|
105 |
+
$tab = 'general';
|
106 |
+
}
|
107 |
+
|
108 |
+
$tab = $this->_get_options_tablist( $tab ) ? '-' . $tab : '-general';
|
109 |
+
add_submenu_page( 'options-general.php', $this->current_arguments['plugin_title'], $this->current_arguments['menu_title'], 'manage_options', $this->current_arguments['slug_prefix'] . '-settings' . $tab, array( $this, 'add_submenu_page' ) );
|
110 |
+
add_filter( 'plugin_action_links', array( $this, 'plugin_action_links' ), 10, 2 );
|
111 |
+
}
|
112 |
+
|
113 |
+
/**
|
114 |
+
* Add the "Settings" and "Guide" links to the Plugins section entry
|
115 |
+
*
|
116 |
+
* @since 1.00
|
117 |
+
*
|
118 |
+
* @param array array of links for the Plugin, e.g., "Activate"
|
119 |
+
* @param string Directory and name of the plugin Index file
|
120 |
+
*
|
121 |
+
* @return array Updated array of links for the Plugin
|
122 |
+
*/
|
123 |
+
public function plugin_action_links( $links, $file ) {
|
124 |
+
if ( $file == $this->current_arguments['plugin_file_name_only'] . '/' . $this->current_arguments['plugin_file_name_only'] . '.php' ) {
|
125 |
+
$settings_link = sprintf( '<a href="%s">%s</a>', admin_url( 'options-general.php?page=' . $this->current_arguments['slug_prefix'] . '-settings-documentation&mla_tab=documentation' ), 'Guide' );
|
126 |
+
array_unshift( $links, $settings_link );
|
127 |
+
$settings_link = sprintf( '<a href="%s">%s</a>', admin_url( 'options-general.php?page=' . $this->current_arguments['slug_prefix'] . '-settings-general' ), 'Settings' );
|
128 |
+
array_unshift( $links, $settings_link );
|
129 |
+
}
|
130 |
+
|
131 |
+
return $links;
|
132 |
+
}
|
133 |
+
|
134 |
+
/**
|
135 |
+
* Render (echo) the example plugin's submenu in the Settings section
|
136 |
+
*
|
137 |
+
* @since 1.00
|
138 |
+
*
|
139 |
+
* @return void Echoes HTML markup for the submenu page
|
140 |
+
*/
|
141 |
+
public function add_submenu_page() {
|
142 |
+
if ( !current_user_can( 'manage_options' ) ) {
|
143 |
+
echo '<h2>' . $this->current_arguments['plugin_title'] . " - Error</h2>\n";
|
144 |
+
wp_die( 'You do not have permission to manage plugin settings.' );
|
145 |
+
}
|
146 |
+
|
147 |
+
// Load template array and initialize page-level values.
|
148 |
+
$this->page_template_array = MLACore::mla_load_template( $this->current_arguments['template_file'], 'path' );
|
149 |
+
$current_tab_slug = isset( $_REQUEST['mla_tab'] ) ? $_REQUEST['mla_tab']: 'general';
|
150 |
+
$current_tab = $this->_get_options_tablist( $current_tab_slug );
|
151 |
+
$page_values = array(
|
152 |
+
'plugin_title' => $this->current_arguments['plugin_title'],
|
153 |
+
'version' => 'v' . $this->current_arguments['plugin_version'],
|
154 |
+
'messages' => '',
|
155 |
+
'tablist' => $this->_compose_settings_tabs( $current_tab_slug ),
|
156 |
+
'tab_content' => '',
|
157 |
+
);
|
158 |
+
|
159 |
+
// Compose tab content
|
160 |
+
if ( $current_tab ) {
|
161 |
+
if ( isset( $current_tab['render'] ) ) {
|
162 |
+
$handler = $current_tab['render'];
|
163 |
+
$page_content = call_user_func( array( $this, $handler ) );
|
164 |
+
} else {
|
165 |
+
$page_content = array( 'message' => "ERROR: Cannot render content tab {$current_tab_slug}", 'body' => '' );
|
166 |
+
}
|
167 |
+
} else {
|
168 |
+
$page_content = array( 'message' => "ERROR: Unknown content tab {$current_tab_slug}", 'body' => '' );
|
169 |
+
}
|
170 |
+
|
171 |
+
if ( ! empty( $page_content['message'] ) ) {
|
172 |
+
if ( false !== strpos( $page_content['message'], 'ERROR' ) ) {
|
173 |
+
$messages_class = 'updated error';
|
174 |
+
} else {
|
175 |
+
$messages_class = 'updated notice is-dismissible';
|
176 |
+
}
|
177 |
+
|
178 |
+
$page_values['messages'] = MLAData::mla_parse_template( $this->page_template_array['messages'], array(
|
179 |
+
'mla_messages_class' => $messages_class ,
|
180 |
+
'messages' => $page_content['message'],
|
181 |
+
) );
|
182 |
+
}
|
183 |
+
|
184 |
+
$page_values['tab_content'] = $page_content['body'];
|
185 |
+
|
186 |
+
echo MLAData::mla_parse_template( $this->page_template_array['page'], $page_values );
|
187 |
+
}
|
188 |
+
|
189 |
+
/**
|
190 |
+
* Template file for the Settings page(s) and parts
|
191 |
+
*
|
192 |
+
* This array contains all of the template parts for the Settings page(s). The array is built once
|
193 |
+
* each page load and cached for subsequent use.
|
194 |
+
*
|
195 |
+
* @since 1.00
|
196 |
+
*
|
197 |
+
* @var array
|
198 |
+
*/
|
199 |
+
private $page_template_array = NULL;
|
200 |
+
|
201 |
+
/**
|
202 |
+
* Definitions for Settings page tab ids, titles and handlers
|
203 |
+
* Each tab is defined by an array with the following elements:
|
204 |
+
*
|
205 |
+
* array key => HTML id/name attribute and option database key (OMIT MLA_OPTION_PREFIX)
|
206 |
+
*
|
207 |
+
* title => tab label / heading text
|
208 |
+
* render => rendering function for tab messages and content. Usage:
|
209 |
+
* $tab_content = ['render']();
|
210 |
+
*
|
211 |
+
* @since 1.00
|
212 |
+
*
|
213 |
+
* @var array
|
214 |
+
*/
|
215 |
+
private $mla_tablist = array(
|
216 |
+
'general' => array( 'title' => 'General', 'render' => '_compose_general_tab' ),
|
217 |
+
'documentation' => array( 'title' => 'Documentation', 'render' => '_compose_documentation_tab' ),
|
218 |
+
);
|
219 |
+
|
220 |
+
/**
|
221 |
+
* Retrieve the list of options tabs or a specific tab value
|
222 |
+
*
|
223 |
+
* @since 1.00
|
224 |
+
*
|
225 |
+
* @param string Tab slug, to retrieve a single entry
|
226 |
+
*
|
227 |
+
* @return array|false The entire tablist ( $tab = NULL ), a single tab entry or false if not found/not allowed
|
228 |
+
*/
|
229 |
+
private function _get_options_tablist( $tab = NULL ) {
|
230 |
+
if ( is_string( $tab ) ) {
|
231 |
+
if ( isset( $this->mla_tablist[ $tab ] ) ) {
|
232 |
+
$results = $this->mla_tablist[ $tab ];
|
233 |
+
} else {
|
234 |
+
$results = false;
|
235 |
+
}
|
236 |
+
} else {
|
237 |
+
$results = $this->mla_tablist;
|
238 |
+
}
|
239 |
+
|
240 |
+
return $results;
|
241 |
+
}
|
242 |
+
|
243 |
+
/**
|
244 |
+
* Compose the navigation tabs for the Settings subpage
|
245 |
+
*
|
246 |
+
* @since 1.00
|
247 |
+
* @uses $page_template_array contains tablist and tablist-item templates
|
248 |
+
*
|
249 |
+
* @param string Optional data-tab-id value for the active tab, default 'general'
|
250 |
+
*
|
251 |
+
* @return string HTML markup for the Settings subpage navigation tabs
|
252 |
+
*/
|
253 |
+
private function _compose_settings_tabs( $active_tab = 'general' ) {
|
254 |
+
$tablist_item = $this->page_template_array['tablist-item'];
|
255 |
+
$tabs = '';
|
256 |
+
foreach ( $this->_get_options_tablist() as $key => $item ) {
|
257 |
+
$item_values = array(
|
258 |
+
'data-tab-id' => $key,
|
259 |
+
'nav-tab-active' => ( $active_tab == $key ) ? 'nav-tab-active' : '',
|
260 |
+
'settings-page' => $this->current_arguments['slug_prefix'] . '-settings-' . $key,
|
261 |
+
'title' => $item['title']
|
262 |
+
);
|
263 |
+
|
264 |
+
$tabs .= MLAData::mla_parse_template( $tablist_item, $item_values );
|
265 |
+
} // foreach $item
|
266 |
+
|
267 |
+
$tablist_values = array( 'tablist' => $tabs );
|
268 |
+
return MLAData::mla_parse_template( $this->page_template_array['tablist'], $tablist_values );
|
269 |
+
}
|
270 |
+
|
271 |
+
/**
|
272 |
+
* Compose the General tab content for the Settings subpage
|
273 |
+
*
|
274 |
+
* @since 1.00
|
275 |
+
* @uses $page_template_array contains tab content template(s)
|
276 |
+
*
|
277 |
+
* @return array 'message' => status/error messages, 'body' => tab content
|
278 |
+
*/
|
279 |
+
private function _compose_general_tab() {
|
280 |
+
$page_content = array( 'message' => '', 'body' => '' );
|
281 |
+
|
282 |
+
// Check for page-level Save Changes, Restore Defaults
|
283 |
+
if ( !empty( $_REQUEST[ $this->current_arguments['slug_prefix'] . '_options_save'] ) ) {
|
284 |
+
check_admin_referer( MLACore::MLA_ADMIN_NONCE_ACTION, MLACore::MLA_ADMIN_NONCE_NAME );
|
285 |
+
$page_content = $this->_save_setting_changes();
|
286 |
+
} elseif ( !empty( $_REQUEST[ $this->current_arguments['slug_prefix'] . '_options_reset'] ) ) {
|
287 |
+
check_admin_referer( MLACore::MLA_ADMIN_NONCE_ACTION, MLACore::MLA_ADMIN_NONCE_NAME );
|
288 |
+
$page_content = $this->_restore_setting_defaults();
|
289 |
+
}
|
290 |
+
|
291 |
+
if ( !empty( $page_content['body'] ) ) {
|
292 |
+
return $page_content;
|
293 |
+
}
|
294 |
+
|
295 |
+
// Display the General tab
|
296 |
+
$_SERVER['REQUEST_URI'] = remove_query_arg( array(
|
297 |
+
$this->current_arguments['slug_prefix'] . '_options',
|
298 |
+
'_wpnonce',
|
299 |
+
'_wp_http_referer',
|
300 |
+
$this->current_arguments['slug_prefix'] . '_options_save',
|
301 |
+
$this->current_arguments['slug_prefix'] . '_options_reset',
|
302 |
+
), $_SERVER['REQUEST_URI'] );
|
303 |
+
|
304 |
+
// Compose page-level options
|
305 |
+
$page_values = $this->current_arguments['general_tab_values'];
|
306 |
+
|
307 |
+
foreach ( $this->current_arguments['options'] as $slug => $option ) {
|
308 |
+
if ( 'checkbox' === $option['type'] ) {
|
309 |
+
$page_values[ $slug . '_checked' ] = $this->get_plugin_option( $slug ) ? 'checked="checked" ' : '';
|
310 |
+
} else {
|
311 |
+
$page_values[ $slug ] = esc_attr( $this->get_plugin_option( $slug ) );
|
312 |
+
}
|
313 |
+
}
|
314 |
+
//error_log( __LINE__ . ' MLAExamplePluginSettings101::_compose_general_tab page_values = ' . var_export( $page_values, true ), 0 );
|
315 |
+
|
316 |
+
$options_list = MLAData::mla_parse_template( $this->page_template_array['page-level-options'], $page_values );
|
317 |
+
|
318 |
+
$form_arguments = '?page=' . $this->current_arguments['slug_prefix'] . '-settings-general&mla_tab=general';
|
319 |
+
|
320 |
+
$page_values = array(
|
321 |
+
'form_url' => admin_url( 'options-general.php' ) . $form_arguments,
|
322 |
+
'_wpnonce' => wp_nonce_field( MLACore::MLA_ADMIN_NONCE_ACTION, MLACore::MLA_ADMIN_NONCE_NAME, true, false ),
|
323 |
+
'options_list' => $options_list,
|
324 |
+
'slug_prefix' => $this->current_arguments['slug_prefix'],
|
325 |
+
);
|
326 |
+
|
327 |
+
$page_content['body'] .= MLAData::mla_parse_template( $this->page_template_array['general-tab'], $page_values );
|
328 |
+
|
329 |
+
return $page_content;
|
330 |
+
}
|
331 |
+
|
332 |
+
/**
|
333 |
+
* Compose the Documentation tab content for the Settings subpage
|
334 |
+
*
|
335 |
+
* @since 1.00
|
336 |
+
* @uses $page_template_array contains tab content template(s)
|
337 |
+
*
|
338 |
+
* @return array 'message' => status/error messages, 'body' => tab content
|
339 |
+
*/
|
340 |
+
private function _compose_documentation_tab() {
|
341 |
+
$page_content = array( 'message' => '', 'body' => '' );
|
342 |
+
$page_values = array(
|
343 |
+
);
|
344 |
+
|
345 |
+
$page_content['body'] = MLAData::mla_parse_template( $this->page_template_array['documentation-tab'], $this->current_arguments['documentation_tab_values'] );
|
346 |
+
return $page_content;
|
347 |
+
}
|
348 |
+
|
349 |
+
/**
|
350 |
+
* Save settings as a WordPress wp_options entry
|
351 |
+
*
|
352 |
+
* @since 1.00
|
353 |
+
*
|
354 |
+
* @return array 'message' => status/error messages, 'body' => tab content
|
355 |
+
*/
|
356 |
+
private function _save_setting_changes() {
|
357 |
+
$page_content = array( 'message' => 'Settings unchanged.', 'body' => '' );
|
358 |
+
|
359 |
+
$changed = false;
|
360 |
+
//error_log( __LINE__ . ' MLAExamplePluginSettings101::_save_setting_changes current_arguments[options] = ' . var_export( $this->current_arguments['options'], true ), 0 );
|
361 |
+
foreach ( $this->current_arguments['options'] as $slug => $option ) {
|
362 |
+
if ( 'checkbox' === $option['type'] ) {
|
363 |
+
$changed |= $this->_update_plugin_option( $slug, isset( $this->request_settings[ $slug ] ) );
|
364 |
+
} else {
|
365 |
+
if ( isset( $this->request_settings[ $slug ] ) ) {
|
366 |
+
$changed |= $this->_update_plugin_option( $slug, $this->request_settings[ $slug ] );
|
367 |
+
} else {
|
368 |
+
$changed |= $this->_update_plugin_option( $slug, $option['default'] );
|
369 |
+
}
|
370 |
+
}
|
371 |
+
} // foreach option
|
372 |
+
$this->request_settings = array();
|
373 |
+
//error_log( __LINE__ . " MLAExamplePluginSettings101::_save_setting_changes( {$changed} ) final current_settings = " . var_export( $this->current_settings, true ), 0 );
|
374 |
+
|
375 |
+
if ( $changed ) {
|
376 |
+
// No reason to save defaults in the database
|
377 |
+
if ( $this->current_settings === $this->default_settings ) {
|
378 |
+
delete_option( $this->current_arguments['slug_prefix'] . '-settings' );
|
379 |
+
} else {
|
380 |
+
$changed = update_option( $this->current_arguments['slug_prefix'] . '-settings', $this->current_settings, false );
|
381 |
+
}
|
382 |
+
|
383 |
+
if ( $changed ) {
|
384 |
+
$page_content['message'] = "Settings have been updated.";
|
385 |
+
} else {
|
386 |
+
$page_content['message'] = "Settings updated failed.";
|
387 |
+
}
|
388 |
+
}
|
389 |
+
|
390 |
+
return $page_content;
|
391 |
+
} // _save_setting_changes
|
392 |
+
|
393 |
+
/**
|
394 |
+
* Delete the plugin's WordPress wp_options entry, restoring the default settings
|
395 |
+
*
|
396 |
+
* @since 1.00
|
397 |
+
*
|
398 |
+
* @return array 'message' => status/error messages, 'body' => tab content
|
399 |
+
*/
|
400 |
+
private function _restore_setting_defaults() {
|
401 |
+
$page_content = array( 'message' => 'Settings unchanged.', 'body' => '' );
|
402 |
+
$this->current_settings = $this->default_settings;
|
403 |
+
$changed = delete_option( $this->current_arguments['slug_prefix'] . '-settings' );
|
404 |
+
|
405 |
+
if ( $changed ) {
|
406 |
+
$page_content['message'] = "Settings have been updated.";
|
407 |
+
}
|
408 |
+
|
409 |
+
return $page_content;
|
410 |
+
} // _restore_setting_defaults
|
411 |
+
|
412 |
+
/**
|
413 |
+
* Assemble the in-memory representation of the plugin settings
|
414 |
+
*
|
415 |
+
* @since 1.00
|
416 |
+
*
|
417 |
+
* @param boolean $force_refresh Optional. Force a reload of rules. Default false.
|
418 |
+
*
|
419 |
+
* @return boolean Success (true) or failure (false) of the operation
|
420 |
+
*/
|
421 |
+
private function _get_plugin_settings( $force_refresh = false ) {
|
422 |
+
if ( false == $force_refresh && NULL != $this->current_settings ) {
|
423 |
+
return true;
|
424 |
+
}
|
425 |
+
|
426 |
+
// Update the plugin options from the wp_options table or set defaults
|
427 |
+
$this->current_settings = get_option( $this->current_arguments['slug_prefix'] . '-settings' );
|
428 |
+
//error_log( __LINE__ . ' MLAExamplePluginSettings101::_get_plugin_settings stored current_settings = ' . var_export( $this->current_settings, true ), 0 );
|
429 |
+
if ( !is_array( $this->current_settings ) ) {
|
430 |
+
$this->current_settings = $this->default_settings;
|
431 |
+
}
|
432 |
+
|
433 |
+
// Initialize any new setting(s) from the default settings
|
434 |
+
foreach ( $this->current_arguments['options'] as $slug => $option ) {
|
435 |
+
if ( !isset( $this->current_settings[ $slug ] ) ) {
|
436 |
+
$this->current_settings[ $slug ] = $option['default'];
|
437 |
+
}
|
438 |
+
}
|
439 |
+
|
440 |
+
//error_log( __LINE__ . ' MLAExamplePluginSettings101::_get_plugin_settings final current_settings = ' . var_export( $this->current_settings, true ), 0 );
|
441 |
+
return true;
|
442 |
+
}
|
443 |
+
|
444 |
+
/**
|
445 |
+
* Updated option settings from the $_REQUEST array
|
446 |
+
*
|
447 |
+
* @since 1.01
|
448 |
+
*
|
449 |
+
* @var array
|
450 |
+
*/
|
451 |
+
private $request_settings = array();
|
452 |
+
|
453 |
+
/**
|
454 |
+
* In-memory representation of the option settings
|
455 |
+
*
|
456 |
+
* @since 1.00
|
457 |
+
*
|
458 |
+
* @var array
|
459 |
+
*/
|
460 |
+
private $current_settings = NULL;
|
461 |
+
|
462 |
+
/**
|
463 |
+
* Default processing options
|
464 |
+
*
|
465 |
+
* @since 1.00
|
466 |
+
*
|
467 |
+
* @var array
|
468 |
+
*/
|
469 |
+
private $default_settings = array();
|
470 |
+
|
471 |
+
/**
|
472 |
+
* Update a plugin option setting
|
473 |
+
*
|
474 |
+
* @since 1.00
|
475 |
+
*
|
476 |
+
* @param string $name Option name
|
477 |
+
* @param mixed $new_value Option value
|
478 |
+
*
|
479 |
+
* @return mixed True if option value changed, false if value unchanged, NULL if failure
|
480 |
+
*/
|
481 |
+
private function _update_plugin_option( $name, $new_value ) {
|
482 |
+
if ( !$this->_get_plugin_settings() ) {
|
483 |
+
return NULL;
|
484 |
+
}
|
485 |
+
|
486 |
+
$old_value = isset( $this->current_settings[ $name ] ) ? $this->current_settings[ $name ] : NULL;
|
487 |
+
|
488 |
+
if ( $new_value === $old_value ) {
|
489 |
+
return false;
|
490 |
+
}
|
491 |
+
|
492 |
+
$this->current_settings[ $name ] = $new_value;
|
493 |
+
return true;
|
494 |
+
}
|
495 |
+
|
496 |
+
/**
|
497 |
+
* Get a plugin option setting
|
498 |
+
*
|
499 |
+
* @since 1.00
|
500 |
+
*
|
501 |
+
* @param string $name Option name
|
502 |
+
*
|
503 |
+
* @return mixed Option value, if it exists else NULL
|
504 |
+
*/
|
505 |
+
public function get_plugin_option( $name ) {
|
506 |
+
if ( !$this->_get_plugin_settings() ) {
|
507 |
+
return NULL;
|
508 |
+
}
|
509 |
+
|
510 |
+
// See if the setting is being updated
|
511 |
+
if ( isset( $this->request_settings[ $name ] ) ) {
|
512 |
+
return $this->request_settings[ $name ];
|
513 |
+
}
|
514 |
+
|
515 |
+
if ( isset( $this->current_settings[ $name ] ) ) {
|
516 |
+
return $this->current_settings[ $name ];
|
517 |
+
}
|
518 |
+
|
519 |
+
// Special names for debug logging
|
520 |
+
switch ( $name ) {
|
521 |
+
case 'request_settings':
|
522 |
+
return $this->request_settings;
|
523 |
+
case 'current_settings':
|
524 |
+
return $this->current_settings;
|
525 |
+
case 'default_settings':
|
526 |
+
return $this->default_settings;
|
527 |
+
}
|
528 |
+
|
529 |
+
return NULL;
|
530 |
+
}
|
531 |
+
|
532 |
+
/**
|
533 |
+
* Get a plugin argument setting
|
534 |
+
*
|
535 |
+
* @since 1.01
|
536 |
+
*
|
537 |
+
* @param string $name Argument name
|
538 |
+
*
|
539 |
+
* @return mixed Argument value, if it exists else NULL
|
540 |
+
*/
|
541 |
+
public function get_plugin_argument( $name ) {
|
542 |
+
if ( !isset( $this->current_arguments[ $name ] ) ) {
|
543 |
+
return NULL;
|
544 |
+
}
|
545 |
+
|
546 |
+
return $this->current_arguments[ $name ];
|
547 |
+
}
|
548 |
+
|
549 |
+
/**
|
550 |
+
* Update a plugin argument setting
|
551 |
+
*
|
552 |
+
* @since 1.01
|
553 |
+
*
|
554 |
+
* @param string $name Argument name
|
555 |
+
*
|
556 |
+
* @return boolean True if argument value changed, false if value unchanged
|
557 |
+
*/
|
558 |
+
public function update_plugin_argument( $name, $new_value ) {
|
559 |
+
$old_value = isset( $this->current_arguments[ $name ] ) ? $this->current_arguments[ $name ] : NULL;
|
560 |
+
|
561 |
+
if ( $new_value === $old_value ) {
|
562 |
+
return false;
|
563 |
+
}
|
564 |
+
|
565 |
+
$this->current_arguments[ $name ] = $new_value;
|
566 |
+
return true;
|
567 |
+
}
|
568 |
+
} // Class MLAExamplePluginSettings101
|
569 |
+
?>
|
examples/plugins/mla-custom-field-search-example/mla-custom-field-search-example.php
CHANGED
@@ -28,7 +28,7 @@
|
|
28 |
* https://wordpress.org/support/topic/search-media-by-custom-field/
|
29 |
*
|
30 |
* @package MLA Custom Field Search Example
|
31 |
-
* @version 1.
|
32 |
*/
|
33 |
|
34 |
/*
|
@@ -36,7 +36,7 @@ Plugin Name: MLA Custom Field Search Example
|
|
36 |
Plugin URI: http://davidlingren.com/
|
37 |
Description: Extends the Media/Assistant "Search Media" box to custom field values
|
38 |
Author: David Lingren
|
39 |
-
Version: 1.
|
40 |
Author URI: http://davidlingren.com/
|
41 |
|
42 |
Copyright 2014 - 2020 David Lingren
|
@@ -70,7 +70,7 @@ class MLACustomFieldSearchExample {
|
|
70 |
*
|
71 |
* @var integer
|
72 |
*/
|
73 |
-
const PLUGIN_VERSION = '1.
|
74 |
|
75 |
/**
|
76 |
* Constant to log this plugin's debug activity
|
@@ -146,15 +146,15 @@ class MLACustomFieldSearchExample {
|
|
146 |
}
|
147 |
|
148 |
// The plugin settings class is shared with other MLA example plugins
|
149 |
-
if ( ! class_exists( '
|
150 |
-
require_once( pathinfo( __FILE__, PATHINFO_DIRNAME ) . '/class-mla-example-plugin-settings.php' );
|
151 |
}
|
152 |
|
153 |
// Add the run-time values to the arguments
|
154 |
self::$settings_arguments['template_file'] = dirname( __FILE__ ) . self::$settings_arguments['template_file'];
|
155 |
|
156 |
// Create our own settings object
|
157 |
-
self::$plugin_settings = new
|
158 |
|
159 |
if ( self::$plugin_settings->get_plugin_option( 'media_assistant_support' ) ) {
|
160 |
// Defined in /media-library-assistant/includes/class-mla-main.php
|
28 |
* https://wordpress.org/support/topic/search-media-by-custom-field/
|
29 |
*
|
30 |
* @package MLA Custom Field Search Example
|
31 |
+
* @version 1.07
|
32 |
*/
|
33 |
|
34 |
/*
|
36 |
Plugin URI: http://davidlingren.com/
|
37 |
Description: Extends the Media/Assistant "Search Media" box to custom field values
|
38 |
Author: David Lingren
|
39 |
+
Version: 1.07
|
40 |
Author URI: http://davidlingren.com/
|
41 |
|
42 |
Copyright 2014 - 2020 David Lingren
|
70 |
*
|
71 |
* @var integer
|
72 |
*/
|
73 |
+
const PLUGIN_VERSION = '1.07';
|
74 |
|
75 |
/**
|
76 |
* Constant to log this plugin's debug activity
|
146 |
}
|
147 |
|
148 |
// The plugin settings class is shared with other MLA example plugins
|
149 |
+
if ( ! class_exists( 'MLAExamplePluginSettings101' ) ) {
|
150 |
+
require_once( pathinfo( __FILE__, PATHINFO_DIRNAME ) . '/class-mla-example-plugin-settings-101.php' );
|
151 |
}
|
152 |
|
153 |
// Add the run-time values to the arguments
|
154 |
self::$settings_arguments['template_file'] = dirname( __FILE__ ) . self::$settings_arguments['template_file'];
|
155 |
|
156 |
// Create our own settings object
|
157 |
+
self::$plugin_settings = new MLAExamplePluginSettings101( self::$settings_arguments );
|
158 |
|
159 |
if ( self::$plugin_settings->get_plugin_option( 'media_assistant_support' ) ) {
|
160 |
// Defined in /media-library-assistant/includes/class-mla-main.php
|
examples/plugins/mla-filename-issues-example.php
ADDED
@@ -0,0 +1,229 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* Implements a "filename_issues" custom data source to identify potential duplicate files/Media Library items
|
4 |
+
*
|
5 |
+
* Created for support topic "Find media duplicates based on file name"
|
6 |
+
* opened on 9/7/2020 by "bkwineper":
|
7 |
+
* https://wordpress.org/support/topic/find-media-duplicates-based-on-file-name/
|
8 |
+
*
|
9 |
+
* @package MLA Filename Issues Example
|
10 |
+
* @version 1.00
|
11 |
+
*/
|
12 |
+
|
13 |
+
/*
|
14 |
+
Plugin Name: MLA Filename Issues Example
|
15 |
+
Plugin URI: http://davidlingren.com/
|
16 |
+
Description: Implements a "filename_issues" custom data source to identify potential duplicate files/Media Library items
|
17 |
+
Author: David Lingren
|
18 |
+
Version: 1.00
|
19 |
+
Author URI: http://davidlingren.com/
|
20 |
+
|
21 |
+
Copyright 2021 David Lingren
|
22 |
+
|
23 |
+
This program is free software; you can redistribute it and/or modify
|
24 |
+
it under the terms of the GNU General Public License as published by
|
25 |
+
the Free Software Foundation; either version 2 of the License, or
|
26 |
+
(at your option) any later version.
|
27 |
+
|
28 |
+
This program is distributed in the hope that it will be useful,
|
29 |
+
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
30 |
+
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
31 |
+
GNU General Public License for more details.
|
32 |
+
|
33 |
+
You can get a copy of the GNU General Public License by writing to the
|
34 |
+
Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110, USA
|
35 |
+
*/
|
36 |
+
|
37 |
+
/**
|
38 |
+
* Class MLA Filename Issues Example hooks four of the filters provided
|
39 |
+
* by the "Field-level substitution parameter filters (Hooks)"
|
40 |
+
*
|
41 |
+
* Call it anything you want, but give it an unlikely and hopefully unique name. Hiding
|
42 |
+
* everything else inside a class means this is the only name you have to worry about.
|
43 |
+
*
|
44 |
+
* @package MLA Filename Issues Example
|
45 |
+
* @since 1.00
|
46 |
+
*/
|
47 |
+
class MLAFilenameIssuesExample {
|
48 |
+
/**
|
49 |
+
* Initialization function, similar to __construct()
|
50 |
+
*
|
51 |
+
* Installs filters and actions that handle the MLA hooks for the
|
52 |
+
* "Field-level substitution parameters"
|
53 |
+
*
|
54 |
+
* @since 1.00
|
55 |
+
*
|
56 |
+
* @return void
|
57 |
+
*/
|
58 |
+
public static function initialize() {
|
59 |
+
// Defined in /media-library-assistant/includes/class-mla-data.php
|
60 |
+
add_filter( 'mla_expand_custom_data_source', 'MLAFilenameIssuesExample::mla_expand_custom_data_source', 10, 9 );
|
61 |
+
add_filter( 'mla_evaluate_custom_data_source', 'MLAFilenameIssuesExample::mla_evaluate_custom_data_source', 10, 5 );
|
62 |
+
} // initialize
|
63 |
+
|
64 |
+
/**
|
65 |
+
* Cache root names and counts of items having that root name
|
66 |
+
*
|
67 |
+
* @since 1.00
|
68 |
+
*
|
69 |
+
* @var array Item counts for the root name ( rootname => count )
|
70 |
+
*/
|
71 |
+
private static $rootname_counts = NULL;
|
72 |
+
|
73 |
+
/**
|
74 |
+
* Create root name cache
|
75 |
+
*
|
76 |
+
* @since 1.00
|
77 |
+
*
|
78 |
+
* @param boolean $force_refresh True to ignore & refresh the cache
|
79 |
+
*/
|
80 |
+
private static function _evaluate_root_names( $force_refresh = false ) {
|
81 |
+
global $wpdb;
|
82 |
+
|
83 |
+
if ( false === $force_refresh && is_array( self::$rootname_counts ) ) {
|
84 |
+
return;
|
85 |
+
}
|
86 |
+
|
87 |
+
$results = $wpdb->get_results( "SELECT post_id, meta_value FROM {$wpdb->postmeta} WHERE {$wpdb->postmeta}.meta_key = '_wp_attached_file'" );
|
88 |
+
|
89 |
+
self::$rootname_counts = array();
|
90 |
+
foreach( $results as $result ) {
|
91 |
+
$rootname = self::_find_root_name( $result->meta_value );
|
92 |
+
|
93 |
+
if ( isset( self::$rootname_counts[ $rootname ] ) ) {
|
94 |
+
self::$rootname_counts[ $rootname ]++;
|
95 |
+
} else {
|
96 |
+
self::$rootname_counts[ $rootname ] = 1;
|
97 |
+
}
|
98 |
+
}
|
99 |
+
|
100 |
+
foreach( self::$rootname_counts as $rootname => $count ) {
|
101 |
+
if ( 1 === $count ) {
|
102 |
+
unset( self::$rootname_counts[ $rootname ] );
|
103 |
+
}
|
104 |
+
}
|
105 |
+
//error_log( __LINE__ . " MLAFilenameIssuesExample::_evaluate_root_names rootnames = " . var_export( self::$rootname_counts, true ), 0 );
|
106 |
+
}
|
107 |
+
|
108 |
+
/**
|
109 |
+
* Evaluate filename issues
|
110 |
+
*
|
111 |
+
* @since 1.00
|
112 |
+
*
|
113 |
+
* @param integer $post_id ID of the Media Library item
|
114 |
+
*
|
115 |
+
* @return string Root name and count if ( count > 1 ) else empty string
|
116 |
+
*/
|
117 |
+
private static function _evaluate_filename_issues( $post_id ) {
|
118 |
+
$attached_file = get_post_meta( $post_id, '_wp_attached_file', true );
|
119 |
+
|
120 |
+
if ( false === $attached_file ) {
|
121 |
+
return 'INVALID ID';
|
122 |
+
} elseif ( empty( $attached_file ) ) {
|
123 |
+
return 'NO ATTACHED FILE';
|
124 |
+
}
|
125 |
+
|
126 |
+
$rootname = self::_find_root_name( $attached_file );
|
127 |
+
|
128 |
+
if ( isset( self::$rootname_counts[ $rootname ] ) ) {
|
129 |
+
return $rootname . ' (' . self::$rootname_counts[ $rootname ] . ')';
|
130 |
+
}
|
131 |
+
|
132 |
+
return '';
|
133 |
+
}
|
134 |
+
|
135 |
+
/**
|
136 |
+
* Find the root portion of a file name
|
137 |
+
*
|
138 |
+
* @since 1.00
|
139 |
+
*
|
140 |
+
* @param string $filename Path and file name
|
141 |
+
*
|
142 |
+
* @return string Root portion of $filename
|
143 |
+
*/
|
144 |
+
private static function _find_root_name( $filename ) {
|
145 |
+
$rootname = strtolower( pathinfo( $filename, PATHINFO_FILENAME ) );
|
146 |
+
//error_log( __LINE__ . " MLAFilenameIssuesExample::_find_root_name( {$filename} ) rootname = " . var_export( $rootname, true ), 0 );
|
147 |
+
|
148 |
+
// Remove abc-scaled suffix
|
149 |
+
$scaled_pos = strpos( $rootname, '-scaled' );
|
150 |
+
if ( $scaled_pos === ( strlen( $rootname ) - 7 ) ) {
|
151 |
+
$rootname = substr( $rootname, 0, $scaled_pos );
|
152 |
+
//error_log( __LINE__ . " MLAFilenameIssuesExample::_find_root_name rootname = " . var_export( $rootname, true ), 0 );
|
153 |
+
}
|
154 |
+
|
155 |
+
// Remove -digit(s) suffix
|
156 |
+
$rootname = preg_replace( '/-[0-9]+$/', '', $rootname );
|
157 |
+
//error_log( __LINE__ . " MLAFilenameIssuesExample::_find_root_name rootname = " . var_export( $rootname, true ), 0 );
|
158 |
+
|
159 |
+
// Remove (single) digit suffix (old WordPress convention; won't handle 10+ duplicates)
|
160 |
+
$rootname = preg_replace( '/[0-9]$/', '', $rootname );
|
161 |
+
//error_log( __LINE__ . " MLAFilenameIssuesExample::_find_root_name rootname = " . var_export( $rootname, true ), 0 );
|
162 |
+
|
163 |
+
return $rootname;
|
164 |
+
}
|
165 |
+
|
166 |
+
/**
|
167 |
+
* MLA Expand Custom Data Source Filter
|
168 |
+
*
|
169 |
+
* For shortcode and Content Template processing, gives you an opportunity to generate a custom data value.
|
170 |
+
*
|
171 |
+
* @since 1.00
|
172 |
+
*
|
173 |
+
* @param string NULL, indicating that by default, no custom value is available
|
174 |
+
* @param string the entire data-source text including option/format and any arguments
|
175 |
+
* @param string the data-source name
|
176 |
+
* @param array data-source components; prefix (empty), value, option, format and args (if present)
|
177 |
+
* @param array values from the query, if any, e.g. shortcode parameters
|
178 |
+
* @param array item-level markup template values, if any
|
179 |
+
* @param integer attachment ID for attachment-specific values
|
180 |
+
* @param boolean for option 'multi', retain existing values
|
181 |
+
* @param string default option value
|
182 |
+
*/
|
183 |
+
public static function mla_expand_custom_data_source( $custom_value, $key, $candidate, $value, $query, $markup_values, $post_id, $keep_existing, $default_option ) {
|
184 |
+
// Uncomment the error_log statements in any of the filters to see what's passed in
|
185 |
+
//error_log( __LINE__ . " MLAFilenameIssuesExample::mla_expand_custom_data_source( {$key}, {$candidate}, {$post_id}, {$keep_existing}, {$default_option} ) value = " . var_export( $value, true ), 0 );
|
186 |
+
//error_log( __LINE__ . " MLAFilenameIssuesExample::mla_expand_custom_data_source( {$candidate}, {$post_id} ) query = " . var_export( $query, true ), 0 );
|
187 |
+
//error_log( __LINE__ . " MLAFilenameIssuesExample::mla_expand_custom_data_source( {$candidate}, {$post_id} ) markup_values = " . var_export( $markup_values, true ), 0 );
|
188 |
+
|
189 |
+
if ( 'filename_issues' !== $key ) {
|
190 |
+
return $custom_value;
|
191 |
+
}
|
192 |
+
|
193 |
+
self::_evaluate_root_names();
|
194 |
+
|
195 |
+
return self::_evaluate_filename_issues( $post_id );
|
196 |
+
} // mla_expand_custom_data_source
|
197 |
+
|
198 |
+
/**
|
199 |
+
* MLA Evaluate Custom Data Source Filter
|
200 |
+
*
|
201 |
+
* For metadata mapping rules, gives you an opportunity to generate a custom data value.
|
202 |
+
*
|
203 |
+
* @since 1.00
|
204 |
+
*
|
205 |
+
* @param string NULL, indicating that by default, no custom value is available
|
206 |
+
* @param integer attachment ID for attachment-specific values
|
207 |
+
* @param string category/scope to evaluate against: custom_field_mapping or single_attachment_mapping
|
208 |
+
* @param array data source specification ( name, *data_source, *keep_existing, *format, mla_column, quick_edit, bulk_edit, *meta_name, *option, no_null )
|
209 |
+
* @param array _wp_attachment_metadata, default NULL (use current postmeta database value)
|
210 |
+
*/
|
211 |
+
public static function mla_evaluate_custom_data_source( $custom_value, $post_id, $category, $data_value, $attachment_metadata ) {
|
212 |
+
//error_log( __LINE__ . " MLAFilenameIssuesExample::mla_expand_custom_data_source( {$post_id}, {$category} ) data_value = " . var_export( $data_value, true ), 0 );
|
213 |
+
//error_log( __LINE__ . " MLAFilenameIssuesExample::mla_expand_custom_data_source( {$post_id}, {$category} ) attachment_metadata = " . var_export( $attachment_metadata, true ), 0 );
|
214 |
+
|
215 |
+
if ( 'filename_issues' !== $data_value['data_source'] ) {
|
216 |
+
return $custom_value;
|
217 |
+
}
|
218 |
+
|
219 |
+
self::_evaluate_root_names();
|
220 |
+
|
221 |
+
return self::_evaluate_filename_issues( $post_id );
|
222 |
+
} // mla_evaluate_custom_data_source
|
223 |
+
} //MLAFilenameIssuesExample
|
224 |
+
|
225 |
+
/*
|
226 |
+
* Install the filters at an early opportunity
|
227 |
+
*/
|
228 |
+
add_action('init', 'MLAFilenameIssuesExample::initialize');
|
229 |
+
?>
|
examples/plugins/mla-insert-fixit.php
CHANGED
@@ -53,7 +53,7 @@
|
|
53 |
* https://wordpress.org/support/topic/post-parent-link-images/
|
54 |
*
|
55 |
* @package Insert Fixit
|
56 |
-
* @version 1.
|
57 |
*/
|
58 |
|
59 |
/*
|
@@ -61,7 +61,7 @@ Plugin Name: MLA Insert Fixit
|
|
61 |
Plugin URI: http://davidlingren.com/
|
62 |
Description: Synchronizes Media Library values to and from post/page inserted/featured/attached images
|
63 |
Author: David Lingren
|
64 |
-
Version: 1.
|
65 |
Author URI: http://davidlingren.com/
|
66 |
|
67 |
Copyright 2015-2021 David Lingren
|
@@ -94,7 +94,7 @@ class Insert_Fixit {
|
|
94 |
*
|
95 |
* @var string
|
96 |
*/
|
97 |
-
const CURRENT_VERSION = '1.
|
98 |
|
99 |
/**
|
100 |
* Constant to log this plugin's debug activity
|
@@ -887,7 +887,7 @@ class Insert_Fixit {
|
|
887 |
*
|
888 |
* @return string Cache or rebuild results
|
889 |
*/
|
890 |
-
private static function _build_featured_objects_cache( $use_cache = false, $unattached_only = false, $reverse_sort ) {
|
891 |
global $wpdb;
|
892 |
|
893 |
if ( $use_cache ) {
|
53 |
* https://wordpress.org/support/topic/post-parent-link-images/
|
54 |
*
|
55 |
* @package Insert Fixit
|
56 |
+
* @version 1.22
|
57 |
*/
|
58 |
|
59 |
/*
|
61 |
Plugin URI: http://davidlingren.com/
|
62 |
Description: Synchronizes Media Library values to and from post/page inserted/featured/attached images
|
63 |
Author: David Lingren
|
64 |
+
Version: 1.22
|
65 |
Author URI: http://davidlingren.com/
|
66 |
|
67 |
Copyright 2015-2021 David Lingren
|
94 |
*
|
95 |
* @var string
|
96 |
*/
|
97 |
+
const CURRENT_VERSION = '1.22';
|
98 |
|
99 |
/**
|
100 |
* Constant to log this plugin's debug activity
|
887 |
*
|
888 |
* @return string Cache or rebuild results
|
889 |
*/
|
890 |
+
private static function _build_featured_objects_cache( $use_cache = false, $unattached_only = false, $reverse_sort = false ) {
|
891 |
global $wpdb;
|
892 |
|
893 |
if ( $use_cache ) {
|
examples/plugins/mla-metabox-hooks-example.php
CHANGED
@@ -6,7 +6,7 @@
|
|
6 |
* All of the action takes place in the "mla_inserted_in_meta_box" filter.
|
7 |
*
|
8 |
* @package MLA Meta Box Hooks Example
|
9 |
-
* @version 1.
|
10 |
*/
|
11 |
|
12 |
/*
|
@@ -14,10 +14,10 @@ Plugin Name: MLA Meta Box Hooks Example
|
|
14 |
Plugin URI: http://davidlingren.com/
|
15 |
Description: Provides an example of the filters provided by the "Edit Media additional meta boxes" feature
|
16 |
Author: David Lingren
|
17 |
-
Version: 1.
|
18 |
Author URI: http://davidlingren.com/
|
19 |
|
20 |
-
Copyright 2014 David Lingren
|
21 |
|
22 |
This program is free software; you can redistribute it and/or modify
|
23 |
it under the terms of the GNU General Public License as published by
|
@@ -77,6 +77,9 @@ class MLAMetaboxHooksExample {
|
|
77 |
add_filter( 'mla_image_metadata_meta_box', 'MLAMetaboxHooksExample::mla_image_metadata_meta_box_filter', 10, 3 );
|
78 |
add_filter( 'mla_image_metadata_meta_box_html', 'MLAMetaboxHooksExample::mla_image_metadata_meta_box_html_filter', 10, 4 );
|
79 |
|
|
|
|
|
|
|
80 |
add_filter( 'mla_featured_in_meta_box', 'MLAMetaboxHooksExample::mla_featured_in_meta_box_filter', 10, 3 );
|
81 |
add_filter( 'mla_featured_in_meta_box_html', 'MLAMetaboxHooksExample::mla_featured_in_meta_box_html_filter', 10, 4 );
|
82 |
|
@@ -207,7 +210,7 @@ class MLAMetaboxHooksExample {
|
|
207 |
* $metadata['mla_wp_attachment_metadata']
|
208 |
* @param object the current post
|
209 |
*
|
210 |
-
* @return array updated
|
211 |
*/
|
212 |
public static function mla_image_metadata_meta_box_filter( $value, $metadata, $post ) {
|
213 |
//error_log( 'MLAMetaboxHooksExample::mla_image_metadata_meta_box_filter $value = ' . var_export( $value, true ), 0 );
|
@@ -241,6 +244,46 @@ class MLAMetaboxHooksExample {
|
|
241 |
return $html;
|
242 |
} // mla_image_metadata_meta_box_html_filter
|
243 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
244 |
/**
|
245 |
* MLA Featured in Meta Box Filter
|
246 |
*
|
6 |
* All of the action takes place in the "mla_inserted_in_meta_box" filter.
|
7 |
*
|
8 |
* @package MLA Meta Box Hooks Example
|
9 |
+
* @version 1.02
|
10 |
*/
|
11 |
|
12 |
/*
|
14 |
Plugin URI: http://davidlingren.com/
|
15 |
Description: Provides an example of the filters provided by the "Edit Media additional meta boxes" feature
|
16 |
Author: David Lingren
|
17 |
+
Version: 1.02
|
18 |
Author URI: http://davidlingren.com/
|
19 |
|
20 |
+
Copyright 2014-2021 David Lingren
|
21 |
|
22 |
This program is free software; you can redistribute it and/or modify
|
23 |
it under the terms of the GNU General Public License as published by
|
77 |
add_filter( 'mla_image_metadata_meta_box', 'MLAMetaboxHooksExample::mla_image_metadata_meta_box_filter', 10, 3 );
|
78 |
add_filter( 'mla_image_metadata_meta_box_html', 'MLAMetaboxHooksExample::mla_image_metadata_meta_box_html_filter', 10, 4 );
|
79 |
|
80 |
+
add_filter( 'mla_file_metadata_meta_box', 'MLAMetaboxHooksExample::mla_file_metadata_meta_box_filter', 10, 2 );
|
81 |
+
add_filter( 'mla_file_metadata_meta_box_html', 'MLAMetaboxHooksExample::mla_file_metadata_meta_box_html_filter', 10, 3 );
|
82 |
+
|
83 |
add_filter( 'mla_featured_in_meta_box', 'MLAMetaboxHooksExample::mla_featured_in_meta_box_filter', 10, 3 );
|
84 |
add_filter( 'mla_featured_in_meta_box_html', 'MLAMetaboxHooksExample::mla_featured_in_meta_box_html_filter', 10, 4 );
|
85 |
|
210 |
* $metadata['mla_wp_attachment_metadata']
|
211 |
* @param object the current post
|
212 |
*
|
213 |
+
* @return array updated metadata information
|
214 |
*/
|
215 |
public static function mla_image_metadata_meta_box_filter( $value, $metadata, $post ) {
|
216 |
//error_log( 'MLAMetaboxHooksExample::mla_image_metadata_meta_box_filter $value = ' . var_export( $value, true ), 0 );
|
244 |
return $html;
|
245 |
} // mla_image_metadata_meta_box_html_filter
|
246 |
|
247 |
+
/**
|
248 |
+
* MLA Attachment File Metadata Meta Box Filter
|
249 |
+
*
|
250 |
+
* This filter gives you an opportunity to modify the "Attachment File Metadata" meta box.
|
251 |
+
*
|
252 |
+
* @since 1.02
|
253 |
+
*
|
254 |
+
* @param array ( [value] => default text, [rows] => textbox rows, [cols] => textbox columns )
|
255 |
+
* @param object the current post
|
256 |
+
*
|
257 |
+
* @return array updated metadata information
|
258 |
+
*/
|
259 |
+
public static function mla_file_metadata_meta_box_filter( $value, $post ) {
|
260 |
+
//error_log( 'MLAMetaboxHooksExample::mla_image_metadata_meta_box_filter $value = ' . var_export( $value, true ), 0 );
|
261 |
+
//error_log( 'MLAMetaboxHooksExample::mla_image_metadata_meta_box_filter $post = ' . var_export( $post, true ), 0 );
|
262 |
+
|
263 |
+
return $value;
|
264 |
+
} // mla_file_metadata_meta_box_filter
|
265 |
+
|
266 |
+
/**
|
267 |
+
* MLA Attachment File Metadata Meta Box HTML Filter
|
268 |
+
*
|
269 |
+
* This filter gives you an opportunity to modify the "Attachment File Metadata" meta box HTML content.
|
270 |
+
*
|
271 |
+
* @since 1.02
|
272 |
+
*
|
273 |
+
* @param string Meta box contents markup
|
274 |
+
* @param array ( [value] => default text, [rows] => textbox rows, [cols] => textbox columns )
|
275 |
+
* @param object the current post
|
276 |
+
*
|
277 |
+
* @return array updated meta box contents markup
|
278 |
+
*/
|
279 |
+
public static function mla_file_metadata_meta_box_html_filter( $html, $value, $post ) {
|
280 |
+
//error_log( 'MLAMetaboxHooksExample::mla_image_metadata_meta_box_html_filter $html = ' . var_export( $html, true ), 0 );
|
281 |
+
//error_log( 'MLAMetaboxHooksExample::mla_image_metadata_meta_box_html_filter $value = ' . var_export( $value, true ), 0 );
|
282 |
+
//error_log( 'MLAMetaboxHooksExample::mla_image_metadata_meta_box_html_filter $post = ' . var_export( $post, true ), 0 );
|
283 |
+
|
284 |
+
return $html;
|
285 |
+
} // mla_file_metadata_meta_box_html_filter
|
286 |
+
|
287 |
/**
|
288 |
* MLA Featured in Meta Box Filter
|
289 |
*
|
examples/plugins/mla-ui-elements-example/class-mla-example-plugin-settings-101.php
CHANGED
@@ -516,6 +516,16 @@ class MLAExamplePluginSettings101 {
|
|
516 |
return $this->current_settings[ $name ];
|
517 |
}
|
518 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
519 |
return NULL;
|
520 |
}
|
521 |
|
516 |
return $this->current_settings[ $name ];
|
517 |
}
|
518 |
|
519 |
+
// Special names for debug logging
|
520 |
+
switch ( $name ) {
|
521 |
+
case 'request_settings':
|
522 |
+
return $this->request_settings;
|
523 |
+
case 'current_settings':
|
524 |
+
return $this->current_settings;
|
525 |
+
case 'default_settings':
|
526 |
+
return $this->default_settings;
|
527 |
+
}
|
528 |
+
|
529 |
return NULL;
|
530 |
}
|
531 |
|
includes/class-mla-core-options.php
CHANGED
@@ -188,6 +188,11 @@ class MLACoreOptions {
|
|
188 |
*/
|
189 |
const MLA_EDIT_MEDIA_META_BOXES = 'edit_media_meta_boxes';
|
190 |
|
|
|
|
|
|
|
|
|
|
|
191 |
/**
|
192 |
* Provides a unique name for the Media/Add New bulk edit option
|
193 |
*/
|
@@ -750,10 +755,19 @@ class MLACoreOptions {
|
|
750 |
'type' => 'checkbox',
|
751 |
'autoload' => true,
|
752 |
'std' => 'checked',
|
753 |
-
'help' => __( 'Check this option to add "Parent Info", "Menu Order", "Attachment Metadata" and four "where-used" meta boxes to the Edit Media screen.', 'media-library-assistant' ) . '<br> ' .
|
754 |
__( 'You can also use Filters to customize the meta boxes.', 'media-library-assistant' ) .
|
755 |
sprintf( ' %1$s <a href="%2$s">%3$s</a>.', __( 'For complete documentation', 'media-library-assistant' ), admin_url( 'options-general.php?page=' . self::MLA_SETTINGS_SLUG . '-documentation&mla_tab=documentation#mla_edit_meta_boxes' ), __( 'click here', 'media-library-assistant' ) ) ),
|
756 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
757 |
'media_add_new_header' =>
|
758 |
array('tab' => 'general',
|
759 |
'name' => __( 'Media/Add New Enhancements', 'media-library-assistant' ),
|
@@ -1429,7 +1443,7 @@ class MLACoreOptions {
|
|
1429 |
'name' => __( 'Add Tax. Columns', 'media-library-assistant' ),
|
1430 |
'type' => 'checkbox',
|
1431 |
'std' => '',
|
1432 |
-
'help' => __( 'Check this option to add Term ID and Term-Taxonomy ID columns to the taxonomy edit admin submenu tables.', 'media-library-assistant' )),
|
1433 |
|
1434 |
/* Here are examples of the other option types
|
1435 |
'textarea' =>
|
188 |
*/
|
189 |
const MLA_EDIT_MEDIA_META_BOXES = 'edit_media_meta_boxes';
|
190 |
|
191 |
+
/**
|
192 |
+
* Provides a unique name for the Edit Media Attachment File Metadata meta box option
|
193 |
+
*/
|
194 |
+
const MLA_FILE_METADATA_META_BOX = 'edit_media_file_metadata_meta_box';
|
195 |
+
|
196 |
/**
|
197 |
* Provides a unique name for the Media/Add New bulk edit option
|
198 |
*/
|
755 |
'type' => 'checkbox',
|
756 |
'autoload' => true,
|
757 |
'std' => 'checked',
|
758 |
+
'help' => __( 'Check this option to add "Parent Info", "Menu Order", "Attachment Metadata", "Attachment File Metadata" and four "where-used" meta boxes to the Edit Media screen.', 'media-library-assistant' ) . '<br> ' .
|
759 |
__( 'You can also use Filters to customize the meta boxes.', 'media-library-assistant' ) .
|
760 |
sprintf( ' %1$s <a href="%2$s">%3$s</a>.', __( 'For complete documentation', 'media-library-assistant' ), admin_url( 'options-general.php?page=' . self::MLA_SETTINGS_SLUG . '-documentation&mla_tab=documentation#mla_edit_meta_boxes' ), __( 'click here', 'media-library-assistant' ) ) ),
|
761 |
|
762 |
+
self::MLA_FILE_METADATA_META_BOX =>
|
763 |
+
array('tab' => 'general',
|
764 |
+
'name' => __( 'Enable File Attachment Metadata meta box', 'media-library-assistant' ),
|
765 |
+
'type' => 'checkbox',
|
766 |
+
'autoload' => true,
|
767 |
+
'std' => 'checked',
|
768 |
+
'help' => __( 'Check this option to enable the "Attachment File Metadata" meta box on the Edit Media screen.', 'media-library-assistant' ) . '<br> ' .
|
769 |
+
sprintf( ' %1$s <a href="%2$s">%3$s</a>.', __( 'For complete documentation', 'media-library-assistant' ), admin_url( 'options-general.php?page=' . self::MLA_SETTINGS_SLUG . '-documentation&mla_tab=documentation#mla_edit_meta_boxes' ), __( 'click here', 'media-library-assistant' ) ) ),
|
770 |
+
|
771 |
'media_add_new_header' =>
|
772 |
array('tab' => 'general',
|
773 |
'name' => __( 'Media/Add New Enhancements', 'media-library-assistant' ),
|
1443 |
'name' => __( 'Add Tax. Columns', 'media-library-assistant' ),
|
1444 |
'type' => 'checkbox',
|
1445 |
'std' => '',
|
1446 |
+
'help' => __( 'Check this option to add Parent, Term ID and Term-Taxonomy ID columns to the taxonomy edit admin submenu tables.', 'media-library-assistant' )),
|
1447 |
|
1448 |
/* Here are examples of the other option types
|
1449 |
'textarea' =>
|
includes/class-mla-core.php
CHANGED
@@ -21,7 +21,7 @@ class MLACore {
|
|
21 |
*
|
22 |
* @var string
|
23 |
*/
|
24 |
-
const CURRENT_MLA_VERSION = '2.
|
25 |
|
26 |
/**
|
27 |
* Slug for registering and enqueueing plugin style sheets (moved from class-mla-main.php)
|
@@ -1181,6 +1181,10 @@ class MLACore {
|
|
1181 |
$index = 0;
|
1182 |
|
1183 |
foreach ( $option_values as $key => $value ) {
|
|
|
|
|
|
|
|
|
1184 |
$slug = 'c_' . $index++; // sanitize_title( $key ); Didn't handle HTML in name, e.g., "R><B"
|
1185 |
//error_log( __LINE__ . " mla_custom_field_support( {$key}, {$slug} ) value = " . var_export( $value, true ), 0 );
|
1186 |
|
21 |
*
|
22 |
* @var string
|
23 |
*/
|
24 |
+
const CURRENT_MLA_VERSION = '2.98';
|
25 |
|
26 |
/**
|
27 |
* Slug for registering and enqueueing plugin style sheets (moved from class-mla-main.php)
|
1181 |
$index = 0;
|
1182 |
|
1183 |
foreach ( $option_values as $key => $value ) {
|
1184 |
+
if ( false === $value['active'] ) {
|
1185 |
+
continue;
|
1186 |
+
}
|
1187 |
+
|
1188 |
$slug = 'c_' . $index++; // sanitize_title( $key ); Didn't handle HTML in name, e.g., "R><B"
|
1189 |
//error_log( __LINE__ . " mla_custom_field_support( {$key}, {$slug} ) value = " . var_export( $value, true ), 0 );
|
1190 |
|
includes/class-mla-data-query.php
CHANGED
@@ -1180,15 +1180,8 @@ class MLAQuery {
|
|
1180 |
case '_wp_attachment_image_alt':
|
1181 |
self::$query_parameters[self::MLA_ORDERBY_SUBQUERY] = true;
|
1182 |
self::$query_parameters['orderby_key'] = '_wp_attachment_image_alt';
|
1183 |
-
|
1184 |
-
|
1185 |
-
unset($clean_request['orderby']);
|
1186 |
-
}
|
1187 |
-
|
1188 |
-
if ( isset($clean_request['order']) ) {
|
1189 |
-
unset($clean_request['order']);
|
1190 |
-
}
|
1191 |
-
|
1192 |
break;
|
1193 |
case '_wp_attached_file':
|
1194 |
$clean_request['meta_key'] = '_wp_attached_file';
|
@@ -2128,7 +2121,7 @@ class MLAQuery {
|
|
2128 |
}
|
2129 |
|
2130 |
if ( isset( self::$query_parameters['orderby'] ) ) {
|
2131 |
-
if ( 'c_'
|
2132 |
$orderby = self::MLA_ORDERBY_SUBQUERY . '.meta_value';
|
2133 |
} /* custom field sort */ else {
|
2134 |
switch ( self::$query_parameters['orderby'] ) {
|
@@ -2156,7 +2149,7 @@ class MLAQuery {
|
|
2156 |
break;
|
2157 |
/*
|
2158 |
* The _wp_attachment_image_alt value is only present for images, so we have to
|
2159 |
-
* use the
|
2160 |
*/
|
2161 |
case '_wp_attachment_image_alt':
|
2162 |
$orderby = self::MLA_ORDERBY_SUBQUERY . '.meta_value';
|
1180 |
case '_wp_attachment_image_alt':
|
1181 |
self::$query_parameters[self::MLA_ORDERBY_SUBQUERY] = true;
|
1182 |
self::$query_parameters['orderby_key'] = '_wp_attachment_image_alt';
|
1183 |
+
unset($clean_request['orderby']);
|
1184 |
+
unset($clean_request['order']);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1185 |
break;
|
1186 |
case '_wp_attached_file':
|
1187 |
$clean_request['meta_key'] = '_wp_attached_file';
|
2121 |
}
|
2122 |
|
2123 |
if ( isset( self::$query_parameters['orderby'] ) ) {
|
2124 |
+
if ( 'c_' === substr( self::$query_parameters['orderby'], 0, 2 ) ) {
|
2125 |
$orderby = self::MLA_ORDERBY_SUBQUERY . '.meta_value';
|
2126 |
} /* custom field sort */ else {
|
2127 |
switch ( self::$query_parameters['orderby'] ) {
|
2149 |
break;
|
2150 |
/*
|
2151 |
* The _wp_attachment_image_alt value is only present for images, so we have to
|
2152 |
+
* use the subquery to get attachments with no meta data value
|
2153 |
*/
|
2154 |
case '_wp_attachment_image_alt':
|
2155 |
$orderby = self::MLA_ORDERBY_SUBQUERY . '.meta_value';
|
includes/class-mla-data-references.php
CHANGED
@@ -823,9 +823,9 @@ class MLAReferences {
|
|
823 |
//error_log( __LINE__ . " MLAReferences::_build_mla_galleries( $result_id, $count ) attachments = " . var_export( $attachments, true ), 0 );
|
824 |
|
825 |
if ( is_string( $attachments ) ) {
|
826 |
-
//error_log( __LINE__ . " MLAReferences::_build_mla_galleries( $result_id, $index )
|
827 |
/* translators: 1: post_type, 2: post_title, 3: post ID, 4: query string, 5: error message */
|
828 |
-
|
829 |
} elseif ( ! empty( $attachments ) ) {
|
830 |
foreach ( $attachments as $attachment ) {
|
831 |
$galleries_array[ $result_id ]['results'][ $attachment->ID ] = $attachment->ID;
|
823 |
//error_log( __LINE__ . " MLAReferences::_build_mla_galleries( $result_id, $count ) attachments = " . var_export( $attachments, true ), 0 );
|
824 |
|
825 |
if ( is_string( $attachments ) ) {
|
826 |
+
//error_log( __LINE__ . " MLAReferences::_build_mla_galleries( $result_id, $index ) attr = " . var_export( $attr, true ), 0 );
|
827 |
/* translators: 1: post_type, 2: post_title, 3: post ID, 4: query string, 5: error message */
|
828 |
+
MLACore::mla_debug_add( __LINE__ . ' MLAReferences::_build_mla_galleries ' . sprintf( __( '(%1$s) %2$s (ID %3$d) query "%4$s" failed, returning "%5$s"', 'media-library-assistant' ), $result->post_type, $result->post_title, $result->ID, var_export( $galleries_array[ $result_id ]['galleries'][ $instance ]['query'], true ), $attachments), MLACore::MLA_DEBUG_CATEGORY_WHERE_USED );
|
829 |
} elseif ( ! empty( $attachments ) ) {
|
830 |
foreach ( $attachments as $attachment ) {
|
831 |
$galleries_array[ $result_id ]['results'][ $attachment->ID ] = $attachment->ID;
|
includes/class-mla-data.php
CHANGED
@@ -878,6 +878,84 @@ class MLAData {
|
|
878 |
return true;
|
879 |
}
|
880 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
881 |
/**
|
882 |
* Apply field-level format options to field-level content
|
883 |
*
|
@@ -909,11 +987,11 @@ class MLAData {
|
|
909 |
}
|
910 |
break;
|
911 |
case 'kbmb':
|
|
|
912 |
if ( is_numeric( $value ) ) {
|
913 |
$number = (string) $value;
|
914 |
-
}
|
915 |
$index = 0;
|
916 |
-
$number = '';
|
917 |
while ( $index < strlen( $value ) ) {
|
918 |
if ( ctype_digit( $value[ $index ] ) || ( '.' == $value[ $index ] ) ) {
|
919 |
$number .= $value[ $index ];
|
@@ -1628,60 +1706,8 @@ class MLAData {
|
|
1628 |
|
1629 |
foreach ( $matches[0] as $match ) {
|
1630 |
$key = substr( $match, 2, (strlen( $match ) - 4 ) );
|
1631 |
-
$
|
1632 |
-
|
1633 |
-
if ( 1 == $match_count ) {
|
1634 |
-
$result['prefix'] = $matches[1];
|
1635 |
-
$tail = $matches[2];
|
1636 |
-
} else {
|
1637 |
-
$tail = $key;
|
1638 |
-
}
|
1639 |
-
|
1640 |
-
if ( false !== strpos( $tail, ',' ) ) {
|
1641 |
-
$match_count = preg_match( '/([^,]+)(,(text|single|export|unpack|array|multi|commas|raw|attr|url|kbmb|timestamp|date|fraction|substr|str_replace|match|extract|replace))(\((.*)\)$)*/', $tail, $matches );
|
1642 |
-
if ( 1 == $match_count ) {
|
1643 |
-
$result['value'] = $matches[1];
|
1644 |
-
if ( ! empty( $matches[5] ) ) {
|
1645 |
-
$args = self::_parse_arguments( $matches[5] );
|
1646 |
-
|
1647 |
-
if ( 1 == count( $args ) ) {
|
1648 |
-
$args = $args[0];
|
1649 |
-
}
|
1650 |
-
} else {
|
1651 |
-
$args = '';
|
1652 |
-
}
|
1653 |
-
|
1654 |
-
if ( in_array( $matches[3], array( 'commas', 'raw', 'attr', 'url', 'kbmb', 'timestamp', 'date', 'fraction', 'substr', 'str_replace', 'match', 'extract', 'replace' ) ) ) {
|
1655 |
-
$result['option'] = 'text';
|
1656 |
-
$result['format'] = $matches[3];
|
1657 |
-
$result['args'] = $args;
|
1658 |
-
} else {
|
1659 |
-
$result['option'] = $matches[3];
|
1660 |
-
}
|
1661 |
-
} else {
|
1662 |
-
$match_count = preg_match( '/([^,]+),([^(]+)(\(([^)]+)\))*/', $tail, $matches );
|
1663 |
-
if ( 1 == $match_count ) {
|
1664 |
-
$result['value'] = $matches[1];
|
1665 |
-
$result['format'] = $matches[2];
|
1666 |
-
|
1667 |
-
if ( ! empty( $matches[4] ) ) {
|
1668 |
-
$args = self::_parse_arguments( $matches[4] );
|
1669 |
-
|
1670 |
-
if ( 1 == count( $args ) ) {
|
1671 |
-
$args = $args[0];
|
1672 |
-
}
|
1673 |
-
$result['args'] = $args;
|
1674 |
-
}
|
1675 |
-
} else {
|
1676 |
-
$result['value'] = $tail;
|
1677 |
-
}
|
1678 |
-
}
|
1679 |
-
} else {
|
1680 |
-
$result['value'] = $tail;
|
1681 |
-
}
|
1682 |
-
|
1683 |
-
$results[ $key ] = $result;
|
1684 |
-
} // foreach
|
1685 |
|
1686 |
return $results;
|
1687 |
}
|
@@ -2277,35 +2303,37 @@ class MLAData {
|
|
2277 |
$namespace_arrays = array();
|
2278 |
$metadata_source = '';
|
2279 |
if ( isset( $levels[1] ) && isset( $levels[1]['values'] ) ) {
|
2280 |
-
if ( isset( $levels[1]['values']['rdf:RDF'] ) &&
|
2281 |
-
|
2282 |
-
|
2283 |
-
|
2284 |
-
|
2285 |
-
|
2286 |
-
|
2287 |
-
|
2288 |
-
|
2289 |
-
|
2290 |
-
|
2291 |
-
|
2292 |
-
|
2293 |
-
|
2294 |
-
|
2295 |
-
if ( false !== ($colon = strpos( $key, ':' ) ) ) {
|
2296 |
-
$array_name = substr( $key, 0, $colon );
|
2297 |
-
$array_index = substr( $key, $colon + 1 );
|
2298 |
-
$namespace_arrays[ $array_name ][ $array_index ] = $value;
|
2299 |
-
|
2300 |
-
if ( ! isset( $results[ $array_index ] ) && in_array( $array_name, array( 'xmp', 'xmpMM', 'xmpRights', 'xap', 'xapMM', 'dc', 'pdf', 'pdfx', 'mwg-rs' ) ) ) {
|
2301 |
-
if ( is_array( $value ) && 1 == count( $value ) && isset( $value[0] ) ) {
|
2302 |
-
$results[ $array_index ] = $value[0];
|
2303 |
-
} else {
|
2304 |
-
$results[ $array_index ] = $value;
|
2305 |
-
}
|
2306 |
}
|
2307 |
-
|
2308 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2309 |
} else {
|
2310 |
/*
|
2311 |
* Microsoft Office parsing
|
@@ -3404,7 +3432,7 @@ class MLAData {
|
|
3404 |
static $id3 = NULL;
|
3405 |
|
3406 |
if ( 0 != $post_id ) {
|
3407 |
-
$path = get_attached_file($post_id);
|
3408 |
}
|
3409 |
|
3410 |
if ( ! empty( $path ) ) {
|
@@ -3485,14 +3513,77 @@ class MLAData {
|
|
3485 |
}
|
3486 |
|
3487 |
/**
|
3488 |
-
*
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
3489 |
*
|
3490 |
* @since 0.90
|
3491 |
*
|
3492 |
* @param int post ID of attachment
|
3493 |
* @param string optional; if $post_id is zero, path to the image file.
|
3494 |
*
|
3495 |
-
* @return array Meta data variables, IPTC
|
3496 |
*/
|
3497 |
public static function mla_fetch_attachment_image_metadata( $post_id, $path = '' ) {
|
3498 |
$results = array(
|
@@ -3531,7 +3622,7 @@ class MLAData {
|
|
3531 |
$pdf_metadata = MLAPDF::mla_extract_pdf_metadata( $path );
|
3532 |
$results['mla_xmp_metadata'] = $pdf_metadata['xmp'];
|
3533 |
$results['mla_pdf_metadata'] = $pdf_metadata['pdf'];
|
3534 |
-
MLACore::mla_debug_add( __LINE__ .
|
3535 |
return $results;
|
3536 |
}
|
3537 |
|
@@ -3543,18 +3634,13 @@ class MLAData {
|
|
3543 |
|
3544 |
$mso_metadata = MLAOffice::mla_extract_office_metadata( $path );
|
3545 |
$results['mla_mso_metadata'] = $mso_metadata['mso'];
|
3546 |
-
MLACore::mla_debug_add( __LINE__ .
|
3547 |
return $results;
|
3548 |
}
|
3549 |
|
3550 |
$size = getimagesize( $path, $info );
|
3551 |
-
MLACore::mla_debug_add( __LINE__ . ' mla_fetch_attachment_image_metadata getimagesize returns ' . var_export( $size, true ), MLACore::MLA_DEBUG_CATEGORY_METADATA );
|
3552 |
-
MLACore::mla_debug_add( __LINE__ . ' mla_fetch_attachment_image_metadata getimagesize info keys = ' . var_export( array_keys( $info ), true ), MLACore::MLA_DEBUG_CATEGORY_METADATA );
|
3553 |
-
|
3554 |
-
/*/ SVG and some other types don't have metadata: removed v2.90
|
3555 |
-
if ( false === $size ) {
|
3556 |
-
return $results;
|
3557 |
-
} // */
|
3558 |
|
3559 |
if ( is_callable( 'iptcparse' ) ) {
|
3560 |
if ( ! empty( $info['APP13'] ) ) {
|
@@ -3571,7 +3657,7 @@ class MLAData {
|
|
3571 |
}
|
3572 |
restore_error_handler();
|
3573 |
|
3574 |
-
MLACore::mla_debug_add( __LINE__ . ' mla_fetch_attachment_image_metadata iptc_values = ' . var_export( $iptc_values, true ), MLACore::MLA_DEBUG_CATEGORY_METADATA );
|
3575 |
|
3576 |
if ( ! empty( $exception ) ) {
|
3577 |
MLAData::$mla_IPTC_EXIF_errors[] = sprintf( '(%1$s) %2$s', $exception->getCode(), $exception->getMessage() );
|
@@ -3615,7 +3701,7 @@ class MLAData {
|
|
3615 |
}
|
3616 |
restore_error_handler();
|
3617 |
|
3618 |
-
MLACore::mla_debug_add( __LINE__ . ' mla_fetch_attachment_image_metadata (PHP ' . phpversion() . ') exif_data = ' . var_export( $exif_data, true ), MLACore::MLA_DEBUG_CATEGORY_METADATA );
|
3619 |
|
3620 |
if ( ! empty( $exception ) ) {
|
3621 |
MLAData::$mla_IPTC_EXIF_errors[] = sprintf( '(%1$s) %2$s', $exception->getCode(), $exception->getMessage() );
|
@@ -3973,7 +4059,8 @@ class MLAData {
|
|
3973 |
$results['mla_exif_metadata']['GPS'] = $new_data;
|
3974 |
}
|
3975 |
|
3976 |
-
MLACore::mla_debug_add( __LINE__ . ' mla_fetch_attachment_image_metadata results =
|
|
|
3977 |
return $results;
|
3978 |
}
|
3979 |
|
878 |
return true;
|
879 |
}
|
880 |
|
881 |
+
/**
|
882 |
+
* Parse a field-level substitution parameter (not a template) into its component parts
|
883 |
+
*
|
884 |
+
* @since 2.98
|
885 |
+
*
|
886 |
+
* @param string Field-level parameter, with or without enclosing '[+' and '+]'
|
887 |
+
* @param string Default format/option value
|
888 |
+
*
|
889 |
+
* @return array Parameter components: prefix, value, qualifier, option, format, args
|
890 |
+
*/
|
891 |
+
public static function mla_parse_substitution_parameter( $parameter, $default_option = 'text' ) {
|
892 |
+
// Strip optional enclosing delimiters
|
893 |
+
if ( 0 === strpos( $parameter, '[+' ) ) {
|
894 |
+
$parameter = substr( $parameter, 2, (strlen( $parameter ) - 4 ) );
|
895 |
+
}
|
896 |
+
|
897 |
+
$result = array( 'prefix' => '', 'value' => '', 'qualifier' => '', 'option' => $default_option, 'format' => 'native', 'args' => '' );
|
898 |
+
$match_count = preg_match( '/([^,:]+):(.+)/', $parameter, $matches );
|
899 |
+
if ( 1 == $match_count ) {
|
900 |
+
$result['prefix'] = $matches[1];
|
901 |
+
$tail = $matches[2];
|
902 |
+
} else {
|
903 |
+
$tail = $parameter;
|
904 |
+
}
|
905 |
+
|
906 |
+
if ( false !== strpos( $tail, ',' ) ) {
|
907 |
+
$match_count = preg_match( '/([^,]+)(,(text|single|export|unpack|array|multi|commas|raw|attr|url|kbmb|timestamp|date|fraction|substr|str_replace|match|extract|replace))(\((.*)\)$)*/', $tail, $matches );
|
908 |
+
if ( 1 == $match_count ) {
|
909 |
+
$result['value'] = $matches[1];
|
910 |
+
if ( ! empty( $matches[5] ) ) {
|
911 |
+
$args = self::_parse_arguments( $matches[5] );
|
912 |
+
|
913 |
+
if ( 1 == count( $args ) ) {
|
914 |
+
$args = $args[0];
|
915 |
+
}
|
916 |
+
} else {
|
917 |
+
$args = '';
|
918 |
+
}
|
919 |
+
|
920 |
+
if ( in_array( $matches[3], array( 'commas', 'raw', 'attr', 'url', 'kbmb', 'timestamp', 'date', 'fraction', 'substr', 'str_replace', 'match', 'extract', 'replace' ) ) ) {
|
921 |
+
$result['option'] = 'text';
|
922 |
+
$result['format'] = $matches[3];
|
923 |
+
$result['args'] = $args;
|
924 |
+
} else {
|
925 |
+
$result['option'] = $matches[3];
|
926 |
+
}
|
927 |
+
} else {
|
928 |
+
$match_count = preg_match( '/([^,]+),([^(]+)(\(([^)]+)\))*/', $tail, $matches );
|
929 |
+
if ( 1 == $match_count ) {
|
930 |
+
$result['value'] = $matches[1];
|
931 |
+
$result['format'] = $matches[2];
|
932 |
+
|
933 |
+
if ( ! empty( $matches[4] ) ) {
|
934 |
+
$args = self::_parse_arguments( $matches[4] );
|
935 |
+
|
936 |
+
if ( 1 == count( $args ) ) {
|
937 |
+
$args = $args[0];
|
938 |
+
}
|
939 |
+
$result['args'] = $args;
|
940 |
+
}
|
941 |
+
} else {
|
942 |
+
$result['value'] = $tail;
|
943 |
+
}
|
944 |
+
}
|
945 |
+
} else {
|
946 |
+
$result['value'] = $tail;
|
947 |
+
}
|
948 |
+
|
949 |
+
// Look for field/value qualifier
|
950 |
+
$match_count = preg_match( '/^(.+)\((.+)\)/', $result['value'], $matches );
|
951 |
+
if ( $match_count ) {
|
952 |
+
$result['value'] = $matches[1];
|
953 |
+
$result['qualifier'] = $matches[2];
|
954 |
+
}
|
955 |
+
|
956 |
+
return $result;
|
957 |
+
}
|
958 |
+
|
959 |
/**
|
960 |
* Apply field-level format options to field-level content
|
961 |
*
|
987 |
}
|
988 |
break;
|
989 |
case 'kbmb':
|
990 |
+
$number = '';
|
991 |
if ( is_numeric( $value ) ) {
|
992 |
$number = (string) $value;
|
993 |
+
} elseif ( is_string( $value ) ) {
|
994 |
$index = 0;
|
|
|
995 |
while ( $index < strlen( $value ) ) {
|
996 |
if ( ctype_digit( $value[ $index ] ) || ( '.' == $value[ $index ] ) ) {
|
997 |
$number .= $value[ $index ];
|
1706 |
|
1707 |
foreach ( $matches[0] as $match ) {
|
1708 |
$key = substr( $match, 2, (strlen( $match ) - 4 ) );
|
1709 |
+
$results[ $key ] = self::mla_parse_substitution_parameter( $key, $default_option );
|
1710 |
+
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1711 |
|
1712 |
return $results;
|
1713 |
}
|
2303 |
$namespace_arrays = array();
|
2304 |
$metadata_source = '';
|
2305 |
if ( isset( $levels[1] ) && isset( $levels[1]['values'] ) ) {
|
2306 |
+
if ( isset( $levels[1]['values']['rdf:RDF'] ) && !empty( $levels[1]['values']['rdf:RDF']['rdf:Description'] ) ) {
|
2307 |
+
if ( is_array( $levels[1]['values']['rdf:RDF']['rdf:Description'] ) ) {
|
2308 |
+
/*
|
2309 |
+
* XMP parsing
|
2310 |
+
* NOTE: The string "XAP" or "xap" appears in some namespaces, keywords,
|
2311 |
+
* and related names in stored XMP data. It reflects an early internal
|
2312 |
+
* code name for XMP; the names have been preserved for compatibility purposes.
|
2313 |
+
*/
|
2314 |
+
$metadata_source = 'xmp';
|
2315 |
+
foreach ( $levels[1]['values']['rdf:RDF']['rdf:Description'] as $key => $value ) {
|
2316 |
+
if ( is_string( $value ) ) {
|
2317 |
+
$value = self::_parse_iso8601_date( self::mla_parse_pdf_date( $value ) );
|
2318 |
+
} elseif ( is_array( $value ) ) {
|
2319 |
+
$value = self::_parse_xmp_array( $value );
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2320 |
}
|
2321 |
+
|
2322 |
+
if ( false !== ($colon = strpos( $key, ':' ) ) ) {
|
2323 |
+
$array_name = substr( $key, 0, $colon );
|
2324 |
+
$array_index = substr( $key, $colon + 1 );
|
2325 |
+
$namespace_arrays[ $array_name ][ $array_index ] = $value;
|
2326 |
+
|
2327 |
+
if ( ! isset( $results[ $array_index ] ) && in_array( $array_name, array( 'xmp', 'xmpMM', 'xmpRights', 'xap', 'xapMM', 'dc', 'pdf', 'pdfx', 'mwg-rs' ) ) ) {
|
2328 |
+
if ( is_array( $value ) && 1 == count( $value ) && isset( $value[0] ) ) {
|
2329 |
+
$results[ $array_index ] = $value[0];
|
2330 |
+
} else {
|
2331 |
+
$results[ $array_index ] = $value;
|
2332 |
+
}
|
2333 |
+
}
|
2334 |
+
} // found namespace
|
2335 |
+
} // foreach Description
|
2336 |
+
} // is_array
|
2337 |
} else {
|
2338 |
/*
|
2339 |
* Microsoft Office parsing
|
3432 |
static $id3 = NULL;
|
3433 |
|
3434 |
if ( 0 != $post_id ) {
|
3435 |
+
$path = get_attached_file( $post_id );
|
3436 |
}
|
3437 |
|
3438 |
if ( ! empty( $path ) ) {
|
3513 |
}
|
3514 |
|
3515 |
/**
|
3516 |
+
* Format and return IPTC and EXIF, XMP or PDF metadata,
|
3517 |
+
* in substitution parameter syntax with prefixes.
|
3518 |
+
*
|
3519 |
+
* @since 2.98
|
3520 |
+
*
|
3521 |
+
* @param array $value Array of metadata elements
|
3522 |
+
* @param string $prefix Element ancestor(s)
|
3523 |
+
* @param string $separator Optional. Delimiter between prefix and element name
|
3524 |
+
*
|
3525 |
+
* @return string Metadata text representation in "var_export" format
|
3526 |
+
*/
|
3527 |
+
private static function _compose_metadata_array( $value, $prefix, $separator = '.' ) {
|
3528 |
+
$text = '';
|
3529 |
+
foreach ( $value as $key => $element ) {
|
3530 |
+
if ( is_array( $element ) && ( 1 === count( $element ) ) && isset( $element[0] ) ) {
|
3531 |
+
$element = $element[0];
|
3532 |
+
}
|
3533 |
+
|
3534 |
+
if ( is_scalar( $element ) ) {
|
3535 |
+
$text .= $prefix . $separator . $key . ' => ' . (string) $element . "\r\n";
|
3536 |
+
} elseif ( is_array( $element ) ) {
|
3537 |
+
$text .= self::_compose_metadata_array( $element, $prefix . $separator . $key );
|
3538 |
+
}
|
3539 |
+
}
|
3540 |
+
|
3541 |
+
return $text;
|
3542 |
+
}
|
3543 |
+
|
3544 |
+
/**
|
3545 |
+
* Format and return IPTC and EXIF, XMP or PDF metadata,
|
3546 |
+
* in substitution parameter syntax with prefixes.
|
3547 |
+
*
|
3548 |
+
* @since 2.98
|
3549 |
+
*
|
3550 |
+
* @param int post ID of attachment
|
3551 |
+
* @param string optional; if $post_id is zero, path to the image file.
|
3552 |
+
*
|
3553 |
+
* @return string Text representation of the IPTC, EXIF, XMP, PDF and/or MSO metadata
|
3554 |
+
*/
|
3555 |
+
public static function mla_compose_attachment_metadata( $post_id, $path = '' ) {
|
3556 |
+
$metadata = self::mla_fetch_attachment_image_metadata( $post_id, $path );
|
3557 |
+
|
3558 |
+
$text = '';
|
3559 |
+
foreach ( $metadata as $key => $value ) {
|
3560 |
+
$match_count = preg_match( '/mla_(.+)_metadata/', $key, $matches );
|
3561 |
+
if ( $match_count ) {
|
3562 |
+
$text .= self::_compose_metadata_array( $value, $matches[1], ':' );
|
3563 |
+
} elseif ( is_scalar( $value ) ) {
|
3564 |
+
$text .= $key . ' => ' . (string) $value . "\r\n";
|
3565 |
+
} elseif ( is_array( $value ) ) {
|
3566 |
+
$text .= self::_compose_metadata_array( $value, $key );
|
3567 |
+
}
|
3568 |
+
}
|
3569 |
+
|
3570 |
+
$id3_metadata = self::mla_fetch_attachment_id3_metadata( $post_id );
|
3571 |
+
if ( !empty( $id3_metadata ) && !isset( $id3_metadata['error'] ) ) {
|
3572 |
+
$text .= self::_compose_metadata_array( $id3_metadata, 'id3', ':' );
|
3573 |
+
}
|
3574 |
+
|
3575 |
+
return $text; // var_export( $metadata, true );
|
3576 |
+
}
|
3577 |
+
|
3578 |
+
/**
|
3579 |
+
* Fetch and filter IPTC, EXIF, XMP, PDF and/or MSO metadata for an attachment
|
3580 |
*
|
3581 |
* @since 0.90
|
3582 |
*
|
3583 |
* @param int post ID of attachment
|
3584 |
* @param string optional; if $post_id is zero, path to the image file.
|
3585 |
*
|
3586 |
+
* @return array Meta data variables, IPTC, EXIF, XMP, PDF and/or MSO
|
3587 |
*/
|
3588 |
public static function mla_fetch_attachment_image_metadata( $post_id, $path = '' ) {
|
3589 |
$results = array(
|
3622 |
$pdf_metadata = MLAPDF::mla_extract_pdf_metadata( $path );
|
3623 |
$results['mla_xmp_metadata'] = $pdf_metadata['xmp'];
|
3624 |
$results['mla_pdf_metadata'] = $pdf_metadata['pdf'];
|
3625 |
+
MLACore::mla_debug_add( __LINE__ . " MLAData::mla_fetch_attachment_image_metadata( {$post_id}, {$path} ) results = " . var_export( $results, true ), MLACore::MLA_DEBUG_CATEGORY_METADATA );
|
3626 |
return $results;
|
3627 |
}
|
3628 |
|
3634 |
|
3635 |
$mso_metadata = MLAOffice::mla_extract_office_metadata( $path );
|
3636 |
$results['mla_mso_metadata'] = $mso_metadata['mso'];
|
3637 |
+
MLACore::mla_debug_add( __LINE__ . " MLAData::mla_fetch_attachment_image_metadata( {$post_id}, {$path} ) results = " . var_export( $results, true ), MLACore::MLA_DEBUG_CATEGORY_METADATA );
|
3638 |
return $results;
|
3639 |
}
|
3640 |
|
3641 |
$size = getimagesize( $path, $info );
|
3642 |
+
MLACore::mla_debug_add( __LINE__ . ' MLAData::mla_fetch_attachment_image_metadata getimagesize returns ' . var_export( $size, true ), MLACore::MLA_DEBUG_CATEGORY_METADATA );
|
3643 |
+
MLACore::mla_debug_add( __LINE__ . ' MLAData::mla_fetch_attachment_image_metadata getimagesize info keys = ' . var_export( array_keys( $info ), true ), MLACore::MLA_DEBUG_CATEGORY_METADATA );
|
|
|
|
|
|
|
|
|
|
|
3644 |
|
3645 |
if ( is_callable( 'iptcparse' ) ) {
|
3646 |
if ( ! empty( $info['APP13'] ) ) {
|
3657 |
}
|
3658 |
restore_error_handler();
|
3659 |
|
3660 |
+
// MLACore::mla_debug_add( __LINE__ . ' MLAData::mla_fetch_attachment_image_metadata iptc_values = ' . var_export( $iptc_values, true ), MLACore::MLA_DEBUG_CATEGORY_METADATA );
|
3661 |
|
3662 |
if ( ! empty( $exception ) ) {
|
3663 |
MLAData::$mla_IPTC_EXIF_errors[] = sprintf( '(%1$s) %2$s', $exception->getCode(), $exception->getMessage() );
|
3701 |
}
|
3702 |
restore_error_handler();
|
3703 |
|
3704 |
+
// MLACore::mla_debug_add( __LINE__ . ' MLAData::mla_fetch_attachment_image_metadata (PHP ' . phpversion() . ') exif_data = ' . var_export( $exif_data, true ), MLACore::MLA_DEBUG_CATEGORY_METADATA );
|
3705 |
|
3706 |
if ( ! empty( $exception ) ) {
|
3707 |
MLAData::$mla_IPTC_EXIF_errors[] = sprintf( '(%1$s) %2$s', $exception->getCode(), $exception->getMessage() );
|
4059 |
$results['mla_exif_metadata']['GPS'] = $new_data;
|
4060 |
}
|
4061 |
|
4062 |
+
MLACore::mla_debug_add( __LINE__ . ' MLAData::mla_fetch_attachment_image_metadata( PHP ' . phpversion() . ", {$post_id}, {$path} ) results = " . var_export( $results, true ), MLACore::MLA_DEBUG_CATEGORY_METADATA );
|
4063 |
+
|
4064 |
return $results;
|
4065 |
}
|
4066 |
|
includes/class-mla-edit-media.php
CHANGED
@@ -879,7 +879,7 @@ class MLAEdit {
|
|
879 |
|
880 |
if ( 'checked' == MLACore::mla_get_option( MLACoreOptions::MLA_EDIT_MEDIA_META_BOXES ) ) {
|
881 |
$active_boxes = apply_filters( 'mla_edit_media_meta_boxes', array(
|
882 |
-
'mla-parent-info' => 'mla-parent-info', 'mla-menu-order' => 'mla-menu-order', 'mla-image-metadata' => 'mla-image-metadata', 'mla-featured-in' => 'mla-featured-in', 'mla-inserted-in' => 'mla-inserted-in', 'mla-gallery-in' => 'mla-gallery-in', 'mla-mla-gallery-in' => 'mla-mla-gallery-in' ) );
|
883 |
|
884 |
if ( isset( $active_boxes['mla-parent-info'] ) ) {
|
885 |
add_meta_box( 'mla-parent-info', __( 'Parent Info', 'media-library-assistant' ), 'MLAEdit::mla_parent_info_handler', 'attachment', 'normal', 'core' );
|
@@ -896,6 +896,12 @@ class MLAEdit {
|
|
896 |
}
|
897 |
}
|
898 |
|
|
|
|
|
|
|
|
|
|
|
|
|
899 |
if ( isset( $active_boxes['mla-featured-in'] ) && MLACore::$process_featured_in ) {
|
900 |
add_meta_box( 'mla-featured-in', __( 'Featured in', 'media-library-assistant' ), 'MLAEdit::mla_featured_in_handler', 'attachment', 'normal', 'core' );
|
901 |
}
|
@@ -1119,6 +1125,25 @@ class MLAEdit {
|
|
1119 |
echo apply_filters( 'mla_image_metadata_meta_box_html', $html, $value, $metadata, $post ); // phpcs:ignore
|
1120 |
}
|
1121 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1122 |
/**
|
1123 |
* Renders the Featured in meta box on the Edit Media page.
|
1124 |
* Declared public because it is a callback function.
|
879 |
|
880 |
if ( 'checked' == MLACore::mla_get_option( MLACoreOptions::MLA_EDIT_MEDIA_META_BOXES ) ) {
|
881 |
$active_boxes = apply_filters( 'mla_edit_media_meta_boxes', array(
|
882 |
+
'mla-parent-info' => 'mla-parent-info', 'mla-menu-order' => 'mla-menu-order', 'mla-image-metadata' => 'mla-image-metadata', 'mla-file-metadata' => 'mla-file-metadata', 'mla-featured-in' => 'mla-featured-in', 'mla-inserted-in' => 'mla-inserted-in', 'mla-gallery-in' => 'mla-gallery-in', 'mla-mla-gallery-in' => 'mla-mla-gallery-in' ) );
|
883 |
|
884 |
if ( isset( $active_boxes['mla-parent-info'] ) ) {
|
885 |
add_meta_box( 'mla-parent-info', __( 'Parent Info', 'media-library-assistant' ), 'MLAEdit::mla_parent_info_handler', 'attachment', 'normal', 'core' );
|
896 |
}
|
897 |
}
|
898 |
|
899 |
+
if ( 'checked' == MLACore::mla_get_option( MLACoreOptions::MLA_FILE_METADATA_META_BOX ) ) {
|
900 |
+
if ( isset( $active_boxes['mla-file-metadata'] ) ) {
|
901 |
+
add_meta_box( 'mla-file-metadata', __( 'Attachment File Metadata', 'media-library-assistant' ), 'MLAEdit::mla_file_metadata_handler', 'attachment', 'normal', 'core' );
|
902 |
+
}
|
903 |
+
}
|
904 |
+
|
905 |
if ( isset( $active_boxes['mla-featured-in'] ) && MLACore::$process_featured_in ) {
|
906 |
add_meta_box( 'mla-featured-in', __( 'Featured in', 'media-library-assistant' ), 'MLAEdit::mla_featured_in_handler', 'attachment', 'normal', 'core' );
|
907 |
}
|
1125 |
echo apply_filters( 'mla_image_metadata_meta_box_html', $html, $value, $metadata, $post ); // phpcs:ignore
|
1126 |
}
|
1127 |
|
1128 |
+
/**
|
1129 |
+
* Renders the IPTC, EXIF, XMP, PDF and/or MSO Metadata meta box on the Edit Media page.
|
1130 |
+
* Declared public because it is a callback function.
|
1131 |
+
*
|
1132 |
+
* @since 0.80
|
1133 |
+
*
|
1134 |
+
* @param object current post
|
1135 |
+
*
|
1136 |
+
* @return void echoes the HTML markup for the meta box content
|
1137 |
+
*/
|
1138 |
+
public static function mla_file_metadata_handler( $post ) {
|
1139 |
+
$value = MLAData::mla_compose_attachment_metadata( $post->ID );
|
1140 |
+
|
1141 |
+
$value = apply_filters( 'mla_file_metadata_meta_box', array( 'value' => $value, 'rows' => 5, 'cols' => 80 ), $post );
|
1142 |
+
|
1143 |
+
$html = '<label class="screen-reader-text" for="mla_file_metadata">' . __( 'Attachment File Metadata', 'media-library-assistant' ) . '</label><textarea class="readonly" id="mla_file_metadata" rows="' . absint( $value['rows'] ) . '" cols="' . absint( $value['cols'] ) . '" readonly="readonly" name="mla_file_metadata" >' . esc_textarea( $value['value'] ) . "</textarea>\n";
|
1144 |
+
echo apply_filters( 'mla_file_metadata_meta_box_html', $html, $value, $post ); // phpcs:ignore
|
1145 |
+
}
|
1146 |
+
|
1147 |
/**
|
1148 |
* Renders the Featured in meta box on the Edit Media page.
|
1149 |
* Declared public because it is a callback function.
|
includes/class-mla-main.php
CHANGED
@@ -20,7 +20,7 @@ if ( !function_exists( 'post_categories_meta_box' ) ) {
|
|
20 |
*/
|
21 |
class MLA {
|
22 |
/**
|
23 |
-
* Current date for Development
|
24 |
*
|
25 |
* @since 2.10
|
26 |
*
|
@@ -1898,7 +1898,11 @@ class MLA {
|
|
1898 |
$custom_fields = array();
|
1899 |
foreach ( MLACore::mla_custom_field_support( 'quick_edit' ) as $slug => $details ) {
|
1900 |
if ( isset( $_REQUEST[ $slug ] ) ) {
|
1901 |
-
|
|
|
|
|
|
|
|
|
1902 |
unset ( $_REQUEST[ $slug ] );
|
1903 |
|
1904 |
// '(Array)' indicates an existing array value in the field, which we preserve
|
20 |
*/
|
21 |
class MLA {
|
22 |
/**
|
23 |
+
* Current date for Development Versions, empty for production versions
|
24 |
*
|
25 |
* @since 2.10
|
26 |
*
|
1898 |
$custom_fields = array();
|
1899 |
foreach ( MLACore::mla_custom_field_support( 'quick_edit' ) as $slug => $details ) {
|
1900 |
if ( isset( $_REQUEST[ $slug ] ) ) {
|
1901 |
+
if ( current_user_can( 'unfiltered_html' ) ) {
|
1902 |
+
$value = trim( wp_unslash( $_REQUEST[ $slug ] ) ); // phpcs:ignore
|
1903 |
+
} else {
|
1904 |
+
$value = trim( wp_kses( wp_unslash( $_REQUEST[ $slug ] ), 'post' ) );
|
1905 |
+
}
|
1906 |
unset ( $_REQUEST[ $slug ] );
|
1907 |
|
1908 |
// '(Array)' indicates an existing array value in the field, which we preserve
|
includes/class-mla-objects.php
CHANGED
@@ -155,6 +155,7 @@ class MLAObjects {
|
|
155 |
$columns[ 'attachments' ] = __( 'Attachments', 'media-library-assistant' );
|
156 |
|
157 |
if ( 'checked' === MLACore::mla_get_option( MLACoreOptions::MLA_DEBUG_ADD_TAXONOMY_COLUMNS ) ) {
|
|
|
158 |
$columns[ 'termid' ] = __( 'Term ID', 'media-library-assistant' );
|
159 |
$columns[ 'ttid' ] = __( 'Term-Tax ID', 'media-library-assistant' );
|
160 |
}
|
@@ -195,28 +196,26 @@ class MLAObjects {
|
|
195 |
return $filter_content;
|
196 |
}
|
197 |
|
198 |
-
|
199 |
-
|
200 |
-
if ( 'termid' === $column_name ) {
|
201 |
-
return (string) $term_id;
|
202 |
-
}
|
203 |
-
|
204 |
-
if ( 'ttid' === $column_name ) {
|
205 |
-
if ( isset( $terms[ $term_id ] ) ) {
|
206 |
-
$term = $terms[ $term_id ];
|
207 |
-
} else {
|
208 |
-
$term = get_term( $term_id, $taxonomy );
|
209 |
-
}
|
210 |
-
|
211 |
-
return (string) $term->term_taxonomy_id;
|
212 |
}
|
213 |
-
|
214 |
|
215 |
-
if (
|
216 |
-
|
|
|
|
|
217 |
}
|
218 |
|
219 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
220 |
if ( NULL == $tax_object ) {
|
221 |
// Adding or inline-editing a tag is done with AJAX, and there's no current screen object
|
222 |
if ( defined('DOING_AJAX') && DOING_AJAX ) {
|
@@ -240,7 +239,7 @@ class MLAObjects {
|
|
240 |
|
241 |
$cloud = MLAShortcodes::mla_get_terms( array(
|
242 |
'taxonomy' => $taxonomy,
|
243 |
-
'fields' => 't.term_id, tt.term_taxonomy_id, t.name, t.slug, COUNT(p.ID) AS `count`',
|
244 |
'number' => 0,
|
245 |
'no_orderby' => true
|
246 |
) );
|
155 |
$columns[ 'attachments' ] = __( 'Attachments', 'media-library-assistant' );
|
156 |
|
157 |
if ( 'checked' === MLACore::mla_get_option( MLACoreOptions::MLA_DEBUG_ADD_TAXONOMY_COLUMNS ) ) {
|
158 |
+
$columns[ 'parent' ] = __( 'Parent', 'media-library-assistant' );
|
159 |
$columns[ 'termid' ] = __( 'Term ID', 'media-library-assistant' );
|
160 |
$columns[ 'ttid' ] = __( 'Term-Tax ID', 'media-library-assistant' );
|
161 |
}
|
196 |
return $filter_content;
|
197 |
}
|
198 |
|
199 |
+
if ( !in_array( $column_name, array( 'attachments', 'parent', 'termid', 'ttid' ) ) ) {
|
200 |
+
return $current_value;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
201 |
}
|
|
|
202 |
|
203 |
+
if ( isset( $terms[ $term_id ] ) ) {
|
204 |
+
$term = $terms[ $term_id ];
|
205 |
+
} else {
|
206 |
+
$term = $terms[ $term_id ] = get_term( $term_id, $taxonomy );
|
207 |
}
|
208 |
|
209 |
+
switch ( $column_name ) {
|
210 |
+
case 'parent':
|
211 |
+
return (string) $term->parent;
|
212 |
+
case 'termid':
|
213 |
+
return (string) $term_id;
|
214 |
+
case 'ttid':
|
215 |
+
return (string) $term->term_taxonomy_id;
|
216 |
+
}
|
217 |
+
|
218 |
+
// Do "attachments" setup tasks once per page load
|
219 |
if ( NULL == $tax_object ) {
|
220 |
// Adding or inline-editing a tag is done with AJAX, and there's no current screen object
|
221 |
if ( defined('DOING_AJAX') && DOING_AJAX ) {
|
239 |
|
240 |
$cloud = MLAShortcodes::mla_get_terms( array(
|
241 |
'taxonomy' => $taxonomy,
|
242 |
+
'fields' => 't.term_id, tt.term_taxonomy_id, t.name, t.slug, tt.parent, COUNT(p.ID) AS `count`',
|
243 |
'number' => 0,
|
244 |
'no_orderby' => true
|
245 |
) );
|
includes/class-mla-options.php
CHANGED
@@ -1419,6 +1419,8 @@ class MLAOptions {
|
|
1419 |
* @return array Updates suitable for MLAData::mla_update_single_item, if any
|
1420 |
*/
|
1421 |
public static function mla_evaluate_iptc_exif_mapping( $post, $category, $settings = NULL, $attachment_metadata = NULL, $is_upload = false ) {
|
|
|
|
|
1422 |
if ( 'checked' != MLACore::mla_get_option( MLACoreOptions::MLA_ALLOW_IPTC_EXIF_MAPPING ) ) {
|
1423 |
return array();
|
1424 |
}
|
@@ -1444,7 +1446,10 @@ class MLAOptions {
|
|
1444 |
|
1445 |
$settings = apply_filters( 'mla_mapping_settings', $settings, $post->ID, $category, $attachment_metadata );
|
1446 |
|
1447 |
-
|
|
|
|
|
|
|
1448 |
|
1449 |
if ( $update_all || ( 'iptc_exif_standard_mapping' == $category ) ) {
|
1450 |
foreach ( $settings['standard'] as $setting_key => $setting_value ) {
|
1419 |
* @return array Updates suitable for MLAData::mla_update_single_item, if any
|
1420 |
*/
|
1421 |
public static function mla_evaluate_iptc_exif_mapping( $post, $category, $settings = NULL, $attachment_metadata = NULL, $is_upload = false ) {
|
1422 |
+
static $log_settings = true;
|
1423 |
+
|
1424 |
if ( 'checked' != MLACore::mla_get_option( MLACoreOptions::MLA_ALLOW_IPTC_EXIF_MAPPING ) ) {
|
1425 |
return array();
|
1426 |
}
|
1446 |
|
1447 |
$settings = apply_filters( 'mla_mapping_settings', $settings, $post->ID, $category, $attachment_metadata );
|
1448 |
|
1449 |
+
if ( $log_settings ) {
|
1450 |
+
MLACore::mla_debug_add( __LINE__ . " MLAOptions::mla_evaluate_iptc_exif_mapping( {$post->ID}, {$category}, {$data_source_category} ) \$settings = " . var_export( $settings, true ), MLACore::MLA_DEBUG_CATEGORY_METADATA );
|
1451 |
+
$log_settings = false; // once per page load
|
1452 |
+
}
|
1453 |
|
1454 |
if ( $update_all || ( 'iptc_exif_standard_mapping' == $category ) ) {
|
1455 |
foreach ( $settings['standard'] as $setting_key => $setting_value ) {
|
includes/class-mla-settings-iptc-exif-tab.php
CHANGED
@@ -49,6 +49,29 @@ class MLASettings_IPTCEXIF {
|
|
49 |
$use_spinner_class = version_compare( get_bloginfo( 'version' ), '4.2', '>=' );
|
50 |
$suffix = defined('SCRIPT_DEBUG') && SCRIPT_DEBUG ? '' : '.min';
|
51 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
52 |
// Initialize variables for mapping scripts
|
53 |
$script_variables = array(
|
54 |
'error' => __( 'Error while making the changes.', 'media-library-assistant' ),
|
@@ -72,8 +95,9 @@ class MLASettings_IPTCEXIF {
|
|
72 |
'screen' => 'settings_page_mla-settings-menu-iptc_exif',
|
73 |
'ajax_action' => MLASettings::JAVASCRIPT_INLINE_MAPPING_IPTC_EXIF_SLUG,
|
74 |
'fieldsId' => '#mla-display-settings-iptc-exif-tab',
|
75 |
-
'totalItems' => $
|
76 |
);
|
|
|
77 |
|
78 |
wp_enqueue_script( MLASettings::JAVASCRIPT_INLINE_MAPPING_IPTC_EXIF_SLUG,
|
79 |
MLA_PLUGIN_URL . "js/mla-inline-mapping-scripts{$suffix}.js",
|
@@ -176,13 +200,21 @@ class MLASettings_IPTCEXIF {
|
|
176 |
);
|
177 |
}
|
178 |
|
179 |
-
$query = array(
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
180 |
|
181 |
if ( $length > 0 ) {
|
182 |
$query['numberposts'] = $length;
|
183 |
$query['offset'] = $offset;
|
184 |
}
|
185 |
|
|
|
186 |
do_action( 'mla_begin_mapping', $source, NULL );
|
187 |
$posts = MLAShortcodes::mla_get_shortcode_attachments( 0, $query );
|
188 |
|
@@ -974,7 +1006,7 @@ class MLASettings_IPTCEXIF {
|
|
974 |
* @return void echo json response object, then die()
|
975 |
*/
|
976 |
public static function mla_inline_mapping_iptc_exif_action() {
|
977 |
-
MLACore::mla_debug_add( 'MLASettings_IPTCEXIF::mla_inline_mapping_custom_action $_REQUEST = ' . var_export( $_REQUEST, true ), MLACore::MLA_DEBUG_CATEGORY_AJAX );
|
978 |
if ( isset( $_REQUEST['screen'] ) ) {
|
979 |
set_current_screen( sanitize_text_field( wp_unslash( $_REQUEST['screen'] ) ) );
|
980 |
}
|
@@ -1038,7 +1070,7 @@ class MLASettings_IPTCEXIF {
|
|
1038 |
'refresh' => isset( $page_content['refresh'] ) && true == $page_content['refresh'],
|
1039 |
);
|
1040 |
|
1041 |
-
MLACore::mla_debug_add( 'MLASettings::mla_inline_mapping_custom_action $chunk_results = ' . var_export( $chunk_results, true ), MLACore::MLA_DEBUG_CATEGORY_AJAX );
|
1042 |
wp_send_json_success( $chunk_results );
|
1043 |
} // mla_inline_mapping_iptc_exif_action
|
1044 |
|
49 |
$use_spinner_class = version_compare( get_bloginfo( 'version' ), '4.2', '>=' );
|
50 |
$suffix = defined('SCRIPT_DEBUG') && SCRIPT_DEBUG ? '' : '.min';
|
51 |
|
52 |
+
// Compute totalItems that will match the mapping query
|
53 |
+
$query = array (
|
54 |
+
'orderby' => 'none',
|
55 |
+
'post_parent' => 'all',
|
56 |
+
'post_mime_type' => 'image,application/*pdf*',
|
57 |
+
'cache_results' => false,
|
58 |
+
'update_post_meta_cache' => false,
|
59 |
+
'update_post_term_cache' => false,
|
60 |
+
'post_type' => 'attachment',
|
61 |
+
'post_status' => 'inherit',
|
62 |
+
'posts_per_page' => 1,
|
63 |
+
'fields' => 'ids',
|
64 |
+
);
|
65 |
+
|
66 |
+
$posts = MLAShortcodes::mla_get_shortcode_attachments( 0, $query, true );
|
67 |
+
MLACore::mla_debug_add( __LINE__ . " MLASettings_IPTCEXIF::mla_admin_enqueue_scripts \$posts = " . var_export( $posts, true ), MLACore::MLA_DEBUG_CATEGORY_METADATA );
|
68 |
+
|
69 |
+
if ( isset( $posts['found_rows'] ) ) {
|
70 |
+
$total_items = $posts['found_rows'];
|
71 |
+
} else {
|
72 |
+
$total_items = $wpdb->get_var( "SELECT COUNT(*) FROM {$wpdb->posts} WHERE `post_type` = 'attachment' AND `post_status` = 'inherit' AND ( `post_mime_type` LIKE 'image/%' OR `post_mime_type` LIKE 'application/%pdf%' )" );
|
73 |
+
}
|
74 |
+
|
75 |
// Initialize variables for mapping scripts
|
76 |
$script_variables = array(
|
77 |
'error' => __( 'Error while making the changes.', 'media-library-assistant' ),
|
95 |
'screen' => 'settings_page_mla-settings-menu-iptc_exif',
|
96 |
'ajax_action' => MLASettings::JAVASCRIPT_INLINE_MAPPING_IPTC_EXIF_SLUG,
|
97 |
'fieldsId' => '#mla-display-settings-iptc-exif-tab',
|
98 |
+
'totalItems' => $total_items,
|
99 |
);
|
100 |
+
MLACore::mla_debug_add( __LINE__ . " MLASettings_IPTCEXIF::mla_admin_enqueue_scripts \$script_variables = " . var_export( $script_variables, true ), MLACore::MLA_DEBUG_CATEGORY_METADATA );
|
101 |
|
102 |
wp_enqueue_script( MLASettings::JAVASCRIPT_INLINE_MAPPING_IPTC_EXIF_SLUG,
|
103 |
MLA_PLUGIN_URL . "js/mla-inline-mapping-scripts{$suffix}.js",
|
200 |
);
|
201 |
}
|
202 |
|
203 |
+
$query = array(
|
204 |
+
'orderby' => 'none',
|
205 |
+
'post_parent' => 'all',
|
206 |
+
'post_mime_type' => 'image,application/*pdf*',
|
207 |
+
'cache_results' => false,
|
208 |
+
'update_post_meta_cache' => false,
|
209 |
+
'update_post_term_cache' => false,
|
210 |
+
);
|
211 |
|
212 |
if ( $length > 0 ) {
|
213 |
$query['numberposts'] = $length;
|
214 |
$query['offset'] = $offset;
|
215 |
}
|
216 |
|
217 |
+
MLACore::mla_debug_add( __LINE__ . " MLASettings_IPTCEXIF::_process_iptc_exif_mapping \$query = " . var_export( $query, true ), MLACore::MLA_DEBUG_CATEGORY_METADATA );
|
218 |
do_action( 'mla_begin_mapping', $source, NULL );
|
219 |
$posts = MLAShortcodes::mla_get_shortcode_attachments( 0, $query );
|
220 |
|
1006 |
* @return void echo json response object, then die()
|
1007 |
*/
|
1008 |
public static function mla_inline_mapping_iptc_exif_action() {
|
1009 |
+
// MLACore::mla_debug_add( __LINE__ . ' MLASettings_IPTCEXIF::mla_inline_mapping_custom_action $_REQUEST = ' . var_export( $_REQUEST, true ), MLACore::MLA_DEBUG_CATEGORY_AJAX );
|
1010 |
if ( isset( $_REQUEST['screen'] ) ) {
|
1011 |
set_current_screen( sanitize_text_field( wp_unslash( $_REQUEST['screen'] ) ) );
|
1012 |
}
|
1070 |
'refresh' => isset( $page_content['refresh'] ) && true == $page_content['refresh'],
|
1071 |
);
|
1072 |
|
1073 |
+
MLACore::mla_debug_add( __LINE__ . ' MLASettings::mla_inline_mapping_custom_action $chunk_results = ' . var_export( $chunk_results, true ), MLACore::MLA_DEBUG_CATEGORY_AJAX );
|
1074 |
wp_send_json_success( $chunk_results );
|
1075 |
} // mla_inline_mapping_iptc_exif_action
|
1076 |
|
includes/class-mla-shortcode-support.php
CHANGED
@@ -212,11 +212,11 @@ class MLAShortcode_Support {
|
|
212 |
if ( $src = wp_mime_type_icon( $attachment_id ) ) {
|
213 |
/** This filter is documented in wp-includes/post.php */
|
214 |
$icon_dir = apply_filters( 'icon_dir', ABSPATH . WPINC . '/images/media' );
|
215 |
-
|
216 |
$src_file = $icon_dir . '/' . wp_basename( $src );
|
217 |
@list( $width, $height ) = getimagesize( $src_file );
|
218 |
}
|
219 |
-
|
220 |
if ( $src && $width && $height ) {
|
221 |
$image = array( $src, $width, $height );
|
222 |
}
|
@@ -251,7 +251,7 @@ class MLAShortcode_Support {
|
|
251 |
if ( is_string( $attr ) ) {
|
252 |
$attr = shortcode_parse_atts( $attr );
|
253 |
}
|
254 |
-
|
255 |
if ( empty( $attr ) ) {
|
256 |
$attr = array();
|
257 |
}
|
@@ -481,6 +481,7 @@ class MLAShortcode_Support {
|
|
481 |
|
482 |
// These arguments must not be passed on to alternate gallery shortcodes
|
483 |
$mla_arguments = array_merge( array(
|
|
|
484 |
'mla_output' => 'gallery',
|
485 |
'mla_style' => MLACore::mla_get_option('default_style'),
|
486 |
'mla_markup' => MLACore::mla_get_option('default_markup'),
|
@@ -736,6 +737,17 @@ class MLAShortcode_Support {
|
|
736 |
$found_rows = $current_rows;
|
737 |
}
|
738 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
739 |
if ( ( $is_gallery && empty($attachments) ) || ( $is_pagination && empty( $found_rows ) ) ) {
|
740 |
if ( self::$mla_debug ) {
|
741 |
MLACore::mla_debug_add( __LINE__ . ' <strong>' . __( 'mla_debug empty gallery', 'media-library-assistant' ) . '</strong>, query = ' . var_export( $attr, true ) );
|
@@ -1378,12 +1390,12 @@ class MLAShortcode_Support {
|
|
1378 |
}
|
1379 |
} else {
|
1380 |
$thumbnail_content = $attachment->post_title;
|
1381 |
-
|
1382 |
if ( ( 'none' !== $arguments['size'] ) && ( 'checked' == MLACore::mla_get_option( 'enable_featured_image' ) ) ) {
|
1383 |
// Look for the "Featured Image" as an alternate thumbnail for PDFs, etc.
|
1384 |
$thumb = get_the_post_thumbnail( $attachment->ID, $size, array( 'class' => 'attachment-thumbnail' ) );
|
1385 |
$thumb = apply_filters( 'mla_gallery_featured_image', $thumb, $attachment, $size, $item_values );
|
1386 |
-
|
1387 |
if ( ! empty( $thumb ) ) {
|
1388 |
$thumbnail_content = $thumb;
|
1389 |
}
|
@@ -1665,7 +1677,7 @@ class MLAShortcode_Support {
|
|
1665 |
$item_values['thumbnail_width'] = '';
|
1666 |
$item_values['thumbnail_height'] = '';
|
1667 |
$item_values['thumbnail_url'] = '';
|
1668 |
-
|
1669 |
/* Replaced by logic in _get_attachment_image_src v2.90
|
1670 |
if ( ( 'none' !== $arguments['size'] ) && ( 'checked' == MLACore::mla_get_option( 'enable_featured_image' ) ) ) {
|
1671 |
// Look for the "Featured Image" as an alternate thumbnail for PDFs, etc.
|
@@ -1976,8 +1988,8 @@ class MLAShortcode_Support {
|
|
1976 |
'default_size' => 12,
|
1977 |
'unit' => 'pt',
|
1978 |
'separator' => "\n",
|
1979 |
-
'single_text' => '%
|
1980 |
-
'multiple_text' => '%
|
1981 |
|
1982 |
'echo' => false,
|
1983 |
'link' => 'view',
|
@@ -2756,7 +2768,8 @@ class MLAShortcode_Support {
|
|
2756 |
$item_values['taxonomy'] = $tag->taxonomy;
|
2757 |
$item_values['description'] = wptexturize( $tag->description );
|
2758 |
$item_values['parent'] = $tag->parent;
|
2759 |
-
$item_values['count'] = isset ( $tag->count ) ? $tag->count : 0;
|
|
|
2760 |
$item_values['scaled_count'] = $tag->scaled_count;
|
2761 |
|
2762 |
if ( in_array( $tag->slug, array( 'ignore.terms.assigned', 'no.terms.assigned', 'any.terms.assigned' ) ) ) {
|
@@ -3133,7 +3146,8 @@ class MLAShortcode_Support {
|
|
3133 |
$item_values['taxonomy'] = $term->taxonomy;
|
3134 |
$item_values['description'] = wptexturize( $term->description );
|
3135 |
$item_values['parent'] = $term->parent;
|
3136 |
-
$item_values['count'] = isset ( $term->count ) ?
|
|
|
3137 |
$item_values['link_url'] = $term->link;
|
3138 |
$item_values['currentlink_url'] = sprintf( '%1$s%2$scurrent_item=%3$d', $item_values['page_url'], $current_item_delimiter, $item_values['term_id'] );
|
3139 |
$item_values['editlink_url'] = $term->edit_link;
|
@@ -3221,9 +3235,11 @@ class MLAShortcode_Support {
|
|
3221 |
// Ignore option- all,any_terms,no_terms
|
3222 |
if ( -1 !== $item_values['count'] ) {
|
3223 |
$item_values['rollover_text'] = sprintf( _n( $item_values['single_text'], $item_values['multiple_text'], $item_values['count'], 'media-library-assistant' ), number_format_i18n( $item_values['count'] ) );
|
3224 |
-
|
3225 |
-
|
3226 |
-
|
|
|
|
|
3227 |
}
|
3228 |
|
3229 |
if ( ! empty( $arguments['mla_link_href'] ) ) {
|
@@ -3440,8 +3456,8 @@ class MLAShortcode_Support {
|
|
3440 |
'hierarchical' => 'true',
|
3441 |
|
3442 |
'separator' => "\n",
|
3443 |
-
'single_text' => '%
|
3444 |
-
'multiple_text' => '%
|
3445 |
'link' => 'current',
|
3446 |
'current_item' => '',
|
3447 |
'active_item_class' => 'mla_active_item',
|
@@ -4624,7 +4640,7 @@ class MLAShortcode_Support {
|
|
4624 |
// Validate the query arguments to prevent cross-site scripting (reflection) attacks
|
4625 |
$test_query = array();
|
4626 |
parse_str( strval( $uri_query ), $test_query );
|
4627 |
-
|
4628 |
$clean_query = array();
|
4629 |
foreach ( $test_query as $test_key => $test_value ) {
|
4630 |
// Query argument names cannot have URL special characters
|
@@ -5281,7 +5297,7 @@ class MLAShortcode_Support {
|
|
5281 |
if ( empty( $terms ) || ( $terms === '-3' ) || ( is_array( $terms ) && in_array( '-3', $terms ) ) ) {
|
5282 |
$terms = 'ignore.terms.assigned';
|
5283 |
}
|
5284 |
-
|
5285 |
if ( ( $terms === 'ignore.terms.assigned' ) || ( is_array( $terms ) && in_array( 'ignore.terms.assigned', $terms ) ) ) {
|
5286 |
unset( $tax_query[ $tax_query_key ] );
|
5287 |
continue;
|
@@ -5290,26 +5306,26 @@ class MLAShortcode_Support {
|
|
5290 |
if ( ( $terms === '-1' ) || ( is_array( $terms ) && in_array( '-1', $terms ) ) ) {
|
5291 |
$terms = 'no.terms.assigned';
|
5292 |
}
|
5293 |
-
|
5294 |
if ( ( $terms === 'no.terms.assigned' ) || ( is_array( $terms ) && in_array( 'no.terms.assigned', $terms ) ) ) {
|
5295 |
$tax_query[ $tax_query_key ] = array(
|
5296 |
'taxonomy' => $tax_query_taxonomy,
|
5297 |
'operator' => 'NOT EXISTS',
|
5298 |
);
|
5299 |
-
|
5300 |
continue;
|
5301 |
}
|
5302 |
|
5303 |
if ( ( $terms === '-2' ) || ( is_array( $terms ) && in_array( '-2', $terms ) ) ) {
|
5304 |
$terms = 'any.terms.assigned';
|
5305 |
}
|
5306 |
-
|
5307 |
if ( ( $terms === 'any.terms.assigned' ) || ( is_array( $terms ) && in_array( 'any.terms.assigned', $terms ) ) ) {
|
5308 |
$tax_query[ $tax_query_key ] = array(
|
5309 |
'taxonomy' => $tax_query_taxonomy,
|
5310 |
'operator' => 'EXISTS',
|
5311 |
);
|
5312 |
-
|
5313 |
continue;
|
5314 |
}
|
5315 |
} // isset( terms )
|
@@ -5344,7 +5360,7 @@ class MLAShortcode_Support {
|
|
5344 |
if ( is_string( $value ) ) {
|
5345 |
$value = explode( ',', $value );
|
5346 |
}
|
5347 |
-
|
5348 |
$simple_tax_queries[ $key ] = implode(',', array_filter( array_map( 'trim', $value ) ) );
|
5349 |
if ( in_array( $simple_tax_queries[ $key ], array( 'ignore.terms.assigned', '-3', 'no.terms.assigned', '-1', 'any.terms.assigned', '-2' ) ) ) {
|
5350 |
$terms_assigned_query = true;
|
@@ -5355,7 +5371,7 @@ class MLAShortcode_Support {
|
|
5355 |
if ( is_string( $value ) ) {
|
5356 |
$value = explode( ',', $value );
|
5357 |
}
|
5358 |
-
|
5359 |
$simple_tax_queries[ $key ] = implode(',', array_filter( array_map( 'trim', $value ) ) );
|
5360 |
if ( in_array( $simple_tax_queries[ $key ], array( 'ignore.terms.assigned', '-3', 'no.terms.assigned', '-1', 'any.terms.assigned', '-2' ) ) ) {
|
5361 |
$terms_assigned_query = true;
|
@@ -6091,7 +6107,7 @@ class MLAShortcode_Support {
|
|
6091 |
// Suppress WordPress WP_Query LEFT JOIN on post_parent, etc.
|
6092 |
$query_arguments['post_type'] = 'mladisabletaxjoin';
|
6093 |
}
|
6094 |
-
|
6095 |
if ( defined('RML_FILE') ) {
|
6096 |
if ( $arguments['mla_allow_rml'] ) {
|
6097 |
add_filter( 'posts_clauses', 'MLAShortcode_Support::mla_shortcode_query_posts_clauses_rml_filter', 9, 2 );
|
@@ -6484,14 +6500,16 @@ class MLAShortcode_Support {
|
|
6484 |
$clause[] = $wpdb->prepare( 'AND p.post_status IN ( ' . join( ',', $placeholders ) . ' )', $clause_parameters );
|
6485 |
|
6486 |
// Add optional post_mime_type constraint
|
6487 |
-
if ( 'all'
|
|
|
|
|
6488 |
$post_mimes = wp_post_mime_type_where( $arguments['post_mime_type'], 'p' );
|
6489 |
$clause[] = str_replace( '%', '%%', $post_mimes );
|
6490 |
}
|
6491 |
|
6492 |
$query = join(' ', $clause);
|
6493 |
$results = $wpdb->get_results( $query );
|
6494 |
-
|
6495 |
if ( is_wp_error( $results ) ) {
|
6496 |
$results = array(
|
6497 |
'ignore.terms.assigned' => 0,
|
@@ -6801,7 +6819,9 @@ class MLAShortcode_Support {
|
|
6801 |
$clause[] = "AND tt.parent = '{$parent}'";
|
6802 |
}
|
6803 |
|
6804 |
-
if ( 'all'
|
|
|
|
|
6805 |
$post_mimes = wp_post_mime_type_where( $arguments['post_mime_type'], 'p' );
|
6806 |
$where = str_replace( '%', '%%', $post_mimes );
|
6807 |
|
@@ -7275,22 +7295,14 @@ class MLAShortcode_Support {
|
|
7275 |
return;
|
7276 |
}
|
7277 |
|
7278 |
-
/*/ WordPress "private" function, in /wp-includes/taxonomy.php array( term_id => array( child_ids ) )
|
7279 |
-
$term_hier = _get_term_hierarchy( $taxonomy );
|
7280 |
-
|
7281 |
-
if ( empty( $term_hier ) ) {
|
7282 |
-
return;
|
7283 |
-
} // */
|
7284 |
-
|
7285 |
$terms_by_id = array(); // key term_id, value = reference to term object
|
7286 |
$term_ids = array(); // key term_taxonomy_id, value = term_id
|
7287 |
-
$term_items = array(); // key term_id
|
7288 |
|
7289 |
-
// foreach ( (array) $terms as $key => $term ) {
|
7290 |
foreach ( $terms as $key => $term ) {
|
7291 |
if ( is_integer( $key ) ) {
|
7292 |
-
$terms_by_id[$term->term_id] = & $terms[$key];
|
7293 |
-
$term_ids[$term->term_taxonomy_id] = $term->term_id;
|
7294 |
}
|
7295 |
}
|
7296 |
|
@@ -7328,9 +7340,10 @@ class MLAShortcode_Support {
|
|
7328 |
}
|
7329 |
}
|
7330 |
|
7331 |
-
// Transfer the touched cells
|
7332 |
foreach ( (array) $term_items as $id => $items ) {
|
7333 |
if ( isset( $terms_by_id[ $id ] ) ) {
|
|
|
7334 |
$terms_by_id[ $id ]->count = count( $items );
|
7335 |
}
|
7336 |
}
|
212 |
if ( $src = wp_mime_type_icon( $attachment_id ) ) {
|
213 |
/** This filter is documented in wp-includes/post.php */
|
214 |
$icon_dir = apply_filters( 'icon_dir', ABSPATH . WPINC . '/images/media' );
|
215 |
+
|
216 |
$src_file = $icon_dir . '/' . wp_basename( $src );
|
217 |
@list( $width, $height ) = getimagesize( $src_file );
|
218 |
}
|
219 |
+
|
220 |
if ( $src && $width && $height ) {
|
221 |
$image = array( $src, $width, $height );
|
222 |
}
|
251 |
if ( is_string( $attr ) ) {
|
252 |
$attr = shortcode_parse_atts( $attr );
|
253 |
}
|
254 |
+
|
255 |
if ( empty( $attr ) ) {
|
256 |
$attr = array();
|
257 |
}
|
481 |
|
482 |
// These arguments must not be passed on to alternate gallery shortcodes
|
483 |
$mla_arguments = array_merge( array(
|
484 |
+
'mla_minimum' => '0',
|
485 |
'mla_output' => 'gallery',
|
486 |
'mla_style' => MLACore::mla_get_option('default_style'),
|
487 |
'mla_markup' => MLACore::mla_get_option('default_markup'),
|
737 |
$found_rows = $current_rows;
|
738 |
}
|
739 |
|
740 |
+
$mla_minimum = absint( $arguments['mla_minimum'] );
|
741 |
+
if ( 0 < $mla_minimum ) {
|
742 |
+
if ( $is_gallery && ( empty($attachments) || count($attachments) < $mla_minimum ) ) {
|
743 |
+
$attachments = array();
|
744 |
+
}
|
745 |
+
|
746 |
+
if ( $is_pagination && empty( $found_rows ) || $found_rows < $mla_minimum ) {
|
747 |
+
$found_rows = 0;
|
748 |
+
}
|
749 |
+
}
|
750 |
+
|
751 |
if ( ( $is_gallery && empty($attachments) ) || ( $is_pagination && empty( $found_rows ) ) ) {
|
752 |
if ( self::$mla_debug ) {
|
753 |
MLACore::mla_debug_add( __LINE__ . ' <strong>' . __( 'mla_debug empty gallery', 'media-library-assistant' ) . '</strong>, query = ' . var_export( $attr, true ) );
|
1390 |
}
|
1391 |
} else {
|
1392 |
$thumbnail_content = $attachment->post_title;
|
1393 |
+
|
1394 |
if ( ( 'none' !== $arguments['size'] ) && ( 'checked' == MLACore::mla_get_option( 'enable_featured_image' ) ) ) {
|
1395 |
// Look for the "Featured Image" as an alternate thumbnail for PDFs, etc.
|
1396 |
$thumb = get_the_post_thumbnail( $attachment->ID, $size, array( 'class' => 'attachment-thumbnail' ) );
|
1397 |
$thumb = apply_filters( 'mla_gallery_featured_image', $thumb, $attachment, $size, $item_values );
|
1398 |
+
|
1399 |
if ( ! empty( $thumb ) ) {
|
1400 |
$thumbnail_content = $thumb;
|
1401 |
}
|
1677 |
$item_values['thumbnail_width'] = '';
|
1678 |
$item_values['thumbnail_height'] = '';
|
1679 |
$item_values['thumbnail_url'] = '';
|
1680 |
+
|
1681 |
/* Replaced by logic in _get_attachment_image_src v2.90
|
1682 |
if ( ( 'none' !== $arguments['size'] ) && ( 'checked' == MLACore::mla_get_option( 'enable_featured_image' ) ) ) {
|
1683 |
// Look for the "Featured Image" as an alternate thumbnail for PDFs, etc.
|
1988 |
'default_size' => 12,
|
1989 |
'unit' => 'pt',
|
1990 |
'separator' => "\n",
|
1991 |
+
'single_text' => '%s item',
|
1992 |
+
'multiple_text' => '%s items',
|
1993 |
|
1994 |
'echo' => false,
|
1995 |
'link' => 'view',
|
2768 |
$item_values['taxonomy'] = $tag->taxonomy;
|
2769 |
$item_values['description'] = wptexturize( $tag->description );
|
2770 |
$item_values['parent'] = $tag->parent;
|
2771 |
+
$item_values['count'] = isset ( $tag->count ) ? (integer) $tag->count : 0;
|
2772 |
+
$item_values['term_count'] = isset ( $tag->term_count ) ? (integer) $tag->term_count : 0;
|
2773 |
$item_values['scaled_count'] = $tag->scaled_count;
|
2774 |
|
2775 |
if ( in_array( $tag->slug, array( 'ignore.terms.assigned', 'no.terms.assigned', 'any.terms.assigned' ) ) ) {
|
3146 |
$item_values['taxonomy'] = $term->taxonomy;
|
3147 |
$item_values['description'] = wptexturize( $term->description );
|
3148 |
$item_values['parent'] = $term->parent;
|
3149 |
+
$item_values['count'] = isset ( $term->count ) ? (integer) $term->count : 0;
|
3150 |
+
$item_values['term_count'] = isset ( $term->term_count ) ? (integer) $term->term_count : 0;
|
3151 |
$item_values['link_url'] = $term->link;
|
3152 |
$item_values['currentlink_url'] = sprintf( '%1$s%2$scurrent_item=%3$d', $item_values['page_url'], $current_item_delimiter, $item_values['term_id'] );
|
3153 |
$item_values['editlink_url'] = $term->edit_link;
|
3235 |
// Ignore option- all,any_terms,no_terms
|
3236 |
if ( -1 !== $item_values['count'] ) {
|
3237 |
$item_values['rollover_text'] = sprintf( _n( $item_values['single_text'], $item_values['multiple_text'], $item_values['count'], 'media-library-assistant' ), number_format_i18n( $item_values['count'] ) );
|
3238 |
+
|
3239 |
+
}
|
3240 |
+
|
3241 |
+
if ( ! empty( $arguments['mla_rollover_text'] ) ) {
|
3242 |
+
$item_values['rollover_text'] = esc_attr( self::_process_shortcode_parameter( $arguments['mla_rollover_text'], $item_values ) );
|
3243 |
}
|
3244 |
|
3245 |
if ( ! empty( $arguments['mla_link_href'] ) ) {
|
3456 |
'hierarchical' => 'true',
|
3457 |
|
3458 |
'separator' => "\n",
|
3459 |
+
'single_text' => '%s item',
|
3460 |
+
'multiple_text' => '%s items',
|
3461 |
'link' => 'current',
|
3462 |
'current_item' => '',
|
3463 |
'active_item_class' => 'mla_active_item',
|
4640 |
// Validate the query arguments to prevent cross-site scripting (reflection) attacks
|
4641 |
$test_query = array();
|
4642 |
parse_str( strval( $uri_query ), $test_query );
|
4643 |
+
|
4644 |
$clean_query = array();
|
4645 |
foreach ( $test_query as $test_key => $test_value ) {
|
4646 |
// Query argument names cannot have URL special characters
|
5297 |
if ( empty( $terms ) || ( $terms === '-3' ) || ( is_array( $terms ) && in_array( '-3', $terms ) ) ) {
|
5298 |
$terms = 'ignore.terms.assigned';
|
5299 |
}
|
5300 |
+
|
5301 |
if ( ( $terms === 'ignore.terms.assigned' ) || ( is_array( $terms ) && in_array( 'ignore.terms.assigned', $terms ) ) ) {
|
5302 |
unset( $tax_query[ $tax_query_key ] );
|
5303 |
continue;
|
5306 |
if ( ( $terms === '-1' ) || ( is_array( $terms ) && in_array( '-1', $terms ) ) ) {
|
5307 |
$terms = 'no.terms.assigned';
|
5308 |
}
|
5309 |
+
|
5310 |
if ( ( $terms === 'no.terms.assigned' ) || ( is_array( $terms ) && in_array( 'no.terms.assigned', $terms ) ) ) {
|
5311 |
$tax_query[ $tax_query_key ] = array(
|
5312 |
'taxonomy' => $tax_query_taxonomy,
|
5313 |
'operator' => 'NOT EXISTS',
|
5314 |
);
|
5315 |
+
|
5316 |
continue;
|
5317 |
}
|
5318 |
|
5319 |
if ( ( $terms === '-2' ) || ( is_array( $terms ) && in_array( '-2', $terms ) ) ) {
|
5320 |
$terms = 'any.terms.assigned';
|
5321 |
}
|
5322 |
+
|
5323 |
if ( ( $terms === 'any.terms.assigned' ) || ( is_array( $terms ) && in_array( 'any.terms.assigned', $terms ) ) ) {
|
5324 |
$tax_query[ $tax_query_key ] = array(
|
5325 |
'taxonomy' => $tax_query_taxonomy,
|
5326 |
'operator' => 'EXISTS',
|
5327 |
);
|
5328 |
+
|
5329 |
continue;
|
5330 |
}
|
5331 |
} // isset( terms )
|
5360 |
if ( is_string( $value ) ) {
|
5361 |
$value = explode( ',', $value );
|
5362 |
}
|
5363 |
+
|
5364 |
$simple_tax_queries[ $key ] = implode(',', array_filter( array_map( 'trim', $value ) ) );
|
5365 |
if ( in_array( $simple_tax_queries[ $key ], array( 'ignore.terms.assigned', '-3', 'no.terms.assigned', '-1', 'any.terms.assigned', '-2' ) ) ) {
|
5366 |
$terms_assigned_query = true;
|
5371 |
if ( is_string( $value ) ) {
|
5372 |
$value = explode( ',', $value );
|
5373 |
}
|
5374 |
+
|
5375 |
$simple_tax_queries[ $key ] = implode(',', array_filter( array_map( 'trim', $value ) ) );
|
5376 |
if ( in_array( $simple_tax_queries[ $key ], array( 'ignore.terms.assigned', '-3', 'no.terms.assigned', '-1', 'any.terms.assigned', '-2' ) ) ) {
|
5377 |
$terms_assigned_query = true;
|
6107 |
// Suppress WordPress WP_Query LEFT JOIN on post_parent, etc.
|
6108 |
$query_arguments['post_type'] = 'mladisabletaxjoin';
|
6109 |
}
|
6110 |
+
|
6111 |
if ( defined('RML_FILE') ) {
|
6112 |
if ( $arguments['mla_allow_rml'] ) {
|
6113 |
add_filter( 'posts_clauses', 'MLAShortcode_Support::mla_shortcode_query_posts_clauses_rml_filter', 9, 2 );
|
6500 |
$clause[] = $wpdb->prepare( 'AND p.post_status IN ( ' . join( ',', $placeholders ) . ' )', $clause_parameters );
|
6501 |
|
6502 |
// Add optional post_mime_type constraint
|
6503 |
+
if ( 'all' === strtolower( $arguments['post_mime_type'] ) ) {
|
6504 |
+
$post_mimes = '';
|
6505 |
+
} else {
|
6506 |
$post_mimes = wp_post_mime_type_where( $arguments['post_mime_type'], 'p' );
|
6507 |
$clause[] = str_replace( '%', '%%', $post_mimes );
|
6508 |
}
|
6509 |
|
6510 |
$query = join(' ', $clause);
|
6511 |
$results = $wpdb->get_results( $query );
|
6512 |
+
|
6513 |
if ( is_wp_error( $results ) ) {
|
6514 |
$results = array(
|
6515 |
'ignore.terms.assigned' => 0,
|
6819 |
$clause[] = "AND tt.parent = '{$parent}'";
|
6820 |
}
|
6821 |
|
6822 |
+
if ( 'all' === strtolower( $arguments['post_mime_type'] ) ) {
|
6823 |
+
$post_mimes = '';
|
6824 |
+
} else {
|
6825 |
$post_mimes = wp_post_mime_type_where( $arguments['post_mime_type'], 'p' );
|
6826 |
$where = str_replace( '%', '%%', $post_mimes );
|
6827 |
|
7295 |
return;
|
7296 |
}
|
7297 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
7298 |
$terms_by_id = array(); // key term_id, value = reference to term object
|
7299 |
$term_ids = array(); // key term_taxonomy_id, value = term_id
|
7300 |
+
$term_items = array(); // key term_id, value = array( object_id => reference_count )
|
7301 |
|
|
|
7302 |
foreach ( $terms as $key => $term ) {
|
7303 |
if ( is_integer( $key ) ) {
|
7304 |
+
$terms_by_id[ $term->term_id ] = & $terms[ $key ];
|
7305 |
+
$term_ids[ $term->term_taxonomy_id ] = $term->term_id;
|
7306 |
}
|
7307 |
}
|
7308 |
|
7340 |
}
|
7341 |
}
|
7342 |
|
7343 |
+
// Transfer the touched cells, updating $terms by reference
|
7344 |
foreach ( (array) $term_items as $id => $items ) {
|
7345 |
if ( isset( $terms_by_id[ $id ] ) ) {
|
7346 |
+
$terms_by_id[ $id ]->term_count = (integer) $terms_by_id[ $id ]->count;
|
7347 |
$terms_by_id[ $id ]->count = count( $items );
|
7348 |
}
|
7349 |
}
|
index.php
CHANGED
@@ -6,7 +6,7 @@
|
|
6 |
* will the rest of the plugin be loaded and run.
|
7 |
*
|
8 |
* @package Media Library Assistant
|
9 |
-
* @version 2.
|
10 |
*/
|
11 |
|
12 |
/*
|
@@ -16,7 +16,7 @@ Description: Enhances the Media Library; powerful [mla_gallery] [mla_tag_cloud]
|
|
16 |
Author: David Lingren
|
17 |
Text Domain: media-library-assistant
|
18 |
Domain Path: /languages
|
19 |
-
Version: 2.
|
20 |
Author URI: http://davidlingren.com/
|
21 |
|
22 |
Copyright 2011-2021 David Lingren
|
6 |
* will the rest of the plugin be loaded and run.
|
7 |
*
|
8 |
* @package Media Library Assistant
|
9 |
+
* @version 2.98
|
10 |
*/
|
11 |
|
12 |
/*
|
16 |
Author: David Lingren
|
17 |
Text Domain: media-library-assistant
|
18 |
Domain Path: /languages
|
19 |
+
Version: 2.98
|
20 |
Author URI: http://davidlingren.com/
|
21 |
|
22 |
Copyright 2011-2021 David Lingren
|
js/mla-media-modal-scripts.js
CHANGED
@@ -822,15 +822,30 @@ var wp, wpAjax, ajaxurl, jQuery, _,
|
|
822 |
initialize: function() {
|
823 |
mlaAttachmentsBrowser.prototype.initialize.apply( this, arguments );
|
824 |
|
825 |
-
if (
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
826 |
mlaModal.settings.oldHeight = 0;
|
827 |
-
this.on( 'ready', this.adjustBrowser, this );
|
828 |
this.$window = $( window );
|
829 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
830 |
}
|
831 |
},
|
832 |
|
833 |
-
|
834 |
var wrapper = this.attachmentsWrapper, toolbar = this.toolbar, toolbarHeight, primaryHeight, secondaryHeight;
|
835 |
|
836 |
primaryHeight = toolbar.primary.$el.height();
|
@@ -848,6 +863,24 @@ var wp, wpAjax, ajaxurl, jQuery, _,
|
|
848 |
}
|
849 |
},
|
850 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
851 |
createToolbar: function() {
|
852 |
var filters, state = this.controller._state;
|
853 |
|
822 |
initialize: function() {
|
823 |
mlaAttachmentsBrowser.prototype.initialize.apply( this, arguments );
|
824 |
|
825 |
+
if ( 'undefined' === typeof window.eml ) {
|
826 |
+
// Accomodate Disable Gutenberg plugin
|
827 |
+
if ( 'grid' === mlaModal.settings.screen ) {
|
828 |
+
$('body').addClass('mla-media-grid');
|
829 |
+
} else {
|
830 |
+
$('body').addClass('mla-media-modal');
|
831 |
+
}
|
832 |
+
|
833 |
mlaModal.settings.oldHeight = 0;
|
|
|
834 |
this.$window = $( window );
|
835 |
+
|
836 |
+
if ( 'object' === typeof this.attachmentsWrapper ) {
|
837 |
+
this.on( 'ready', this.adjustBrowser58, this );
|
838 |
+
this.$window.on( 'resize', _.debounce( _.bind( this.adjustBrowser58, this ), 15 ) );
|
839 |
+
} else {
|
840 |
+
if ( 'object' === typeof this.attachments ) {
|
841 |
+
this.on( 'ready', this.adjustBrowser57, this );
|
842 |
+
this.$window.on( 'resize', _.debounce( _.bind( this.adjustBrowser57, this ), 15 ) );
|
843 |
+
}
|
844 |
+
}
|
845 |
}
|
846 |
},
|
847 |
|
848 |
+
adjustBrowser58: function() {
|
849 |
var wrapper = this.attachmentsWrapper, toolbar = this.toolbar, toolbarHeight, primaryHeight, secondaryHeight;
|
850 |
|
851 |
primaryHeight = toolbar.primary.$el.height();
|
863 |
}
|
864 |
},
|
865 |
|
866 |
+
adjustBrowser57: function() {
|
867 |
+
var attachments = this.attachments, toolbar = this.toolbar, toolbarHeight, primaryHeight, secondaryHeight;
|
868 |
+
|
869 |
+
primaryHeight = toolbar.primary.$el.height();
|
870 |
+
secondaryHeight = toolbar.secondary.$el.height();
|
871 |
+
|
872 |
+
if ( primaryHeight > secondaryHeight ) {
|
873 |
+
toolbarHeight = primaryHeight;
|
874 |
+
} else {
|
875 |
+
toolbarHeight = secondaryHeight;
|
876 |
+
}
|
877 |
+
|
878 |
+
if ( ( 0 < toolbarHeight ) && ( toolbarHeight !== mlaModal.settings.oldHeight ) ) {
|
879 |
+
attachments.$el.css( 'top', toolbarHeight + 10 + 'px' );
|
880 |
+
mlaModal.settings.oldHeight = toolbarHeight;
|
881 |
+
}
|
882 |
+
},
|
883 |
+
|
884 |
createToolbar: function() {
|
885 |
var filters, state = this.controller._state;
|
886 |
|
js/mla-media-modal-scripts.min.js
CHANGED
@@ -1 +1 @@
|
|
1 |
-
var wp,wpAjax,ajaxurl,jQuery,_,getUserSetting,setUserSetting,deleteUserSetting,mlaTaxonomy,mlaModal={strings:{},settings:{},initialHTML:{},uploading:false,cid:null,utility:{originalMediaAjax:null,mlaAttachmentsBrowser:null,parseTermsOptions:null,arrayCleanup:null,parseTaxonomyId:null,hookCompatTaxonomies:null,fillCompatTaxonomies:null,supportCompatTaxonomies:null},tagBox:null};(function(d){var c=wp.media.view.AttachmentsBrowser,b=wp.media.view.AttachmentCompat,a=wp.media.model.Selection;mlaModal.strings=typeof wp.media.view.l10n.mla_strings==="undefined"?{}:wp.media.view.l10n.mla_strings;delete wp.media.view.l10n.mla_strings;mlaModal.settings=typeof wp.media.view.settings.mla_settings==="undefined"?{screen:"unknown",enableMediaGrid:false,enableMediaModal:false}:wp.media.view.settings.mla_settings;delete wp.media.view.settings.mla_settings;if(!(mlaModal.settings.enableMediaGrid||mlaModal.settings.enableMediaModal)){return}if("grid"===mlaModal.settings.screen){if(false===mlaModal.settings.enableMediaGrid){return}d("body").addClass("mla-media-grid")}if("modal"===mlaModal.settings.screen){if(false===mlaModal.settings.enableMediaModal){return}d("body").addClass("mla-media-modal")}mlaModal.settings.pagenow=typeof pagenow==="undefined"?"unknown":pagenow;if(mlaModal.settings.pagenow==="toolset_page_views-editor"){return}mlaModal.utility.originalMediaAjax=wp.media.ajax;wp.media.ajax=function(k,g){var j=mlaModal.settings.state,i,f,h,e,l;if(_.isObject(k)){g=k}else{g=g||{};g.data=_.extend(g.data||{},{action:k})}if("query-attachments"==g.data.action){i=g.data.query;f=typeof i.s;if("object"==f){h=i.s}else{if("string"==f){h={mla_search_value:i.s}}else{h={mla_search_value:""}}}if("undefined"!=typeof i.post_mime_type){mlaModal.settings.query[j].filterMime=i.post_mime_type}else{mlaModal.settings.query[j].filterMime="all"}if("undefined"!=typeof h.mla_filter_month){mlaModal.settings.query[j].filterMonth=h.mla_filter_month}else{if("undefined"!=typeof i.year){mlaModal.settings.query[j].filterMonth=(100*i.year)+(1*i.monthnum)}else{}}if("undefined"!=typeof h.mla_filter_term){mlaModal.settings.query[j].filterTerm=h.mla_filter_term}if("undefined"!=typeof h.mla_search_value){mlaModal.settings.query[j].searchValue=h.mla_search_value}e={mla_filter_month:mlaModal.settings.query[j].filterMonth,mla_filter_term:mlaModal.settings.query[j].filterTerm,mla_terms_search:mlaModal.settings.query[j].termsSearch,mla_search_clicks:mlaModal.settings.query[j].searchClicks,mla_search_value:mlaModal.settings.query[j].searchValue,mla_search_fields:mlaModal.settings.query[j].searchFields,mla_search_connector:mlaModal.settings.query[j].searchConnector};mlaModal.settings.query[j].termsSearch="";d("#mla-terms-search-input").html("").val("");g.data.query.s=e;if(d(document.activeElement).hasClass("acf-button")){l=d(document.activeElement).parentsUntil("div.acf-fields");if(l.length){g.data.query._acfuploader=d(l[l.length-1]).attr("data-key")}}}return mlaModal.utility.originalMediaAjax.call(this,g)};if(mlaModal.settings.enableMimeTypes){wp.media.view.AttachmentFilters.Mla=wp.media.view.AttachmentFilters.extend({createFilters:function(){var f=this.controller._state,e={};_.each(mlaModal.settings.allMimeTypes||{},function(h,g){if(("grid"===mlaModal.settings.screen)||("trash"!==g)){e[g]={text:h,props:{type:g,uploadedTo:null,orderby:"date",order:"DESC"}}}});e.all={text:wp.media.view.l10n.allMediaItems,props:{type:null,uploadedTo:null,orderby:"date",order:"DESC"},priority:10};if(wp.media.view.settings.post.id){e.uploaded={text:wp.media.view.l10n.uploadedToThisPost,props:{type:null,uploadedTo:wp.media.view.settings.post.id,orderby:"menuOrder",order:"ASC"},priority:20}}this.filters=e;if("undefined"===typeof e[mlaModal.settings.query[f].filterMime]){mlaModal.settings.query[f].filterMime="all"}if(mlaModal.settings.query[f].filterMime!="all"){this.model.set(e[mlaModal.settings.query[f].filterMime].props,{silent:false})}},select:function(){var h=this.controller._state,e=this.model,g=mlaModal.settings.query[h].filterMime,f=e.toJSON();if(false===mlaModal.settings.enableSearchBox){if("string"==typeof f.search){mlaModal.settings.query[h].searchValue=f.search}else{mlaModal.settings.query[h].searchValue=""}}_.find(this.filters,function(j,k){var i=_.all(j.props,function(m,l){return m===(_.isUndefined(f[l])?null:f[l])});if(i){return g=k}});this.$el.val(g)},change:function(){var f=d(this.el).closest("div.media-toolbar"),e=this.filters[this.el.value];if(e){this.model.set(e.props,{silent:true});d("#mla-search-submit",f).trigger("click")}}});wp.media.view.AttachmentFilters.MlaUploaded=wp.media.view.AttachmentFilters.extend({createFilters:function(){var f=this.model.get("type"),e=wp.media.view.settings.mimeTypes,i,h=this.controller._state,g={};if(e&&f){i=e[f]}_.each(mlaModal.settings.uploadMimeTypes||{},function(k,j){if(("grid"===mlaModal.settings.screen)||("trash"!==j)){g[j]={text:k,props:{type:j,uploadedTo:null,orderby:"date",order:"DESC"}}}});g.all={text:i||wp.media.view.l10n.allMediaItems,props:{uploadedTo:null,orderby:"date",order:"DESC"},priority:10};g.uploaded={text:wp.media.view.l10n.uploadedToThisPost,props:{type:null,uploadedTo:wp.media.view.settings.post.id,orderby:"menuOrder",order:"ASC"},priority:20};g.unattached={text:wp.media.view.l10n.unattached,props:{uploadedTo:0,orderby:"menuOrder",order:"ASC"},priority:50};this.filters=g;if("undefined"===typeof g[mlaModal.settings.query[h].filterUploaded]){mlaModal.settings.query[h].filterUploaded="all"}if(mlaModal.settings.query[h].filterUploaded!="all"){this.model.set(g[mlaModal.settings.query[h].filterUploaded].props,{silent:false})}},select:function(){var h=this.controller._state,e=this.model,g=mlaModal.settings.query[h].filterMime,f=e.toJSON();if(false===mlaModal.settings.enableSearchBox){if("string"==typeof f.search){mlaModal.settings.query[h].searchValue=f.search}else{mlaModal.settings.query[h].searchValue=""}}_.find(this.filters,function(j,k){var i=_.all(j.props,function(m,l){return m===(_.isUndefined(f[l])?null:f[l])});if(i){return g=k}});this.$el.val(g)},change:function(){var f=d(this.el).closest("div.media-toolbar"),e=this.filters[this.el.value];if(e){this.model.set(e.props,{silent:true});d("#mla-search-submit",f).trigger("click")}}})}if(mlaModal.settings.enableMonthsDropdown){wp.media.view.AttachmentFilters.MlaMonths=wp.media.view.AttachmentFilters.extend({className:"attachment-filters",id:"media-attachment-date-filters",createFilters:function(){var f=this.controller._state,e={};_.each(mlaModal.settings.months||{},function(h,g){e[g]={text:h,props:{s:{mla_filter_month:g}}}});this.filters=e;if("undefined"===typeof e[mlaModal.settings.query[f].filterMonth]){mlaModal.settings.query[f].filterMonth=0}if(mlaModal.settings.query[f].filterMonth>0){this.model.set(e[mlaModal.settings.query[f].filterMonth].props,{silent:false})}},select:function(){var h=this.controller._state,e=this.model,g=mlaModal.settings.query[h].filterMonth,f=e.toJSON();if(_.isUndefined(f.s)){f.s={}}if(false===mlaModal.settings.enableSearchBox){if("string"==typeof f.search){mlaModal.settings.query[h].searchValue=f.search}else{mlaModal.settings.query[h].searchValue=""}}if(_.isUndefined(f.s.mla_filter_month)){f.s.mla_filter_month=mlaModal.settings.query[h].filterMonth}else{mlaModal.settings.query[h].filterMonth=f.s.mla_filter_month}_.find(this.filters,function(j,k){var i=_.all(j.props,function(l){return l.mla_filter_month==mlaModal.settings.query[h].filterMonth});if(i){return g=k}});this.$el.val(g)},change:function(){var e=this.filters[this.el.value],f;if(e){f={s:{mla_filter_month:e.props.s.mla_filter_month}};this.model.set(f)}}})}if(mlaModal.settings.enableTermsDropdown){wp.media.view.AttachmentFilters.MlaTerms=wp.media.view.AttachmentFilters.extend({className:"attachment-filters",id:"media-attachment-term-filters",createFilters:function(){var h=this.controller._state,e,f,g={};_.each(mlaModal.settings.termsText||{},function(j,i){if(mlaModal.settings.termsCustom){f=mlaModal.settings.termsValue[i]}else{f=parseInt(mlaModal.settings.termsValue[i])}g[i]={text:j,props:{s:{mla_filter_term:f}}}});this.filters=g;e=_.indexOf(mlaModal.settings.termsValue,mlaModal.settings.query[h].filterTerm);if(e>0){this.model.set(g[e].props,{silent:false})}},select:function(){var h=this.controller._state,e=this.model,g=mlaModal.settings.query[h].filterTerm,f=e.toJSON();if(_.isUndefined(f.s)){f.s={}}if(false===mlaModal.settings.enableSearchBox){if("string"==typeof f.search){mlaModal.settings.query[h].searchValue=f.search}else{mlaModal.settings.query[h].searchValue=""}}if(_.isUndefined(f.s.mla_filter_term)){f.s.mla_filter_term=mlaModal.settings.query[h].filterTerm}else{mlaModal.settings.query[h].filterTerm=f.s.mla_filter_term}_.find(this.filters,function(j,k){var i=_.all(j.props,function(l){return l.mla_filter_term==mlaModal.settings.query[h].filterTerm});if(i){return g=k}});this.$el.val(g)},change:function(){var e=this.filters[this.el.value],f;if(e){f={s:{mla_filter_term:e.props.s.mla_filter_term}};this.model.set(f)}}})}if(mlaModal.settings.enableTermsSearch){wp.media.view.MlaTermsSearch=wp.media.View.extend({tagName:"span",className:"mla-terms-search",template:wp.media.template("mla-terms-search-button"),attributes:{type:"mla-terms-search-button"},events:{change:"termsSearchOpen",click:"termsSearchOpen"},render:function(){this.$el.html(this.template(mlaModal.strings));return this},termsSearchOpen:function(f){var e=d(this.el).closest("div.media-toolbar");if(("click"==f.type)&&("mla_terms_search"===f.target.name)){mlaTaxonomy.termsSearch.open();d("#mla-terms-search-form").off("submit");d("#mla-terms-search-form").submit(function(j){var g,i,h={phrases:"",taxonomies:[]};j.preventDefault();g=d("#mla-terms-search-form").serializeArray();for(i=0;i<g.length;i++){switch(g[i].name){case"mla_terms_search[phrases]":h.phrases=g[i].value;break;case"mla_terms_search[radio_phrases]":h.radio_phrases=g[i].value;break;case"mla_terms_search[radio_terms]":h.radio_terms=g[i].value;break;case"mla_terms_search[taxonomies][]":h.taxonomies[h.taxonomies.length]=g[i].value;break}}mlaModal.settings.query[mlaModal.settings.state].termsSearch=h;d("#mla-search-submit",e).trigger("click");return false});d("#mla-terms-search-input").on("keypress",function(g){if(13==g.which){g.preventDefault();d("#mla-terms-search-submit").trigger("click")}})}}})}if(mlaModal.settings.enableSearchBox){wp.media.view.MlaSearch=wp.media.View.extend({tagName:"div",className:"mla-search-box",template:wp.media.template("mla-search-box"),attributes:{type:"mla-search-box"},events:{input:"search",change:"search",click:"search",search:"search",MlaSearch:"search"},initialize:function(){var e=this.controller._state;if("undefined"===typeof mlaModal.settings.query[e]){mlaModal.settings.query[e]=_.clone(mlaModal.settings.query.initial);mlaModal.settings.query[e].searchFields=_.clone(mlaModal.settings.query.initial.searchFields)}},render:function(){var f=this.controller._state,e=_.extend(mlaModal.strings,mlaModal.settings.query[f]);searchValues={mla_filter_month:mlaModal.settings.query[f].filterMonth,mla_filter_term:mlaModal.settings.query[f].filterTerm,mla_terms_search:mlaModal.settings.query[f].termsSearch,mla_search_clicks:mlaModal.settings.query[f].searchClicks++,mla_search_value:mlaModal.settings.query[f].searchValue,mla_search_fields:mlaModal.settings.query[f].searchFields,mla_search_connector:mlaModal.settings.query[f].searchConnector};this.model.set({s:searchValues});this.$el.html(this.template(e));return this},search:function(g){var h=this.controller._state,e,f;if(("input"==g.type)&&("s[mla_search_value]"==g.target.name)){mlaModal.settings.query[h].searchValue=g.target.value;return}if(("click"==g.type)&&("mla_search_submit"!=g.target.name)){return}switch(g.target.name){case"s[mla_search_value]":mlaModal.settings.query[h].searchValue=g.target.value;break;case"mla_search_submit":e={mla_filter_month:mlaModal.settings.query[h].filterMonth,mla_filter_term:mlaModal.settings.query[h].filterTerm,mla_terms_search:mlaModal.settings.query[h].termsSearch,mla_search_clicks:mlaModal.settings.query[h].searchClicks++,mla_search_value:mlaModal.settings.query[h].searchValue,mla_search_fields:mlaModal.settings.query[h].searchFields,mla_search_connector:mlaModal.settings.query[h].searchConnector};this.model.set({s:e});break;case"s[mla_search_connector]":mlaModal.settings.query[h].searchConnector=g.target.value;break;case"s[mla_search_title]":if("change"!=g.type){break}f=mlaModal.settings.query[h].searchFields.indexOf("title");if(-1==f){mlaModal.settings.query[h].searchFields.push("title")}else{mlaModal.settings.query[h].searchFields.splice(f,1)}break;case"s[mla_search_name]":if("change"!=g.type){break}f=mlaModal.settings.query[h].searchFields.indexOf("name");if(-1==f){mlaModal.settings.query[h].searchFields.push("name")}else{mlaModal.settings.query[h].searchFields.splice(f,1)}break;case"s[mla_search_alt_text]":if("change"!=g.type){break}f=mlaModal.settings.query[h].searchFields.indexOf("alt-text");if(-1==f){mlaModal.settings.query[h].searchFields.push("alt-text")}else{mlaModal.settings.query[h].searchFields.splice(f,1)}break;case"s[mla_search_excerpt]":if("change"!=g.type){break}f=mlaModal.settings.query[h].searchFields.indexOf("excerpt");if(-1==f){mlaModal.settings.query[h].searchFields.push("excerpt")}else{mlaModal.settings.query[h].searchFields.splice(f,1)}break;case"s[mla_search_content]":if("change"!=g.type){break}f=mlaModal.settings.query[h].searchFields.indexOf("content");if(-1==f){mlaModal.settings.query[h].searchFields.push("content")}else{mlaModal.settings.query[h].searchFields.splice(f,1)}break;case"s[mla_search_file]":if("change"!=g.type){break}f=mlaModal.settings.query[h].searchFields.indexOf("file");if(-1==f){mlaModal.settings.query[h].searchFields.push("file")}else{mlaModal.settings.query[h].searchFields.splice(f,1)}break;case"s[mla_search_terms]":if("change"!=g.type){break}f=mlaModal.settings.query[h].searchFields.indexOf("terms");if(-1==f){mlaModal.settings.query[h].searchFields.push("terms")}else{mlaModal.settings.query[h].searchFields.splice(f,1)}break}}})}else{wp.media.view.MlaSearch=wp.media.View.extend({tagName:"span",className:"mla-simulate-search-button",template:wp.media.template("mla-simulate-search-button"),attributes:{type:"mla-simulate-search-button"},events:{click:"simulateSearch"},render:function(){this.$el.html(this.template(mlaModal.strings));return this},simulateSearch:function(){var f=this.controller._state,e={mla_filter_month:mlaModal.settings.query[f].filterMonth,mla_filter_term:mlaModal.settings.query[f].filterTerm,mla_terms_search:mlaModal.settings.query[f].termsSearch,mla_search_clicks:mlaModal.settings.query[f].searchClicks++,mla_search_value:mlaModal.settings.query[f].searchValue,mla_search_fields:mlaModal.settings.query[f].searchFields,mla_search_connector:mlaModal.settings.query[f].searchConnector};this.model.set({s:e})}})}if(mlaModal.settings.enableMimeTypes||mlaModal.settings.enableMonthsDropdown||mlaModal.settings.enableTermsDropdown||mlaModal.settings.enableTermsSearch||mlaModal.settings.enableSearchBox){wp.media.view.AttachmentsBrowser=wp.media.view.AttachmentsBrowser.extend({initialize:function(){c.prototype.initialize.apply(this,arguments);if(("object"===typeof this.attachmentsWrapper)&&("undefined"===typeof window.eml)){mlaModal.settings.oldHeight=0;this.on("ready",this.adjustBrowser,this);this.$window=d(window);this.$window.on("resize",_.debounce(_.bind(this.adjustBrowser,this),15))}},adjustBrowser:function(){var i=this.attachmentsWrapper,f=this.toolbar,h,e,g;e=f.primary.$el.height();g=f.secondary.$el.height();if(e>g){h=e}else{h=g}if((0<h)&&(h!==mlaModal.settings.oldHeight)){i.$el.css("top",h+10+"px");mlaModal.settings.oldHeight=h}},createToolbar:function(){var e,f=this.controller._state;mlaModal.settings.state=f;mlaModal.settings.$el=this.controller.$el;if("undefined"===typeof mlaModal.settings.query[f]){mlaModal.settings.query[f]=_.clone(mlaModal.settings.query.initial);mlaModal.settings.query[f].searchFields=_.clone(mlaModal.settings.query.initial.searchFields)}c.prototype.createToolbar.apply(this,arguments);mlaModal.utility.mlaAttachmentsBrowser=this;e=this.options.filters;d(".media-attachments-filter-heading",this.$el).css("display","none");if(("all"===e)&&mlaModal.settings.enableMimeTypes){this.toolbar.unset("filters",{silent:true});this.toolbar.set("filters",new wp.media.view.AttachmentFilters.Mla({controller:this.controller,model:this.collection.props,priority:-80}).render())}if(("uploaded"===e)&&mlaModal.settings.enableMimeTypes){this.toolbar.unset("filters",{silent:true});this.toolbar.set("filters",new wp.media.view.AttachmentFilters.MlaUploaded({controller:this.controller,model:this.collection.props,priority:-80}).render())}if(this.options.search&&mlaModal.settings.enableMonthsDropdown){this.toolbar.unset("dateFilter",{silent:true});this.toolbar.set("dateFilter",new wp.media.view.AttachmentFilters.MlaMonths({controller:this.controller,model:this.collection.props,priority:-75}).render())}if(this.options.search&&mlaModal.settings.enableTermsDropdown){this.toolbar.set("terms",new wp.media.view.AttachmentFilters.MlaTerms({controller:this.controller,model:this.collection.props,priority:-50}).render())}if(this.options.search&&mlaModal.settings.enableTermsSearch){this.toolbar.set("termsSearch",new wp.media.view.MlaTermsSearch({controller:this.controller,model:this.collection.props,priority:-50}).render())}if(this.options.search){if(mlaModal.settings.enableSearchBox){this.controller.on("content:activate",this.hideDefaultSearch);this.controller.on("edit:activate",this.hideDefaultSearch);this.controller.on("router:render",this.hideDefaultSearch);this.controller.on("uploader:ready",this.hideDefaultSearch);this.toolbar.set("MlaSearch",new wp.media.view.MlaSearch({controller:this.controller,model:this.collection.props,priority:-40}).render())}else{this.toolbar.set("MlaSearch",new wp.media.view.MlaSearch({controller:this.controller,model:this.collection.props,priority:70}).render())}}},hideDefaultSearch:function(){var e=d("#media-search-input",mlaModal.settings.$el),f=d(".media-search-input-label",mlaModal.settings.$el);if(0===e.length){e=d("div.media-toolbar-primary > input.search",mlaModal.settings.$el)}e.hide();f.hide()},updateFilters:function(e,f){var g={};if(this.options.search&&mlaModal.settings.enableTermsDropdown&&mlaModal.settings.termsTaxonomy==e){g=mlaModal.utility.parseTermsOptions(f);mlaModal.settings.termsClass=g.termsClass;mlaModal.settings.termsText=g.termsText;mlaModal.settings.termsValue=g.termsValue;this.toolbar.unset("terms",{silent:true});this.toolbar.set("terms",new wp.media.view.AttachmentFilters.MlaTerms({controller:this.controller,model:this.collection.props,priority:-80}).render())}}})}mlaModal.utility.parseTermsOptions=function(k){var j={termsClass:[mlaModal.settings.termsClass[0],mlaModal.settings.termsClass[1]],termsText:[mlaModal.settings.termsText[0],mlaModal.settings.termsText[1]],termsValue:[mlaModal.settings.termsValue[0],mlaModal.settings.termsValue[1]]},g=2,e,f,i=/\<option(( class=\"([^\"]+)\" )|( ))value=((\'([^\']+)\')|(\"([^\"]+)\"))([^\>]*)\>([^\<]*)\<.*/g,h=[];if("object"===typeof k){g=mlaModal.settings.termsValue.length;for(e=2;e<g;e++){h[e]={termsClass:mlaModal.settings.termsClass[e],termsText:mlaModal.settings.termsText[e],termsValue:mlaModal.settings.termsValue[e]};if("undefined"!==typeof k[mlaModal.settings.termsValue[e]]){delete k[mlaModal.settings.termsValue[e]]}}for(f in k){h[e++]={termsClass:"level-0",termsText:k[f],termsValue:f.toString()}}if(g===e){return{termsClass:mlaModal.settings.termsClass,termsText:mlaModal.settings.termsText,termsValue:mlaModal.settings.termsValue}}h.sort(function(m,l){if(m.termsText>l.termsText){return 1}else{if(m.termsText<l.termsText){return -1}else{return 0}}});e=2;for(f in h){j.termsClass[e]=h[f].termsClass;j.termsText[e]=h[f].termsText;j.termsValue[e++]=h[f].termsValue}return j}h=i.exec(k);while(null!==(h=i.exec(k))){j.termsClass[g]=h[3];j.termsValue[g]=("undefined"===typeof h[6])?h[9]:h[7];j.termsText[g++]=h[11].replace(" ",mlaModal.settings.termsIndent)}return j};mlaModal.utility.arrayCleanup=function(g){var f=[],e=("string"===typeof g);if(e){g=g.split(mlaModal.settings.comma)}jQuery.each(g,function(h,i){i=jQuery.trim(i);if(i&&jQuery.inArray(i,f)==-1){f.push(i)}});f.sort();if(e){f=f.join(mlaModal.settings.comma)}return f};mlaModal.utility.parseTaxonomyId=function(f){var e=f.split("-");e.shift();e.shift();return e.join("-")};mlaModal.tagBox={cleanTags:function(f){var e=mlaModal.settings.comma;if(","!==e){f=f.replace(new RegExp(e,"g"),",")}f=f.replace(/\s*,\s*/g,",").replace(/,+/g,",").replace(/[,\s]+$/,"").replace(/^[,\s]+/,"");if(","!==e){f=f.replace(/,/g,e)}return f},parseTags:function(h){var l=h.id,f=l.split("-check-num-")[1],i=d(h).closest(".tagsdiv"),k=i.find(".the-tags"),e=mlaModal.settings.comma,g=k.val().split(e),j=[];delete g[f];d.each(g,function(m,n){n=d.trim(n);if(n){j.push(n)}});k.val(this.cleanTags(j.join(e)));this.quickClicks(i);return false},quickClicks:function(g){var j=d(".the-tags",g),h=d(".tagchecklist",g),i=d(g).attr("id"),e,f;if(!j.length){return}f=j.prop("disabled");e=j.val().split(mlaModal.settings.comma);h.empty();d.each(e,function(m,n){var l,k;n=d.trim(n);if(!n){return}if(mlaModal.settings.generateTagUl){l=d("<li />").text(n)}else{l=d("<span />").text(n)}if(!f){if(mlaModal.settings.generateTagButtons){k=d('<button class="ntdelbutton" id="'+i+"-check-num-"+m+'" type="button"><span class="remove-tag-icon" aria-hidden="true"></span><span class="screen-reader-text">'+mlaModal.settings.removeTerm+": "+n+"</span></button>")}else{k=d('<a id="'+i+"-check-num-"+m+'" class="ntdelbutton">X</a>')}k.on("click",function(){mlaModal.tagBox.parseTags(this)});l.prepend(" ").prepend(k)}h.append(l)})},flushTags:function(k,h,g){var m,e,i,n=d(".the-tags",k),j=d("input.newtag",k),l=mlaModal.settings.comma;h=h||false;i=h?d(h).text():j.val();m=n.val();e=m?m+l+i:i;e=mlaModal.utility.arrayCleanup(this.cleanTags(e));n.val(e);this.quickClicks(k);if(!h){j.val("")}if("undefined"==typeof(g)){j.focus()}return false},getCloud:function(f,e){d.post(ajaxurl,{action:"get-tagcloud",tax:e},function(h,g){if(0===h||"success"!=g){h=wpAjax.broken}h=d('<p id="tagcloud-'+e+'" class="the-tagcloud">'+h+"</p>");d("a",h).on("click",function(){mlaModal.tagBox.flushTags(d(this).closest(".mla-taxonomy-field").children(".tagsdiv"),this);return false});d("#"+f).after(h)})},init:function(i,e,g){var h,f;h=d("#mla-taxonomy-"+e,g);f=d("div.ajaxtag",h);mlaModal.tagBox.quickClicks(h);d("input.tagadd",f).on("click",function(){mlaModal.tagBox.flushTags(d(this).closest(".tagsdiv"))});d("input.newtag",f).on("keyup",function(j){if(13==j.which){mlaModal.tagBox.flushTags(h);return false}}).on("keypress",function(j){if(13==j.which){j.preventDefault();return false}}).each(function(){d(this).suggest(ajaxurl+"?action=ajax-tag-search&tax="+e,{delay:500,resultsClass:"mla_ac_results",selectClass:"mla_ac_over",matchClass:"mla_ac_match",minchars:2,multiple:true,multipleSep:mlaModal.settings.comma+" "})});h.siblings(":first").on("click",function(){mlaModal.tagBox.getCloud(d("a",this).attr("id"),e);d("a",this).unbind().on("click",function(){d(this).siblings(".the-tagcloud").toggle();return false});return false});d(".compat-field-"+e+" td",g).on("mouseleave",function(){var m,k=this,j=mlaModal.utility.arrayCleanup(d(".server-tags",k).val()),l=mlaModal.utility.arrayCleanup(d(".the-tags",k).val());if(j===l){return}d(k).css("opacity","0.5");m={id:i};m[e]=l;wp.media.post(mlaModal.settings.ajaxUpdateCompatAction,m).done(function(o){var p,n,q;for(n in o){if("object"===typeof(o[n]["object-terms"])){if(null!==mlaModal.utility.mlaAttachmentsBrowser){mlaModal.utility.mlaAttachmentsBrowser.updateFilters(n,o[n]["object-terms"])}delete o[n]["object-terms"]}for(q in o[n]){d("#"+q,k).replaceWith(o[n][q])}p=d("#mla-taxonomy-"+n,k);mlaModal.tagBox.quickClicks(p)}d(k).css("opacity","1.0")})});h.on("change",function(j){j.stopPropagation();return false});d(".the-tags, .server-tags .newtag",h).on("change",function(j){j.stopPropagation();return false})}};if(mlaModal.settings.enableDetailsCategory||mlaModal.settings.enableDetailsTag){wp.media.view.AttachmentCompat=wp.media.view.AttachmentCompat.extend({initialize:function(){b.prototype.initialize.apply(this,arguments);this.on("ready",function(){mlaModal.utility.hookCompatTaxonomies(this.model.get("id"),this.el)})}})}if(mlaModal.settings.enableDetailsCategory||mlaModal.settings.enableDetailsTag){wp.media.model.Selection=wp.media.model.Selection.extend({initialize:function(){a.prototype.initialize.apply(this,arguments);this.on("selection:reset",function(){mlaModal.cid=null});this.on("selection:unsingle",function(){mlaModal.cid=null});this.on("selection:single",function(e){mlaModal.cid=e.cid});this.on("change:uploading",function(){mlaModal.uploading=true});this.on("change",function(e){var f=false,g;if(mlaModal.uploading&&mlaModal.cid===e.cid){mlaModal.uploading=false;f=true}else{if(false===e.attributes.uploading){g=_.clone(e.changed);delete g.title;delete g.caption;delete g.alt;delete g.description;if(!_.isEmpty(g)){f=true}}}if(true===f){mlaModal.utility.hookCompatTaxonomies(e.get("id"),mlaModal.settings.$el)}})}})}mlaModal.utility.hookCompatTaxonomies=function(h,f){var e,g=null;d(".mla-taxonomy-field .categorydiv",f).each(function(){e=mlaModal.utility.parseTaxonomyId(d(this).attr("id"));if(-1!=mlaModal.settings.enhancedTaxonomies.indexOf(e)){d(".compat-field-"+e+" th",f).on("click",{id:h,currentTaxonomy:e,el:f},function(i){mlaModal.utility.fillCompatTaxonomies(i.data)});d("tr.compat-field-"+e,f).each(function(){if(d(this).hasClass("mla-taxonomy-row")){d(this).show()}else{d(this).remove()}});if(null===g){g=e}}else{d("tr.compat-field-"+e,f).each(function(){if(d(this).hasClass("mla-taxonomy-row")){d(this).remove()}})}});d(".mla-taxonomy-field .tagsdiv",f).each(function(){e=mlaModal.utility.parseTaxonomyId(d(this).attr("id"));if(-1!=mlaModal.settings.enhancedTaxonomies.indexOf(e)){d(".compat-field-"+e+" th",f).on("click",{id:h,currentTaxonomy:e,el:f},function(i){mlaModal.utility.fillCompatTaxonomies(i.data)});d("tr.compat-field-"+e,f).each(function(){if(d(this).hasClass("mla-taxonomy-row")){d(this).show()}else{d(this).remove()}});if(null===g){g=e}}else{d("tr.compat-field-"+e,f).each(function(){if(d(this).hasClass("mla-taxonomy-row")){d(this).remove()}})}});if(mlaModal.settings.enableTermsAutofill&&null!==g){d(".compat-field-"+g+" th",f).trigger("click")}};mlaModal.utility.fillCompatTaxonomies=function(i){var f=i.el,h=[],e,g;d(".mla-taxonomy-field .categorydiv",f).each(function(){e=mlaModal.utility.parseTaxonomyId(d(this).attr("id"));h[h.length]=e;g=".compat-field-"+e;if("undefined"===typeof(mlaModal.initialHTML[e])){mlaModal.initialHTML[e]=d(g,f).html()}else{d(g,f).html(mlaModal.initialHTML[e])}d(g+" .categorydiv",f).html(mlaModal.strings.loadingText)});d(".mla-taxonomy-field .tagsdiv",f).each(function(){e=mlaModal.utility.parseTaxonomyId(d(this).attr("id"));h[h.length]=e;g=".compat-field-"+e;if("undefined"===typeof(mlaModal.initialHTML[e])){mlaModal.initialHTML[e]=d(g,f).html()}else{d(g,f).html(mlaModal.initialHTML[e])}d(g+" .tagsdiv",f).html(mlaModal.strings.loadingText)});if(h.length){wp.media.post(mlaModal.settings.ajaxFillCompatAction,{id:i.id,query:h}).done(function(k){var j,l;for(j in k){l=".compat-field-"+j;d(l,f).html(k[j])}mlaModal.utility.supportCompatTaxonomies(i);d(".compat-field-"+i.currentTaxonomy+" td",f).show()})}};mlaModal.utility.supportCompatTaxonomies=function(g){var f=g.id,e=g.el;if(mlaModal.settings.enableDetailsCategory){d(".mla-taxonomy-field .categorydiv",e).each(function(){var j=d(this),h,k,i,n,l,p,o,m;i=mlaModal.utility.parseTaxonomyId(d(this).attr("id"));n=i+"_tab";l="#mla-"+i;p="#mla-new-"+i;o="#mla-search-"+i;m="#mla-attachments-"+f+"-"+i;if(i=="category"){n="cats"}j.find(".category-tabs").show();d(".compat-field-"+i+" th",e).on("click",function(){d(this).siblings("td").slideToggle()});j.on("mouseleave",function(){var t,q,s=[],r=j.find(l+"-checklist input:checked");r.each(function(){s[s.length]=d(this).val()});s.sort(function(v,u){return v-u});s=s.join(",");q=j.siblings(m).val();if(q===s){return}j.siblings(m).val(s);j.prop("disabled",true);t={id:f};t[i]=s;wp.media.post(mlaModal.settings.ajaxUpdateCompatAction,t).done(function(v){var u,w;for(u in v){for(w in v[u]){j.find("#"+w).html(v[u][w])}}j.find(o).val("");j.find(l+"-searcher").addClass("mla-hidden-children");j.prop("disabled",false)})});j.on('change input[type="checkbox"]',function(q){q.stopPropagation();return false});j.find(l+"-tabs a").on("click",function(){var q=d(this).attr("href");d(this).parent().addClass("tabs").siblings("li").removeClass("tabs");j.find(l+"-tabs").siblings(".tabs-panel").hide();j.find(q).show();d(this).focus();if("#mla-"+i+"-all"==q){deleteUserSetting(n)}else{setUserSetting(n,"pop")}return false});if(getUserSetting(n)){j.find(l+'-tabs a[href="#mla-'+i+'-pop"]').trigger("click")}j.find(l+"-add-toggle").on("click",function(){j.find(l+"-searcher").addClass("mla-hidden-children");j.find(l+"-adder").toggleClass("mla-hidden-children");j.find(l+'-tabs a[href="#mla-'+i+'-all"]').trigger("click");j.find(l+"-checklist li").show();j.find(l+"-checklist-pop li").show();if(false===j.find(l+"-adder").hasClass("mla-hidden-children")){j.find(p).val("").removeClass("form-input-tip");j.find(p).focus()}return false});j.find(p).on("keypress",function(q){if(13===q.keyCode){q.preventDefault();j.find(l+"-add-submit").trigger("click")}});j.find(l+"-add-submit").on("click",function(){j.find(p).focus()});h=function(q){if(!j.find(p).val()){return false}q.data+="&"+j.find(l+"-checklist :checked").serialize();j.prop("disabled",true);return q};k=function(v,u){var t,q=j.find("#new"+i+"_parent");j.prop("disabled",false);if("undefined"!=u.parsed.responses[0]&&(t=u.parsed.responses[0].supplemental.newcat_parent)){q.before(t);q.remove();if(null!==mlaModal.utility.mlaAttachmentsBrowser){mlaModal.utility.mlaAttachmentsBrowser.updateFilters(i,t)}}};j.find(l+"-checklist").wpList({alt:"",response:"mla-"+i+"-ajax-response",addBefore:h,addAfter:k});j.find(l+"-checklist, "+l+"-checklist-pop").on("click",'li.popular-category > label input[type="checkbox"]',function(){var q=d(this),s=q.is(":checked"),r=q.val();if(r&&q.parents("#mla-taxonomy-"+i).length){d("#in-"+i+"-"+r+", #in-popular-"+i+"-"+r,"#mla-taxonomy-"+i).prop("checked",s)}});d.extend(d.expr.pseudos||d.expr[":"],{matchTerms:function(s,r,q,t){return(s.textContent||s.innerText||"").toLowerCase().indexOf((q[3]||"").toLowerCase())>=0}});j.find(o).on("keypress",function(q){if(13===q.keyCode){q.preventDefault();j.find(o).val("");j.find(l+"-searcher").addClass("mla-hidden-children");j.find(l+"-checklist li").show();j.find(l+"-checklist-pop li").show();return}});j.find(o).on("keyup",function(s){var u,t,v,r,q;if(13===s.keyCode){s.preventDefault();j.find(l+"-search-toggle").focus();return}u=j.find(o).val();t=j.find(l+"-checklist li");v=j.find(l+"-checklist-pop li");if(0<u.length){t.hide();v.hide()}else{t.show();v.show()}r=j.find(l+"-checklist label:matchTerms('"+u+"')");r.closest("li").find("li").andSelf().show();r.parents(l+"-checklist li").show();q=j.find(l+"-checklist-pop label:matchTerms('"+u+"')");q.closest("li").find("li").andSelf().show();q.parents(l+"-checklist li").show()});j.find(l+"-search-toggle").on("click",function(){j.find(l+"-adder ").addClass("mla-hidden-children");j.find(l+"-searcher").toggleClass("mla-hidden-children");j.find(l+'-tabs a[href="#mla-'+i+'-all"]').trigger("click");j.find(l+"-checklist li").show();j.find(l+"-checklist-pop li").show();if(false===j.find(l+"-searcher").hasClass("mla-hidden-children")){j.find(o).val("").removeClass("form-input-tip");j.find(o).focus()}return false})})}if(mlaModal.settings.enableDetailsTag){d(".mla-taxonomy-field .tagsdiv",e).each(function(){var h=mlaModal.utility.parseTaxonomyId(d(this).attr("id"));d(".compat-field-"+h+" th",e).on("click",function(){d(this).siblings("td").slideToggle()});mlaModal.tagBox.init(f,h,e)})}}}(jQuery));
|
1 |
+
var wp,wpAjax,ajaxurl,jQuery,_,getUserSetting,setUserSetting,deleteUserSetting,mlaTaxonomy,mlaModal={strings:{},settings:{},initialHTML:{},uploading:false,cid:null,utility:{originalMediaAjax:null,mlaAttachmentsBrowser:null,parseTermsOptions:null,arrayCleanup:null,parseTaxonomyId:null,hookCompatTaxonomies:null,fillCompatTaxonomies:null,supportCompatTaxonomies:null},tagBox:null};(function(d){var c=wp.media.view.AttachmentsBrowser,b=wp.media.view.AttachmentCompat,a=wp.media.model.Selection;mlaModal.strings=typeof wp.media.view.l10n.mla_strings==="undefined"?{}:wp.media.view.l10n.mla_strings;delete wp.media.view.l10n.mla_strings;mlaModal.settings=typeof wp.media.view.settings.mla_settings==="undefined"?{screen:"unknown",enableMediaGrid:false,enableMediaModal:false}:wp.media.view.settings.mla_settings;delete wp.media.view.settings.mla_settings;if(!(mlaModal.settings.enableMediaGrid||mlaModal.settings.enableMediaModal)){return}if("grid"===mlaModal.settings.screen){if(false===mlaModal.settings.enableMediaGrid){return}d("body").addClass("mla-media-grid")}if("modal"===mlaModal.settings.screen){if(false===mlaModal.settings.enableMediaModal){return}d("body").addClass("mla-media-modal")}mlaModal.settings.pagenow=typeof pagenow==="undefined"?"unknown":pagenow;if(mlaModal.settings.pagenow==="toolset_page_views-editor"){return}mlaModal.utility.originalMediaAjax=wp.media.ajax;wp.media.ajax=function(k,g){var j=mlaModal.settings.state,i,f,h,e,l;if(_.isObject(k)){g=k}else{g=g||{};g.data=_.extend(g.data||{},{action:k})}if("query-attachments"==g.data.action){i=g.data.query;f=typeof i.s;if("object"==f){h=i.s}else{if("string"==f){h={mla_search_value:i.s}}else{h={mla_search_value:""}}}if("undefined"!=typeof i.post_mime_type){mlaModal.settings.query[j].filterMime=i.post_mime_type}else{mlaModal.settings.query[j].filterMime="all"}if("undefined"!=typeof h.mla_filter_month){mlaModal.settings.query[j].filterMonth=h.mla_filter_month}else{if("undefined"!=typeof i.year){mlaModal.settings.query[j].filterMonth=(100*i.year)+(1*i.monthnum)}else{}}if("undefined"!=typeof h.mla_filter_term){mlaModal.settings.query[j].filterTerm=h.mla_filter_term}if("undefined"!=typeof h.mla_search_value){mlaModal.settings.query[j].searchValue=h.mla_search_value}e={mla_filter_month:mlaModal.settings.query[j].filterMonth,mla_filter_term:mlaModal.settings.query[j].filterTerm,mla_terms_search:mlaModal.settings.query[j].termsSearch,mla_search_clicks:mlaModal.settings.query[j].searchClicks,mla_search_value:mlaModal.settings.query[j].searchValue,mla_search_fields:mlaModal.settings.query[j].searchFields,mla_search_connector:mlaModal.settings.query[j].searchConnector};mlaModal.settings.query[j].termsSearch="";d("#mla-terms-search-input").html("").val("");g.data.query.s=e;if(d(document.activeElement).hasClass("acf-button")){l=d(document.activeElement).parentsUntil("div.acf-fields");if(l.length){g.data.query._acfuploader=d(l[l.length-1]).attr("data-key")}}}return mlaModal.utility.originalMediaAjax.call(this,g)};if(mlaModal.settings.enableMimeTypes){wp.media.view.AttachmentFilters.Mla=wp.media.view.AttachmentFilters.extend({createFilters:function(){var f=this.controller._state,e={};_.each(mlaModal.settings.allMimeTypes||{},function(h,g){if(("grid"===mlaModal.settings.screen)||("trash"!==g)){e[g]={text:h,props:{type:g,uploadedTo:null,orderby:"date",order:"DESC"}}}});e.all={text:wp.media.view.l10n.allMediaItems,props:{type:null,uploadedTo:null,orderby:"date",order:"DESC"},priority:10};if(wp.media.view.settings.post.id){e.uploaded={text:wp.media.view.l10n.uploadedToThisPost,props:{type:null,uploadedTo:wp.media.view.settings.post.id,orderby:"menuOrder",order:"ASC"},priority:20}}this.filters=e;if("undefined"===typeof e[mlaModal.settings.query[f].filterMime]){mlaModal.settings.query[f].filterMime="all"}if(mlaModal.settings.query[f].filterMime!="all"){this.model.set(e[mlaModal.settings.query[f].filterMime].props,{silent:false})}},select:function(){var h=this.controller._state,e=this.model,g=mlaModal.settings.query[h].filterMime,f=e.toJSON();if(false===mlaModal.settings.enableSearchBox){if("string"==typeof f.search){mlaModal.settings.query[h].searchValue=f.search}else{mlaModal.settings.query[h].searchValue=""}}_.find(this.filters,function(j,k){var i=_.all(j.props,function(m,l){return m===(_.isUndefined(f[l])?null:f[l])});if(i){return g=k}});this.$el.val(g)},change:function(){var f=d(this.el).closest("div.media-toolbar"),e=this.filters[this.el.value];if(e){this.model.set(e.props,{silent:true});d("#mla-search-submit",f).trigger("click")}}});wp.media.view.AttachmentFilters.MlaUploaded=wp.media.view.AttachmentFilters.extend({createFilters:function(){var f=this.model.get("type"),e=wp.media.view.settings.mimeTypes,i,h=this.controller._state,g={};if(e&&f){i=e[f]}_.each(mlaModal.settings.uploadMimeTypes||{},function(k,j){if(("grid"===mlaModal.settings.screen)||("trash"!==j)){g[j]={text:k,props:{type:j,uploadedTo:null,orderby:"date",order:"DESC"}}}});g.all={text:i||wp.media.view.l10n.allMediaItems,props:{uploadedTo:null,orderby:"date",order:"DESC"},priority:10};g.uploaded={text:wp.media.view.l10n.uploadedToThisPost,props:{type:null,uploadedTo:wp.media.view.settings.post.id,orderby:"menuOrder",order:"ASC"},priority:20};g.unattached={text:wp.media.view.l10n.unattached,props:{uploadedTo:0,orderby:"menuOrder",order:"ASC"},priority:50};this.filters=g;if("undefined"===typeof g[mlaModal.settings.query[h].filterUploaded]){mlaModal.settings.query[h].filterUploaded="all"}if(mlaModal.settings.query[h].filterUploaded!="all"){this.model.set(g[mlaModal.settings.query[h].filterUploaded].props,{silent:false})}},select:function(){var h=this.controller._state,e=this.model,g=mlaModal.settings.query[h].filterMime,f=e.toJSON();if(false===mlaModal.settings.enableSearchBox){if("string"==typeof f.search){mlaModal.settings.query[h].searchValue=f.search}else{mlaModal.settings.query[h].searchValue=""}}_.find(this.filters,function(j,k){var i=_.all(j.props,function(m,l){return m===(_.isUndefined(f[l])?null:f[l])});if(i){return g=k}});this.$el.val(g)},change:function(){var f=d(this.el).closest("div.media-toolbar"),e=this.filters[this.el.value];if(e){this.model.set(e.props,{silent:true});d("#mla-search-submit",f).trigger("click")}}})}if(mlaModal.settings.enableMonthsDropdown){wp.media.view.AttachmentFilters.MlaMonths=wp.media.view.AttachmentFilters.extend({className:"attachment-filters",id:"media-attachment-date-filters",createFilters:function(){var f=this.controller._state,e={};_.each(mlaModal.settings.months||{},function(h,g){e[g]={text:h,props:{s:{mla_filter_month:g}}}});this.filters=e;if("undefined"===typeof e[mlaModal.settings.query[f].filterMonth]){mlaModal.settings.query[f].filterMonth=0}if(mlaModal.settings.query[f].filterMonth>0){this.model.set(e[mlaModal.settings.query[f].filterMonth].props,{silent:false})}},select:function(){var h=this.controller._state,e=this.model,g=mlaModal.settings.query[h].filterMonth,f=e.toJSON();if(_.isUndefined(f.s)){f.s={}}if(false===mlaModal.settings.enableSearchBox){if("string"==typeof f.search){mlaModal.settings.query[h].searchValue=f.search}else{mlaModal.settings.query[h].searchValue=""}}if(_.isUndefined(f.s.mla_filter_month)){f.s.mla_filter_month=mlaModal.settings.query[h].filterMonth}else{mlaModal.settings.query[h].filterMonth=f.s.mla_filter_month}_.find(this.filters,function(j,k){var i=_.all(j.props,function(l){return l.mla_filter_month==mlaModal.settings.query[h].filterMonth});if(i){return g=k}});this.$el.val(g)},change:function(){var e=this.filters[this.el.value],f;if(e){f={s:{mla_filter_month:e.props.s.mla_filter_month}};this.model.set(f)}}})}if(mlaModal.settings.enableTermsDropdown){wp.media.view.AttachmentFilters.MlaTerms=wp.media.view.AttachmentFilters.extend({className:"attachment-filters",id:"media-attachment-term-filters",createFilters:function(){var h=this.controller._state,e,f,g={};_.each(mlaModal.settings.termsText||{},function(j,i){if(mlaModal.settings.termsCustom){f=mlaModal.settings.termsValue[i]}else{f=parseInt(mlaModal.settings.termsValue[i])}g[i]={text:j,props:{s:{mla_filter_term:f}}}});this.filters=g;e=_.indexOf(mlaModal.settings.termsValue,mlaModal.settings.query[h].filterTerm);if(e>0){this.model.set(g[e].props,{silent:false})}},select:function(){var h=this.controller._state,e=this.model,g=mlaModal.settings.query[h].filterTerm,f=e.toJSON();if(_.isUndefined(f.s)){f.s={}}if(false===mlaModal.settings.enableSearchBox){if("string"==typeof f.search){mlaModal.settings.query[h].searchValue=f.search}else{mlaModal.settings.query[h].searchValue=""}}if(_.isUndefined(f.s.mla_filter_term)){f.s.mla_filter_term=mlaModal.settings.query[h].filterTerm}else{mlaModal.settings.query[h].filterTerm=f.s.mla_filter_term}_.find(this.filters,function(j,k){var i=_.all(j.props,function(l){return l.mla_filter_term==mlaModal.settings.query[h].filterTerm});if(i){return g=k}});this.$el.val(g)},change:function(){var e=this.filters[this.el.value],f;if(e){f={s:{mla_filter_term:e.props.s.mla_filter_term}};this.model.set(f)}}})}if(mlaModal.settings.enableTermsSearch){wp.media.view.MlaTermsSearch=wp.media.View.extend({tagName:"span",className:"mla-terms-search",template:wp.media.template("mla-terms-search-button"),attributes:{type:"mla-terms-search-button"},events:{change:"termsSearchOpen",click:"termsSearchOpen"},render:function(){this.$el.html(this.template(mlaModal.strings));return this},termsSearchOpen:function(f){var e=d(this.el).closest("div.media-toolbar");if(("click"==f.type)&&("mla_terms_search"===f.target.name)){mlaTaxonomy.termsSearch.open();d("#mla-terms-search-form").off("submit");d("#mla-terms-search-form").submit(function(j){var g,i,h={phrases:"",taxonomies:[]};j.preventDefault();g=d("#mla-terms-search-form").serializeArray();for(i=0;i<g.length;i++){switch(g[i].name){case"mla_terms_search[phrases]":h.phrases=g[i].value;break;case"mla_terms_search[radio_phrases]":h.radio_phrases=g[i].value;break;case"mla_terms_search[radio_terms]":h.radio_terms=g[i].value;break;case"mla_terms_search[taxonomies][]":h.taxonomies[h.taxonomies.length]=g[i].value;break}}mlaModal.settings.query[mlaModal.settings.state].termsSearch=h;d("#mla-search-submit",e).trigger("click");return false});d("#mla-terms-search-input").on("keypress",function(g){if(13==g.which){g.preventDefault();d("#mla-terms-search-submit").trigger("click")}})}}})}if(mlaModal.settings.enableSearchBox){wp.media.view.MlaSearch=wp.media.View.extend({tagName:"div",className:"mla-search-box",template:wp.media.template("mla-search-box"),attributes:{type:"mla-search-box"},events:{input:"search",change:"search",click:"search",search:"search",MlaSearch:"search"},initialize:function(){var e=this.controller._state;if("undefined"===typeof mlaModal.settings.query[e]){mlaModal.settings.query[e]=_.clone(mlaModal.settings.query.initial);mlaModal.settings.query[e].searchFields=_.clone(mlaModal.settings.query.initial.searchFields)}},render:function(){var f=this.controller._state,e=_.extend(mlaModal.strings,mlaModal.settings.query[f]);searchValues={mla_filter_month:mlaModal.settings.query[f].filterMonth,mla_filter_term:mlaModal.settings.query[f].filterTerm,mla_terms_search:mlaModal.settings.query[f].termsSearch,mla_search_clicks:mlaModal.settings.query[f].searchClicks++,mla_search_value:mlaModal.settings.query[f].searchValue,mla_search_fields:mlaModal.settings.query[f].searchFields,mla_search_connector:mlaModal.settings.query[f].searchConnector};this.model.set({s:searchValues});this.$el.html(this.template(e));return this},search:function(g){var h=this.controller._state,e,f;if(("input"==g.type)&&("s[mla_search_value]"==g.target.name)){mlaModal.settings.query[h].searchValue=g.target.value;return}if(("click"==g.type)&&("mla_search_submit"!=g.target.name)){return}switch(g.target.name){case"s[mla_search_value]":mlaModal.settings.query[h].searchValue=g.target.value;break;case"mla_search_submit":e={mla_filter_month:mlaModal.settings.query[h].filterMonth,mla_filter_term:mlaModal.settings.query[h].filterTerm,mla_terms_search:mlaModal.settings.query[h].termsSearch,mla_search_clicks:mlaModal.settings.query[h].searchClicks++,mla_search_value:mlaModal.settings.query[h].searchValue,mla_search_fields:mlaModal.settings.query[h].searchFields,mla_search_connector:mlaModal.settings.query[h].searchConnector};this.model.set({s:e});break;case"s[mla_search_connector]":mlaModal.settings.query[h].searchConnector=g.target.value;break;case"s[mla_search_title]":if("change"!=g.type){break}f=mlaModal.settings.query[h].searchFields.indexOf("title");if(-1==f){mlaModal.settings.query[h].searchFields.push("title")}else{mlaModal.settings.query[h].searchFields.splice(f,1)}break;case"s[mla_search_name]":if("change"!=g.type){break}f=mlaModal.settings.query[h].searchFields.indexOf("name");if(-1==f){mlaModal.settings.query[h].searchFields.push("name")}else{mlaModal.settings.query[h].searchFields.splice(f,1)}break;case"s[mla_search_alt_text]":if("change"!=g.type){break}f=mlaModal.settings.query[h].searchFields.indexOf("alt-text");if(-1==f){mlaModal.settings.query[h].searchFields.push("alt-text")}else{mlaModal.settings.query[h].searchFields.splice(f,1)}break;case"s[mla_search_excerpt]":if("change"!=g.type){break}f=mlaModal.settings.query[h].searchFields.indexOf("excerpt");if(-1==f){mlaModal.settings.query[h].searchFields.push("excerpt")}else{mlaModal.settings.query[h].searchFields.splice(f,1)}break;case"s[mla_search_content]":if("change"!=g.type){break}f=mlaModal.settings.query[h].searchFields.indexOf("content");if(-1==f){mlaModal.settings.query[h].searchFields.push("content")}else{mlaModal.settings.query[h].searchFields.splice(f,1)}break;case"s[mla_search_file]":if("change"!=g.type){break}f=mlaModal.settings.query[h].searchFields.indexOf("file");if(-1==f){mlaModal.settings.query[h].searchFields.push("file")}else{mlaModal.settings.query[h].searchFields.splice(f,1)}break;case"s[mla_search_terms]":if("change"!=g.type){break}f=mlaModal.settings.query[h].searchFields.indexOf("terms");if(-1==f){mlaModal.settings.query[h].searchFields.push("terms")}else{mlaModal.settings.query[h].searchFields.splice(f,1)}break}}})}else{wp.media.view.MlaSearch=wp.media.View.extend({tagName:"span",className:"mla-simulate-search-button",template:wp.media.template("mla-simulate-search-button"),attributes:{type:"mla-simulate-search-button"},events:{click:"simulateSearch"},render:function(){this.$el.html(this.template(mlaModal.strings));return this},simulateSearch:function(){var f=this.controller._state,e={mla_filter_month:mlaModal.settings.query[f].filterMonth,mla_filter_term:mlaModal.settings.query[f].filterTerm,mla_terms_search:mlaModal.settings.query[f].termsSearch,mla_search_clicks:mlaModal.settings.query[f].searchClicks++,mla_search_value:mlaModal.settings.query[f].searchValue,mla_search_fields:mlaModal.settings.query[f].searchFields,mla_search_connector:mlaModal.settings.query[f].searchConnector};this.model.set({s:e})}})}if(mlaModal.settings.enableMimeTypes||mlaModal.settings.enableMonthsDropdown||mlaModal.settings.enableTermsDropdown||mlaModal.settings.enableTermsSearch||mlaModal.settings.enableSearchBox){wp.media.view.AttachmentsBrowser=wp.media.view.AttachmentsBrowser.extend({initialize:function(){c.prototype.initialize.apply(this,arguments);if("undefined"===typeof window.eml){if("grid"===mlaModal.settings.screen){d("body").addClass("mla-media-grid")}else{d("body").addClass("mla-media-modal")}mlaModal.settings.oldHeight=0;this.$window=d(window);if("object"===typeof this.attachmentsWrapper){this.on("ready",this.adjustBrowser58,this);this.$window.on("resize",_.debounce(_.bind(this.adjustBrowser58,this),15))}else{if("object"===typeof this.attachments){this.on("ready",this.adjustBrowser57,this);this.$window.on("resize",_.debounce(_.bind(this.adjustBrowser57,this),15))}}}},adjustBrowser58:function(){var i=this.attachmentsWrapper,f=this.toolbar,h,e,g;e=f.primary.$el.height();g=f.secondary.$el.height();if(e>g){h=e}else{h=g}if((0<h)&&(h!==mlaModal.settings.oldHeight)){i.$el.css("top",h+10+"px");mlaModal.settings.oldHeight=h}},adjustBrowser57:function(){var f=this.attachments,g=this.toolbar,i,e,h;e=g.primary.$el.height();h=g.secondary.$el.height();if(e>h){i=e}else{i=h}if((0<i)&&(i!==mlaModal.settings.oldHeight)){f.$el.css("top",i+10+"px");mlaModal.settings.oldHeight=i}},createToolbar:function(){var e,f=this.controller._state;mlaModal.settings.state=f;mlaModal.settings.$el=this.controller.$el;if("undefined"===typeof mlaModal.settings.query[f]){mlaModal.settings.query[f]=_.clone(mlaModal.settings.query.initial);mlaModal.settings.query[f].searchFields=_.clone(mlaModal.settings.query.initial.searchFields)}c.prototype.createToolbar.apply(this,arguments);mlaModal.utility.mlaAttachmentsBrowser=this;e=this.options.filters;d(".media-attachments-filter-heading",this.$el).css("display","none");if(("all"===e)&&mlaModal.settings.enableMimeTypes){this.toolbar.unset("filters",{silent:true});this.toolbar.set("filters",new wp.media.view.AttachmentFilters.Mla({controller:this.controller,model:this.collection.props,priority:-80}).render())}if(("uploaded"===e)&&mlaModal.settings.enableMimeTypes){this.toolbar.unset("filters",{silent:true});this.toolbar.set("filters",new wp.media.view.AttachmentFilters.MlaUploaded({controller:this.controller,model:this.collection.props,priority:-80}).render())}if(this.options.search&&mlaModal.settings.enableMonthsDropdown){this.toolbar.unset("dateFilter",{silent:true});this.toolbar.set("dateFilter",new wp.media.view.AttachmentFilters.MlaMonths({controller:this.controller,model:this.collection.props,priority:-75}).render())}if(this.options.search&&mlaModal.settings.enableTermsDropdown){this.toolbar.set("terms",new wp.media.view.AttachmentFilters.MlaTerms({controller:this.controller,model:this.collection.props,priority:-50}).render())}if(this.options.search&&mlaModal.settings.enableTermsSearch){this.toolbar.set("termsSearch",new wp.media.view.MlaTermsSearch({controller:this.controller,model:this.collection.props,priority:-50}).render())}if(this.options.search){if(mlaModal.settings.enableSearchBox){this.controller.on("content:activate",this.hideDefaultSearch);this.controller.on("edit:activate",this.hideDefaultSearch);this.controller.on("router:render",this.hideDefaultSearch);this.controller.on("uploader:ready",this.hideDefaultSearch);this.toolbar.set("MlaSearch",new wp.media.view.MlaSearch({controller:this.controller,model:this.collection.props,priority:-40}).render())}else{this.toolbar.set("MlaSearch",new wp.media.view.MlaSearch({controller:this.controller,model:this.collection.props,priority:70}).render())}}},hideDefaultSearch:function(){var e=d("#media-search-input",mlaModal.settings.$el),f=d(".media-search-input-label",mlaModal.settings.$el);if(0===e.length){e=d("div.media-toolbar-primary > input.search",mlaModal.settings.$el)}e.hide();f.hide()},updateFilters:function(e,f){var g={};if(this.options.search&&mlaModal.settings.enableTermsDropdown&&mlaModal.settings.termsTaxonomy==e){g=mlaModal.utility.parseTermsOptions(f);mlaModal.settings.termsClass=g.termsClass;mlaModal.settings.termsText=g.termsText;mlaModal.settings.termsValue=g.termsValue;this.toolbar.unset("terms",{silent:true});this.toolbar.set("terms",new wp.media.view.AttachmentFilters.MlaTerms({controller:this.controller,model:this.collection.props,priority:-80}).render())}}})}mlaModal.utility.parseTermsOptions=function(k){var j={termsClass:[mlaModal.settings.termsClass[0],mlaModal.settings.termsClass[1]],termsText:[mlaModal.settings.termsText[0],mlaModal.settings.termsText[1]],termsValue:[mlaModal.settings.termsValue[0],mlaModal.settings.termsValue[1]]},g=2,e,f,i=/\<option(( class=\"([^\"]+)\" )|( ))value=((\'([^\']+)\')|(\"([^\"]+)\"))([^\>]*)\>([^\<]*)\<.*/g,h=[];if("object"===typeof k){g=mlaModal.settings.termsValue.length;for(e=2;e<g;e++){h[e]={termsClass:mlaModal.settings.termsClass[e],termsText:mlaModal.settings.termsText[e],termsValue:mlaModal.settings.termsValue[e]};if("undefined"!==typeof k[mlaModal.settings.termsValue[e]]){delete k[mlaModal.settings.termsValue[e]]}}for(f in k){h[e++]={termsClass:"level-0",termsText:k[f],termsValue:f.toString()}}if(g===e){return{termsClass:mlaModal.settings.termsClass,termsText:mlaModal.settings.termsText,termsValue:mlaModal.settings.termsValue}}h.sort(function(m,l){if(m.termsText>l.termsText){return 1}else{if(m.termsText<l.termsText){return -1}else{return 0}}});e=2;for(f in h){j.termsClass[e]=h[f].termsClass;j.termsText[e]=h[f].termsText;j.termsValue[e++]=h[f].termsValue}return j}h=i.exec(k);while(null!==(h=i.exec(k))){j.termsClass[g]=h[3];j.termsValue[g]=("undefined"===typeof h[6])?h[9]:h[7];j.termsText[g++]=h[11].replace(" ",mlaModal.settings.termsIndent)}return j};mlaModal.utility.arrayCleanup=function(g){var f=[],e=("string"===typeof g);if(e){g=g.split(mlaModal.settings.comma)}jQuery.each(g,function(h,i){i=jQuery.trim(i);if(i&&jQuery.inArray(i,f)==-1){f.push(i)}});f.sort();if(e){f=f.join(mlaModal.settings.comma)}return f};mlaModal.utility.parseTaxonomyId=function(f){var e=f.split("-");e.shift();e.shift();return e.join("-")};mlaModal.tagBox={cleanTags:function(f){var e=mlaModal.settings.comma;if(","!==e){f=f.replace(new RegExp(e,"g"),",")}f=f.replace(/\s*,\s*/g,",").replace(/,+/g,",").replace(/[,\s]+$/,"").replace(/^[,\s]+/,"");if(","!==e){f=f.replace(/,/g,e)}return f},parseTags:function(h){var l=h.id,f=l.split("-check-num-")[1],i=d(h).closest(".tagsdiv"),k=i.find(".the-tags"),e=mlaModal.settings.comma,g=k.val().split(e),j=[];delete g[f];d.each(g,function(m,n){n=d.trim(n);if(n){j.push(n)}});k.val(this.cleanTags(j.join(e)));this.quickClicks(i);return false},quickClicks:function(g){var j=d(".the-tags",g),h=d(".tagchecklist",g),i=d(g).attr("id"),e,f;if(!j.length){return}f=j.prop("disabled");e=j.val().split(mlaModal.settings.comma);h.empty();d.each(e,function(m,n){var l,k;n=d.trim(n);if(!n){return}if(mlaModal.settings.generateTagUl){l=d("<li />").text(n)}else{l=d("<span />").text(n)}if(!f){if(mlaModal.settings.generateTagButtons){k=d('<button class="ntdelbutton" id="'+i+"-check-num-"+m+'" type="button"><span class="remove-tag-icon" aria-hidden="true"></span><span class="screen-reader-text">'+mlaModal.settings.removeTerm+": "+n+"</span></button>")}else{k=d('<a id="'+i+"-check-num-"+m+'" class="ntdelbutton">X</a>')}k.on("click",function(){mlaModal.tagBox.parseTags(this)});l.prepend(" ").prepend(k)}h.append(l)})},flushTags:function(k,h,g){var m,e,i,n=d(".the-tags",k),j=d("input.newtag",k),l=mlaModal.settings.comma;h=h||false;i=h?d(h).text():j.val();m=n.val();e=m?m+l+i:i;e=mlaModal.utility.arrayCleanup(this.cleanTags(e));n.val(e);this.quickClicks(k);if(!h){j.val("")}if("undefined"==typeof(g)){j.focus()}return false},getCloud:function(f,e){d.post(ajaxurl,{action:"get-tagcloud",tax:e},function(h,g){if(0===h||"success"!=g){h=wpAjax.broken}h=d('<p id="tagcloud-'+e+'" class="the-tagcloud">'+h+"</p>");d("a",h).on("click",function(){mlaModal.tagBox.flushTags(d(this).closest(".mla-taxonomy-field").children(".tagsdiv"),this);return false});d("#"+f).after(h)})},init:function(i,e,g){var h,f;h=d("#mla-taxonomy-"+e,g);f=d("div.ajaxtag",h);mlaModal.tagBox.quickClicks(h);d("input.tagadd",f).on("click",function(){mlaModal.tagBox.flushTags(d(this).closest(".tagsdiv"))});d("input.newtag",f).on("keyup",function(j){if(13==j.which){mlaModal.tagBox.flushTags(h);return false}}).on("keypress",function(j){if(13==j.which){j.preventDefault();return false}}).each(function(){d(this).suggest(ajaxurl+"?action=ajax-tag-search&tax="+e,{delay:500,resultsClass:"mla_ac_results",selectClass:"mla_ac_over",matchClass:"mla_ac_match",minchars:2,multiple:true,multipleSep:mlaModal.settings.comma+" "})});h.siblings(":first").on("click",function(){mlaModal.tagBox.getCloud(d("a",this).attr("id"),e);d("a",this).unbind().on("click",function(){d(this).siblings(".the-tagcloud").toggle();return false});return false});d(".compat-field-"+e+" td",g).on("mouseleave",function(){var m,k=this,j=mlaModal.utility.arrayCleanup(d(".server-tags",k).val()),l=mlaModal.utility.arrayCleanup(d(".the-tags",k).val());if(j===l){return}d(k).css("opacity","0.5");m={id:i};m[e]=l;wp.media.post(mlaModal.settings.ajaxUpdateCompatAction,m).done(function(o){var p,n,q;for(n in o){if("object"===typeof(o[n]["object-terms"])){if(null!==mlaModal.utility.mlaAttachmentsBrowser){mlaModal.utility.mlaAttachmentsBrowser.updateFilters(n,o[n]["object-terms"])}delete o[n]["object-terms"]}for(q in o[n]){d("#"+q,k).replaceWith(o[n][q])}p=d("#mla-taxonomy-"+n,k);mlaModal.tagBox.quickClicks(p)}d(k).css("opacity","1.0")})});h.on("change",function(j){j.stopPropagation();return false});d(".the-tags, .server-tags .newtag",h).on("change",function(j){j.stopPropagation();return false})}};if(mlaModal.settings.enableDetailsCategory||mlaModal.settings.enableDetailsTag){wp.media.view.AttachmentCompat=wp.media.view.AttachmentCompat.extend({initialize:function(){b.prototype.initialize.apply(this,arguments);this.on("ready",function(){mlaModal.utility.hookCompatTaxonomies(this.model.get("id"),this.el)})}})}if(mlaModal.settings.enableDetailsCategory||mlaModal.settings.enableDetailsTag){wp.media.model.Selection=wp.media.model.Selection.extend({initialize:function(){a.prototype.initialize.apply(this,arguments);this.on("selection:reset",function(){mlaModal.cid=null});this.on("selection:unsingle",function(){mlaModal.cid=null});this.on("selection:single",function(e){mlaModal.cid=e.cid});this.on("change:uploading",function(){mlaModal.uploading=true});this.on("change",function(e){var f=false,g;if(mlaModal.uploading&&mlaModal.cid===e.cid){mlaModal.uploading=false;f=true}else{if(false===e.attributes.uploading){g=_.clone(e.changed);delete g.title;delete g.caption;delete g.alt;delete g.description;if(!_.isEmpty(g)){f=true}}}if(true===f){mlaModal.utility.hookCompatTaxonomies(e.get("id"),mlaModal.settings.$el)}})}})}mlaModal.utility.hookCompatTaxonomies=function(h,f){var e,g=null;d(".mla-taxonomy-field .categorydiv",f).each(function(){e=mlaModal.utility.parseTaxonomyId(d(this).attr("id"));if(-1!=mlaModal.settings.enhancedTaxonomies.indexOf(e)){d(".compat-field-"+e+" th",f).on("click",{id:h,currentTaxonomy:e,el:f},function(i){mlaModal.utility.fillCompatTaxonomies(i.data)});d("tr.compat-field-"+e,f).each(function(){if(d(this).hasClass("mla-taxonomy-row")){d(this).show()}else{d(this).remove()}});if(null===g){g=e}}else{d("tr.compat-field-"+e,f).each(function(){if(d(this).hasClass("mla-taxonomy-row")){d(this).remove()}})}});d(".mla-taxonomy-field .tagsdiv",f).each(function(){e=mlaModal.utility.parseTaxonomyId(d(this).attr("id"));if(-1!=mlaModal.settings.enhancedTaxonomies.indexOf(e)){d(".compat-field-"+e+" th",f).on("click",{id:h,currentTaxonomy:e,el:f},function(i){mlaModal.utility.fillCompatTaxonomies(i.data)});d("tr.compat-field-"+e,f).each(function(){if(d(this).hasClass("mla-taxonomy-row")){d(this).show()}else{d(this).remove()}});if(null===g){g=e}}else{d("tr.compat-field-"+e,f).each(function(){if(d(this).hasClass("mla-taxonomy-row")){d(this).remove()}})}});if(mlaModal.settings.enableTermsAutofill&&null!==g){d(".compat-field-"+g+" th",f).trigger("click")}};mlaModal.utility.fillCompatTaxonomies=function(i){var f=i.el,h=[],e,g;d(".mla-taxonomy-field .categorydiv",f).each(function(){e=mlaModal.utility.parseTaxonomyId(d(this).attr("id"));h[h.length]=e;g=".compat-field-"+e;if("undefined"===typeof(mlaModal.initialHTML[e])){mlaModal.initialHTML[e]=d(g,f).html()}else{d(g,f).html(mlaModal.initialHTML[e])}d(g+" .categorydiv",f).html(mlaModal.strings.loadingText)});d(".mla-taxonomy-field .tagsdiv",f).each(function(){e=mlaModal.utility.parseTaxonomyId(d(this).attr("id"));h[h.length]=e;g=".compat-field-"+e;if("undefined"===typeof(mlaModal.initialHTML[e])){mlaModal.initialHTML[e]=d(g,f).html()}else{d(g,f).html(mlaModal.initialHTML[e])}d(g+" .tagsdiv",f).html(mlaModal.strings.loadingText)});if(h.length){wp.media.post(mlaModal.settings.ajaxFillCompatAction,{id:i.id,query:h}).done(function(k){var j,l;for(j in k){l=".compat-field-"+j;d(l,f).html(k[j])}mlaModal.utility.supportCompatTaxonomies(i);d(".compat-field-"+i.currentTaxonomy+" td",f).show()})}};mlaModal.utility.supportCompatTaxonomies=function(g){var f=g.id,e=g.el;if(mlaModal.settings.enableDetailsCategory){d(".mla-taxonomy-field .categorydiv",e).each(function(){var j=d(this),h,k,i,n,l,p,o,m;i=mlaModal.utility.parseTaxonomyId(d(this).attr("id"));n=i+"_tab";l="#mla-"+i;p="#mla-new-"+i;o="#mla-search-"+i;m="#mla-attachments-"+f+"-"+i;if(i=="category"){n="cats"}j.find(".category-tabs").show();d(".compat-field-"+i+" th",e).on("click",function(){d(this).siblings("td").slideToggle()});j.on("mouseleave",function(){var t,q,s=[],r=j.find(l+"-checklist input:checked");r.each(function(){s[s.length]=d(this).val()});s.sort(function(v,u){return v-u});s=s.join(",");q=j.siblings(m).val();if(q===s){return}j.siblings(m).val(s);j.prop("disabled",true);t={id:f};t[i]=s;wp.media.post(mlaModal.settings.ajaxUpdateCompatAction,t).done(function(v){var u,w;for(u in v){for(w in v[u]){j.find("#"+w).html(v[u][w])}}j.find(o).val("");j.find(l+"-searcher").addClass("mla-hidden-children");j.prop("disabled",false)})});j.on('change input[type="checkbox"]',function(q){q.stopPropagation();return false});j.find(l+"-tabs a").on("click",function(){var q=d(this).attr("href");d(this).parent().addClass("tabs").siblings("li").removeClass("tabs");j.find(l+"-tabs").siblings(".tabs-panel").hide();j.find(q).show();d(this).focus();if("#mla-"+i+"-all"==q){deleteUserSetting(n)}else{setUserSetting(n,"pop")}return false});if(getUserSetting(n)){j.find(l+'-tabs a[href="#mla-'+i+'-pop"]').trigger("click")}j.find(l+"-add-toggle").on("click",function(){j.find(l+"-searcher").addClass("mla-hidden-children");j.find(l+"-adder").toggleClass("mla-hidden-children");j.find(l+'-tabs a[href="#mla-'+i+'-all"]').trigger("click");j.find(l+"-checklist li").show();j.find(l+"-checklist-pop li").show();if(false===j.find(l+"-adder").hasClass("mla-hidden-children")){j.find(p).val("").removeClass("form-input-tip");j.find(p).focus()}return false});j.find(p).on("keypress",function(q){if(13===q.keyCode){q.preventDefault();j.find(l+"-add-submit").trigger("click")}});j.find(l+"-add-submit").on("click",function(){j.find(p).focus()});h=function(q){if(!j.find(p).val()){return false}q.data+="&"+j.find(l+"-checklist :checked").serialize();j.prop("disabled",true);return q};k=function(v,u){var t,q=j.find("#new"+i+"_parent");j.prop("disabled",false);if("undefined"!=u.parsed.responses[0]&&(t=u.parsed.responses[0].supplemental.newcat_parent)){q.before(t);q.remove();if(null!==mlaModal.utility.mlaAttachmentsBrowser){mlaModal.utility.mlaAttachmentsBrowser.updateFilters(i,t)}}};j.find(l+"-checklist").wpList({alt:"",response:"mla-"+i+"-ajax-response",addBefore:h,addAfter:k});j.find(l+"-checklist, "+l+"-checklist-pop").on("click",'li.popular-category > label input[type="checkbox"]',function(){var q=d(this),s=q.is(":checked"),r=q.val();if(r&&q.parents("#mla-taxonomy-"+i).length){d("#in-"+i+"-"+r+", #in-popular-"+i+"-"+r,"#mla-taxonomy-"+i).prop("checked",s)}});d.extend(d.expr.pseudos||d.expr[":"],{matchTerms:function(s,r,q,t){return(s.textContent||s.innerText||"").toLowerCase().indexOf((q[3]||"").toLowerCase())>=0}});j.find(o).on("keypress",function(q){if(13===q.keyCode){q.preventDefault();j.find(o).val("");j.find(l+"-searcher").addClass("mla-hidden-children");j.find(l+"-checklist li").show();j.find(l+"-checklist-pop li").show();return}});j.find(o).on("keyup",function(s){var u,t,v,r,q;if(13===s.keyCode){s.preventDefault();j.find(l+"-search-toggle").focus();return}u=j.find(o).val();t=j.find(l+"-checklist li");v=j.find(l+"-checklist-pop li");if(0<u.length){t.hide();v.hide()}else{t.show();v.show()}r=j.find(l+"-checklist label:matchTerms('"+u+"')");r.closest("li").find("li").andSelf().show();r.parents(l+"-checklist li").show();q=j.find(l+"-checklist-pop label:matchTerms('"+u+"')");q.closest("li").find("li").andSelf().show();q.parents(l+"-checklist li").show()});j.find(l+"-search-toggle").on("click",function(){j.find(l+"-adder ").addClass("mla-hidden-children");j.find(l+"-searcher").toggleClass("mla-hidden-children");j.find(l+'-tabs a[href="#mla-'+i+'-all"]').trigger("click");j.find(l+"-checklist li").show();j.find(l+"-checklist-pop li").show();if(false===j.find(l+"-searcher").hasClass("mla-hidden-children")){j.find(o).val("").removeClass("form-input-tip");j.find(o).focus()}return false})})}if(mlaModal.settings.enableDetailsTag){d(".mla-taxonomy-field .tagsdiv",e).each(function(){var h=mlaModal.utility.parseTaxonomyId(d(this).attr("id"));d(".compat-field-"+h+" th",e).on("click",function(){d(this).siblings("td").slideToggle()});mlaModal.tagBox.init(f,h,e)})}}}(jQuery));
|
languages/media-library-assistant-en_US - References.pot
CHANGED
@@ -2,7 +2,7 @@
|
|
2 |
msgid ""
|
3 |
msgstr ""
|
4 |
"Project-Id-Version: Media Library Assistant\n"
|
5 |
-
"POT-Creation-Date: 2021-
|
6 |
"PO-Revision-Date: 2015-08-21 21:38-0800\n"
|
7 |
"Last-Translator: David Lingren <david@fairtradejudaica.org>\n"
|
8 |
"Language-Team: David Lingren <david@davidlingren.com>\n"
|
@@ -24,7 +24,7 @@ msgstr ""
|
|
24 |
#: includes/class-mla-admin-columns-pro-support-423.php:178
|
25 |
#: includes/class-mla-admin-columns-pro-support-44.php:175
|
26 |
#: includes/class-mla-admin-columns-pro-support.php:193
|
27 |
-
#: includes/class-mla-ajax.php:356 includes/class-mla-edit-media.php:
|
28 |
#: includes/class-mla-list-table.php:712
|
29 |
msgid "Draft"
|
30 |
msgstr ""
|
@@ -32,7 +32,7 @@ msgstr ""
|
|
32 |
#: includes/class-mla-admin-columns-pro-support-423.php:181
|
33 |
#: includes/class-mla-admin-columns-pro-support-44.php:178
|
34 |
#: includes/class-mla-admin-columns-pro-support.php:196
|
35 |
-
#: includes/class-mla-ajax.php:350 includes/class-mla-edit-media.php:
|
36 |
#: includes/class-mla-list-table.php:715
|
37 |
msgid "Scheduled"
|
38 |
msgstr ""
|
@@ -40,7 +40,7 @@ msgstr ""
|
|
40 |
#: includes/class-mla-admin-columns-pro-support-423.php:184
|
41 |
#: includes/class-mla-admin-columns-pro-support-44.php:181
|
42 |
#: includes/class-mla-admin-columns-pro-support.php:199
|
43 |
-
#: includes/class-mla-edit-media.php:
|
44 |
msgctxt "post state"
|
45 |
msgid "Pending"
|
46 |
msgstr ""
|
@@ -74,10 +74,10 @@ msgstr ""
|
|
74 |
#: includes/class-mla-admin-columns-pro-support.php:692
|
75 |
#: includes/class-mla-admin-columns-pro-support.php:759
|
76 |
#: includes/class-mla-admin-columns-pro-support.php:821
|
77 |
-
#: includes/class-mla-core-options.php:
|
78 |
-
#: includes/class-mla-core-options.php:
|
79 |
-
#: includes/class-mla-core-options.php:
|
80 |
-
#: includes/class-mla-core-options.php:
|
81 |
#: includes/class-mla-list-table.php:1234
|
82 |
#: includes/class-mla-list-table.php:1279
|
83 |
#: includes/class-mla-list-table.php:1329
|
@@ -97,10 +97,10 @@ msgstr ""
|
|
97 |
#: includes/class-mla-admin-columns-pro-support.php:715
|
98 |
#: includes/class-mla-admin-columns-pro-support.php:778
|
99 |
#: includes/class-mla-admin-columns-pro-support.php:840
|
100 |
-
#: includes/class-mla-edit-media.php:
|
101 |
-
#: includes/class-mla-edit-media.php:
|
102 |
-
#: includes/class-mla-edit-media.php:
|
103 |
-
#: includes/class-mla-edit-media.php:
|
104 |
#: includes/class-mla-list-table.php:1252
|
105 |
#: includes/class-mla-list-table.php:1301
|
106 |
#: includes/class-mla-list-table.php:1347
|
@@ -111,10 +111,10 @@ msgstr ""
|
|
111 |
#: includes/class-mla-admin-columns-pro-support-423.php:1027
|
112 |
#: includes/class-mla-admin-columns-pro-support-44.php:1024
|
113 |
#: includes/class-mla-admin-columns-pro-support.php:1065
|
114 |
-
#: includes/class-mla-core-options.php:
|
115 |
-
#: includes/class-mla-core-options.php:
|
116 |
-
#: includes/class-mla-core-options.php:904
|
117 |
#: includes/class-mla-core-options.php:918
|
|
|
118 |
#: includes/class-mla-list-table.php:561 includes/class-mla-list-table.php:1487
|
119 |
#: includes/class-mla-settings-shortcodes-tab.php:649
|
120 |
msgid "None"
|
@@ -139,7 +139,7 @@ msgstr ""
|
|
139 |
#: includes/class-mla-admin-columns-pro-support-423.php:1134
|
140 |
#: includes/class-mla-admin-columns-pro-support-44.php:1131
|
141 |
#: includes/class-mla-admin-columns-pro-support.php:1172
|
142 |
-
#: includes/class-mla-core-options.php:
|
143 |
#: includes/class-mla-list-table.php:1643
|
144 |
msgctxt "table_view_singular"
|
145 |
msgid "Unattached"
|
@@ -147,7 +147,7 @@ msgstr ""
|
|
147 |
|
148 |
#: includes/class-mla-admin-columns-support-deprecated.php:33
|
149 |
#: includes/class-mla-admin-columns-support.php:43
|
150 |
-
#: includes/class-mla-core-options.php:
|
151 |
#: includes/class-mla-settings.php:1446 includes/class-mla-settings.php:1464
|
152 |
#: index.php:46
|
153 |
msgid "Media Library Assistant"
|
@@ -155,7 +155,7 @@ msgstr ""
|
|
155 |
|
156 |
#: includes/class-mla-admin-columns-support-deprecated.php:34
|
157 |
#: includes/class-mla-admin-columns-support.php:44
|
158 |
-
#: includes/class-mla-core-options.php:
|
159 |
msgid "Assistant"
|
160 |
msgstr ""
|
161 |
|
@@ -167,15 +167,15 @@ msgstr ""
|
|
167 |
|
168 |
#: includes/class-mla-ajax.php:77 includes/class-mla-ajax.php:94
|
169 |
#: includes/class-mla-ajax.php:111 includes/class-mla-ajax.php:129
|
170 |
-
#: includes/class-mla-ajax.php:148 includes/class-mla-data-query.php:
|
171 |
-
#: includes/class-mla-data-query.php:
|
172 |
-
#: includes/class-mla-data-query.php:
|
173 |
-
#: includes/class-mla-data-query.php:
|
174 |
-
#: includes/class-mla-data-query.php:
|
175 |
-
#: includes/class-mla-data-query.php:
|
176 |
-
#: includes/class-mla-data-query.php:
|
177 |
-
#: includes/class-mla-data-query.php:
|
178 |
-
#: includes/class-mla-data-query.php:
|
179 |
msgid "DEBUG"
|
180 |
msgstr ""
|
181 |
|
@@ -207,29 +207,29 @@ msgid ""
|
|
207 |
"\"%3$d\" count = %4$d."
|
208 |
msgstr ""
|
209 |
|
210 |
-
#: includes/class-mla-ajax.php:337 includes/class-mla-core-options.php:
|
211 |
-
#: includes/class-mla-data.php:
|
212 |
-
#: includes/class-mla-main.php:
|
213 |
-
#: includes/class-mla-objects.php:
|
214 |
#: includes/mla-main-search-box-template.php:47
|
215 |
#: includes/mla-media-modal-js-template.php:38
|
216 |
msgid "Title"
|
217 |
msgstr ""
|
218 |
|
219 |
-
#: includes/class-mla-ajax.php:337 includes/class-mla-main.php:
|
220 |
#: includes/class-mla-thumbnail-generation.php:644
|
221 |
msgid "Type"
|
222 |
msgstr ""
|
223 |
|
224 |
-
#: includes/class-mla-ajax.php:337 includes/class-mla-main.php:
|
225 |
msgid "Date"
|
226 |
msgstr ""
|
227 |
|
228 |
-
#: includes/class-mla-ajax.php:337 includes/class-mla-main.php:
|
229 |
#: includes/class-mla-settings-custom-fields-tab.php:524
|
230 |
#: includes/class-mla-settings-custom-fields-tab.php:834
|
231 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
232 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
233 |
#: includes/class-mla-settings-upload-tab.php:553
|
234 |
msgid "Status"
|
235 |
msgstr ""
|
@@ -251,8 +251,8 @@ msgstr ""
|
|
251 |
|
252 |
#: includes/class-mla-ajax.php:395 includes/class-mla-ajax.php:402
|
253 |
#: includes/class-mla-ajax.php:411 includes/class-mla-core.php:893
|
254 |
-
#: includes/class-mla-core.php:911 includes/class-mla-core.php:
|
255 |
-
#: includes/class-mla-core.php:
|
256 |
#: includes/class-mla-data-office.php:35 includes/class-mla-data-office.php:40
|
257 |
#: includes/class-mla-data-office.php:50 includes/class-mla-data-office.php:54
|
258 |
#: includes/class-mla-data-office.php:69 includes/class-mla-data-office.php:74
|
@@ -263,16 +263,16 @@ msgstr ""
|
|
263 |
#: includes/class-mla-data.php:196 includes/class-mla-data.php:257
|
264 |
#: includes/class-mla-data.php:325 includes/class-mla-data.php:414
|
265 |
#: includes/class-mla-data.php:566 includes/class-mla-data.php:629
|
266 |
-
#: includes/class-mla-data.php:
|
267 |
-
#: includes/class-mla-data.php:
|
268 |
-
#: includes/class-mla-data.php:
|
269 |
-
#: includes/class-mla-data.php:
|
270 |
-
#: includes/class-mla-data.php:
|
271 |
-
#: includes/class-mla-data.php:
|
272 |
-
#: includes/class-mla-data.php:
|
273 |
-
#: includes/class-mla-data.php:
|
274 |
-
#: includes/class-mla-edit-media.php:321 includes/class-mla-edit-media.php:
|
275 |
-
#: includes/class-mla-edit-media.php:
|
276 |
#: includes/class-mla-main.php:837 includes/class-mla-main.php:839
|
277 |
#: includes/class-mla-main.php:842 includes/class-mla-main.php:902
|
278 |
#: includes/class-mla-main.php:936 includes/class-mla-main.php:945
|
@@ -281,10 +281,10 @@ msgstr ""
|
|
281 |
#: includes/class-mla-main.php:1556 includes/class-mla-main.php:1606
|
282 |
#: includes/class-mla-main.php:1716 includes/class-mla-main.php:1745
|
283 |
#: includes/class-mla-main.php:1887 includes/class-mla-main.php:1894
|
284 |
-
#: includes/class-mla-main.php:
|
285 |
-
#: includes/class-mla-main.php:
|
286 |
-
#: includes/class-mla-main.php:
|
287 |
-
#: includes/class-mla-main.php:
|
288 |
#: includes/class-mla-media-modal.php:618 includes/class-mla-mime-types.php:825
|
289 |
#: includes/class-mla-mime-types.php:1209
|
290 |
#: includes/class-mla-mime-types.php:1297
|
@@ -302,11 +302,11 @@ msgstr ""
|
|
302 |
#: includes/class-mla-mime-types.php:2525
|
303 |
#: includes/class-mla-mime-types.php:2604
|
304 |
#: includes/class-mla-mime-types.php:2613
|
305 |
-
#: includes/class-mla-mime-types.php:2645 includes/class-mla-objects.php:
|
306 |
#: includes/class-mla-options.php:218 includes/class-mla-options.php:434
|
307 |
#: includes/class-mla-options.php:515 includes/class-mla-options.php:570
|
308 |
-
#: includes/class-mla-options.php:1133 includes/class-mla-options.php:
|
309 |
-
#: includes/class-mla-options.php:
|
310 |
#: includes/class-mla-settings-custom-fields-tab.php:169
|
311 |
#: includes/class-mla-settings-custom-fields-tab.php:252
|
312 |
#: includes/class-mla-settings-custom-fields-tab.php:256
|
@@ -324,21 +324,21 @@ msgstr ""
|
|
324 |
#: includes/class-mla-settings-documentation-tab.php:142
|
325 |
#: includes/class-mla-settings-documentation-tab.php:337
|
326 |
#: includes/class-mla-settings-documentation-tab.php:1278
|
327 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
328 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
329 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
330 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
331 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
332 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
333 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
334 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
335 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
336 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
337 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
338 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
339 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
340 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
341 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
342 |
#: includes/class-mla-settings-shortcodes-tab.php:102
|
343 |
#: includes/class-mla-settings-shortcodes-tab.php:113
|
344 |
#: includes/class-mla-settings-shortcodes-tab.php:117
|
@@ -368,17 +368,17 @@ msgstr ""
|
|
368 |
#: includes/class-mla-settings.php:1792 includes/class-mla-settings.php:1799
|
369 |
#: includes/class-mla-settings.php:1808 includes/class-mla-settings.php:1845
|
370 |
#: includes/class-mla-settings.php:1853 includes/class-mla-settings.php:1862
|
371 |
-
#: includes/class-mla-shortcode-support.php:
|
372 |
-
#: includes/class-mla-shortcode-support.php:
|
373 |
-
#: includes/class-mla-shortcode-support.php:
|
374 |
-
#: includes/class-mla-shortcode-support.php:
|
375 |
-
#: includes/class-mla-shortcode-support.php:
|
376 |
-
#: includes/class-mla-shortcode-support.php:
|
377 |
-
#: includes/class-mla-shortcode-support.php:
|
378 |
-
#: includes/class-mla-shortcode-support.php:5788
|
379 |
#: includes/class-mla-shortcode-support.php:5804
|
380 |
-
#: includes/class-mla-shortcode-support.php:
|
381 |
#: includes/class-mla-shortcode-support.php:5843
|
|
|
382 |
#: includes/class-mla-thumbnail-generation.php:437
|
383 |
#: includes/class-mla-thumbnail-generation.php:449
|
384 |
#: includes/class-mla-thumbnail-generation.php:461
|
@@ -395,105 +395,105 @@ msgstr ""
|
|
395 |
msgid "You are not allowed to edit this Attachment."
|
396 |
msgstr ""
|
397 |
|
398 |
-
#: includes/class-mla-core-options.php:
|
399 |
msgid "Attachment Categories"
|
400 |
msgstr ""
|
401 |
|
402 |
-
#: includes/class-mla-core-options.php:
|
403 |
msgid "Check this option to add support for Attachment Categories."
|
404 |
msgstr ""
|
405 |
|
406 |
-
#: includes/class-mla-core-options.php:
|
407 |
msgid "Attachment Tags"
|
408 |
msgstr ""
|
409 |
|
410 |
-
#: includes/class-mla-core-options.php:
|
411 |
msgid "Check this option to add support for Attachment Tags."
|
412 |
msgstr ""
|
413 |
|
414 |
-
#: includes/class-mla-core-options.php:
|
415 |
msgid "Where-used Reporting"
|
416 |
msgstr ""
|
417 |
|
418 |
-
#: includes/class-mla-core-options.php:
|
419 |
msgid "Exclude Revisions"
|
420 |
msgstr ""
|
421 |
|
422 |
-
#: includes/class-mla-core-options.php:
|
423 |
msgid "Check this option to exclude revisions from where-used reporting."
|
424 |
msgstr ""
|
425 |
|
426 |
-
#: includes/class-mla-core-options.php:
|
427 |
msgid "Where-used database access tuning"
|
428 |
msgstr ""
|
429 |
|
430 |
-
#: includes/class-mla-core-options.php:
|
431 |
-
#: includes/class-mla-edit-media.php:
|
432 |
msgid "Featured in"
|
433 |
msgstr ""
|
434 |
|
435 |
-
#: includes/class-mla-core-options.php:
|
436 |
-
#: includes/class-mla-core-options.php:
|
437 |
msgid "Enabled"
|
438 |
msgstr ""
|
439 |
|
440 |
-
#: includes/class-mla-core-options.php:
|
441 |
msgid "Search database posts and pages for Featured Image attachments."
|
442 |
msgstr ""
|
443 |
|
444 |
-
#: includes/class-mla-core-options.php:
|
445 |
-
#: includes/class-mla-edit-media.php:
|
446 |
msgid "Inserted in"
|
447 |
msgstr ""
|
448 |
|
449 |
-
#: includes/class-mla-core-options.php:
|
450 |
msgid "Base"
|
451 |
msgstr ""
|
452 |
|
453 |
-
#: includes/class-mla-core-options.php:
|
454 |
msgid ""
|
455 |
"Search database posts and pages for attachments embedded in content."
|
456 |
"<br> Base = ignore intermediate size suffixes; use path, base "
|
457 |
"name and extension only."
|
458 |
msgstr ""
|
459 |
|
460 |
-
#: includes/class-mla-core-options.php:
|
461 |
-
#: includes/class-mla-edit-media.php:
|
462 |
#: includes/class-mla-settings.php:1558
|
463 |
msgid "Gallery in"
|
464 |
msgstr ""
|
465 |
|
466 |
-
#: includes/class-mla-core-options.php:
|
467 |
-
#: includes/class-mla-core-options.php:
|
468 |
msgid "Dynamic"
|
469 |
msgstr ""
|
470 |
|
471 |
-
#: includes/class-mla-core-options.php:
|
472 |
-
#: includes/class-mla-core-options.php:
|
473 |
#: includes/class-mla-settings-custom-fields-tab.php:764
|
474 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
475 |
msgid "Refresh"
|
476 |
msgstr ""
|
477 |
|
478 |
-
#: includes/class-mla-core-options.php:
|
479 |
-
#: includes/class-mla-core-options.php:
|
480 |
msgid "Cached"
|
481 |
msgstr ""
|
482 |
|
483 |
-
#: includes/class-mla-core-options.php:
|
484 |
msgid ""
|
485 |
"Search database posts and pages for [ gallery ] shortcode results.<br> "
|
486 |
" Dynamic = once every page load, Cached = once every login, Disabled = "
|
487 |
"never.<br> Refresh = update references, then set to Cached."
|
488 |
msgstr ""
|
489 |
|
490 |
-
#: includes/class-mla-core-options.php:
|
491 |
-
#: includes/class-mla-edit-media.php:
|
492 |
#: includes/class-mla-settings.php:1568
|
493 |
msgid "MLA Gallery in"
|
494 |
msgstr ""
|
495 |
|
496 |
-
#: includes/class-mla-core-options.php:
|
497 |
msgid ""
|
498 |
"Search database posts and pages for [mla_gallery] shortcode results."
|
499 |
"<br> Dynamic = once every page load, Cached = once every login, "
|
@@ -501,123 +501,125 @@ msgid ""
|
|
501 |
"Cached."
|
502 |
msgstr ""
|
503 |
|
504 |
-
#: includes/class-mla-core-options.php:
|
505 |
msgid "Taxonomy Support"
|
506 |
msgstr ""
|
507 |
|
508 |
-
#: includes/class-mla-core-options.php:
|
509 |
msgid "Compute Attachments Column"
|
510 |
msgstr ""
|
511 |
|
512 |
-
#: includes/class-mla-core-options.php:
|
513 |
msgid ""
|
514 |
"Check this option to calculate attachments per term in the Attachments "
|
515 |
"Column."
|
516 |
msgstr ""
|
517 |
|
518 |
-
#: includes/class-mla-core-options.php:
|
519 |
msgid "Show Count Column"
|
520 |
msgstr ""
|
521 |
|
522 |
-
#: includes/class-mla-core-options.php:
|
523 |
msgid "Check this option to display the Count column on taxonomy edit screens."
|
524 |
msgstr ""
|
525 |
|
526 |
-
#: includes/class-mla-core-options.php:
|
527 |
msgid ""
|
528 |
"Check the \"<strong>Support</strong>\" box to add the taxonomy to the "
|
529 |
"Assistant and the Edit Media screen."
|
530 |
msgstr ""
|
531 |
|
532 |
-
#: includes/class-mla-core-options.php:
|
533 |
msgid ""
|
534 |
"Check the \"<strong>Inline Edit</strong>\" box to display the taxonomy in "
|
535 |
"the Quick Edit and Bulk Edit areas."
|
536 |
msgstr ""
|
537 |
|
538 |
-
#: includes/class-mla-core-options.php:
|
539 |
msgid ""
|
540 |
"Check the \"<strong>Term Search</strong>\" box to add the taxonomy to the "
|
541 |
"\"Search Media/Terms\" list."
|
542 |
msgstr ""
|
543 |
|
544 |
-
#: includes/class-mla-core-options.php:
|
545 |
-
#: includes/class-mla-core-options.php:
|
|
|
546 |
#: includes/class-mla-settings.php:1094 includes/class-mla-settings.php:1095
|
547 |
msgid "For complete documentation"
|
548 |
msgstr ""
|
549 |
|
550 |
-
#: includes/class-mla-core-options.php:
|
551 |
-
#: includes/class-mla-core-options.php:
|
|
|
552 |
#: includes/class-mla-settings.php:1094 includes/class-mla-settings.php:1095
|
553 |
msgid "click here"
|
554 |
msgstr ""
|
555 |
|
556 |
-
#: includes/class-mla-core-options.php:
|
557 |
msgid ""
|
558 |
"Check the \"<strong>Checklist</strong>\" box to enable the checklist-style "
|
559 |
"meta box for a flat taxonomy."
|
560 |
msgstr ""
|
561 |
|
562 |
-
#: includes/class-mla-core-options.php:
|
563 |
msgid ""
|
564 |
"You must also check the <strong>\"Enable enhanced checklist taxonomies\"</"
|
565 |
"strong> box below to enable this feature."
|
566 |
msgstr ""
|
567 |
|
568 |
-
#: includes/class-mla-core-options.php:
|
569 |
msgid ""
|
570 |
"Check the \"<strong>Checked On Top</strong>\" box to move checked terms to "
|
571 |
"the top of the checklist-style meta box."
|
572 |
msgstr ""
|
573 |
|
574 |
-
#: includes/class-mla-core-options.php:
|
575 |
msgid ""
|
576 |
"Check the \"<strong>Inline Add Term</strong>\" box to support adding terms "
|
577 |
"in the Quick Edit and Bulk Edit areas."
|
578 |
msgstr ""
|
579 |
|
580 |
-
#: includes/class-mla-core-options.php:
|
581 |
msgid ""
|
582 |
"Use the \"<strong>List Filter</strong>\" option to select the taxonomy (or "
|
583 |
"custom field) on which to filter the Assistant table listing."
|
584 |
msgstr ""
|
585 |
|
586 |
-
#: includes/class-mla-core-options.php:
|
587 |
msgid ""
|
588 |
"To <strong>filter on a custom field</strong>, enter the field name and "
|
589 |
"select ASC (Ascending) or DESC (Descending) order."
|
590 |
msgstr ""
|
591 |
|
592 |
-
#: includes/class-mla-core-options.php:
|
593 |
msgid "Media/Assistant Screen Options"
|
594 |
msgstr ""
|
595 |
|
596 |
-
#: includes/class-mla-core-options.php:
|
597 |
msgid "Admin Menu Options"
|
598 |
msgstr ""
|
599 |
|
600 |
-
#: includes/class-mla-core-options.php:
|
601 |
msgid "Page Title"
|
602 |
msgstr ""
|
603 |
|
604 |
-
#: includes/class-mla-core-options.php:
|
605 |
msgid "Enter the title for the Media/Assistant submenu page"
|
606 |
msgstr ""
|
607 |
|
608 |
-
#: includes/class-mla-core-options.php:
|
609 |
msgid "Menu Title"
|
610 |
msgstr ""
|
611 |
|
612 |
-
#: includes/class-mla-core-options.php:
|
613 |
msgid "Enter the title for the Media/Assistant submenu entry"
|
614 |
msgstr ""
|
615 |
|
616 |
-
#: includes/class-mla-core-options.php:
|
617 |
msgid "Submenu Order"
|
618 |
msgstr ""
|
619 |
|
620 |
-
#: includes/class-mla-core-options.php:
|
621 |
msgid ""
|
622 |
"Enter the position of the Media/Assistant submenu entry.<br> 0 = "
|
623 |
"natural order (at bottom), 1 - 4 = at top<br> "
|
@@ -625,304 +627,315 @@ msgid ""
|
|
625 |
"\""
|
626 |
msgstr ""
|
627 |
|
628 |
-
#: includes/class-mla-core-options.php:
|
629 |
msgid "Display Media/Library"
|
630 |
msgstr ""
|
631 |
|
632 |
-
#: includes/class-mla-core-options.php:
|
633 |
msgid ""
|
634 |
"Check/uncheck this option to display/remove the WordPress Media/Library "
|
635 |
"submenu entry."
|
636 |
msgstr ""
|
637 |
|
638 |
-
#: includes/class-mla-core-options.php:
|
639 |
msgid "Display Media/Assistant list/grid view switcher"
|
640 |
msgstr ""
|
641 |
|
642 |
-
#: includes/class-mla-core-options.php:
|
643 |
msgid ""
|
644 |
"Check/uncheck this option to display/remove the \"list/grid\" view switcher "
|
645 |
"on the Media/Assistant submenu."
|
646 |
msgstr ""
|
647 |
|
648 |
-
#: includes/class-mla-core-options.php:
|
649 |
msgid "Table Defaults"
|
650 |
msgstr ""
|
651 |
|
652 |
-
#: includes/class-mla-core-options.php:
|
653 |
msgid "Order By"
|
654 |
msgstr ""
|
655 |
|
656 |
-
#: includes/class-mla-core-options.php:
|
657 |
msgid "ID/Parent"
|
658 |
msgstr ""
|
659 |
|
660 |
-
#: includes/class-mla-core-options.php:
|
661 |
msgid "Select the column for the sort order of the Assistant table listing."
|
662 |
msgstr ""
|
663 |
|
664 |
-
#: includes/class-mla-core-options.php:
|
665 |
msgid "Order"
|
666 |
msgstr ""
|
667 |
|
668 |
-
#: includes/class-mla-core-options.php:
|
669 |
msgid "Ascending"
|
670 |
msgstr ""
|
671 |
|
672 |
-
#: includes/class-mla-core-options.php:
|
673 |
msgid "Descending"
|
674 |
msgstr ""
|
675 |
|
676 |
-
#: includes/class-mla-core-options.php:
|
677 |
-
#: includes/class-mla-core-options.php:
|
678 |
msgid "Choose the sort order."
|
679 |
msgstr ""
|
680 |
|
681 |
-
#: includes/class-mla-core-options.php:
|
682 |
msgid "Entries per page"
|
683 |
msgstr ""
|
684 |
|
685 |
-
#: includes/class-mla-core-options.php:
|
686 |
msgid "Enter the number of Media/Assistant submenu table items per page."
|
687 |
msgstr ""
|
688 |
|
689 |
-
#: includes/class-mla-core-options.php:
|
690 |
msgid "Views Width"
|
691 |
msgstr ""
|
692 |
|
693 |
-
#: includes/class-mla-core-options.php:
|
694 |
msgid "Enter the width for the views list, in pixels (px) or percent (%)"
|
695 |
msgstr ""
|
696 |
|
697 |
-
#: includes/class-mla-core-options.php:
|
698 |
msgid "Icon Size"
|
699 |
msgstr ""
|
700 |
|
701 |
-
#: includes/class-mla-core-options.php:
|
702 |
msgid "Enter the size of the thumbnail/icon images, in pixels"
|
703 |
msgstr ""
|
704 |
|
705 |
-
#: includes/class-mla-core-options.php:
|
706 |
msgid "Show Primary Column File Name"
|
707 |
msgstr ""
|
708 |
|
709 |
-
#: includes/class-mla-core-options.php:
|
710 |
msgid ""
|
711 |
"Check/uncheck this option to show/omit the file name from the primary column."
|
712 |
msgstr ""
|
713 |
|
714 |
-
#: includes/class-mla-core-options.php:
|
715 |
msgid "QuickTags editor for bulk description"
|
716 |
msgstr ""
|
717 |
|
718 |
-
#: includes/class-mla-core-options.php:
|
719 |
msgid ""
|
720 |
"Check this option to use the QuickTags editor for the Description field in "
|
721 |
"the Bulk Edit area."
|
722 |
msgstr ""
|
723 |
|
724 |
-
#: includes/class-mla-core-options.php:
|
725 |
msgid "Bulk Chunk Size"
|
726 |
msgstr ""
|
727 |
|
728 |
-
#: includes/class-mla-core-options.php:
|
729 |
msgid "Enter the size of the Bulk Edit and Map All processing chunks"
|
730 |
msgstr ""
|
731 |
|
732 |
-
#: includes/class-mla-core-options.php:
|
733 |
msgid "Taxonomy Filter parameters"
|
734 |
msgstr ""
|
735 |
|
736 |
-
#: includes/class-mla-core-options.php:
|
737 |
msgid "Maximum Depth"
|
738 |
msgstr ""
|
739 |
|
740 |
-
#: includes/class-mla-core-options.php:
|
741 |
msgid ""
|
742 |
"Enter the number of levels displayed for hierarchial taxonomies; enter zero "
|
743 |
"for no limit."
|
744 |
msgstr ""
|
745 |
|
746 |
-
#: includes/class-mla-core-options.php:
|
747 |
msgid "Include Children"
|
748 |
msgstr ""
|
749 |
|
750 |
-
#: includes/class-mla-core-options.php:
|
751 |
msgid ""
|
752 |
"Check/uncheck this option to include/exclude children for hierarchical "
|
753 |
"taxonomies."
|
754 |
msgstr ""
|
755 |
|
756 |
-
#: includes/class-mla-core-options.php:
|
757 |
msgid "Search Media Defaults"
|
758 |
msgstr ""
|
759 |
|
760 |
-
#: includes/class-mla-core-options.php:
|
761 |
msgid "Display Search Controls"
|
762 |
msgstr ""
|
763 |
|
764 |
-
#: includes/class-mla-core-options.php:
|
765 |
-
#: includes/class-mla-core-options.php:
|
766 |
msgid ""
|
767 |
"Check/uncheck this option to display/hide the and/or connector and search "
|
768 |
"fields controls."
|
769 |
msgstr ""
|
770 |
|
771 |
-
#: includes/class-mla-core-options.php:
|
772 |
msgid ""
|
773 |
"Use these controls to set defaults for the and/or connector and search "
|
774 |
"fields controls.<br>These defaults will be used for the Search Media boxes "
|
775 |
"on both the Media/Assistant submenu<br>and the Media Manager Modal Window."
|
776 |
msgstr ""
|
777 |
|
778 |
-
#: includes/class-mla-core-options.php:
|
779 |
msgid "Media/Edit Media Enhancements"
|
780 |
msgstr ""
|
781 |
|
782 |
-
#: includes/class-mla-core-options.php:
|
783 |
msgid "Enable "enhanced checklist" taxonomies"
|
784 |
msgstr ""
|
785 |
|
786 |
-
#: includes/class-mla-core-options.php:
|
787 |
msgid ""
|
788 |
"Check this option to enable the \"? Search\" feature for hierarchical "
|
789 |
"taxonomies, e.g., Att. Categories.<br> This option also enables "
|
790 |
"the \"checklist-style\" support for flat taxonomies, e.g., Att. Tags."
|
791 |
msgstr ""
|
792 |
|
793 |
-
#: includes/class-mla-core-options.php:
|
794 |
msgid "Enable Edit Media additional meta boxes"
|
795 |
msgstr ""
|
796 |
|
797 |
-
#: includes/class-mla-core-options.php:
|
798 |
msgid ""
|
799 |
"Check this option to add \"Parent Info\", \"Menu Order\", \"Attachment "
|
800 |
-
"Metadata\" and four \"where-used\" meta boxes
|
|
|
801 |
msgstr ""
|
802 |
|
803 |
-
#: includes/class-mla-core-options.php:
|
804 |
msgid "You can also use Filters to customize the meta boxes."
|
805 |
msgstr ""
|
806 |
|
807 |
-
#: includes/class-mla-core-options.php:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
808 |
msgid "Media/Add New Enhancements"
|
809 |
msgstr ""
|
810 |
|
811 |
-
#: includes/class-mla-core-options.php:
|
812 |
msgid "Enable "bulk edit" area"
|
813 |
msgstr ""
|
814 |
|
815 |
-
#: includes/class-mla-core-options.php:
|
816 |
msgid ""
|
817 |
"Check this option to enable the \"Bulk Edit area\" feature on the Media/Add "
|
818 |
"New screen."
|
819 |
msgstr ""
|
820 |
|
821 |
-
#: includes/class-mla-core-options.php:
|
822 |
msgid ""bulk edit" area on top"
|
823 |
msgstr ""
|
824 |
|
825 |
-
#: includes/class-mla-core-options.php:
|
826 |
msgid ""
|
827 |
"Check this option to move the \"Bulk Edit area\" to the top of the Media/Add "
|
828 |
"New screen."
|
829 |
msgstr ""
|
830 |
|
831 |
-
#: includes/class-mla-core-options.php:
|
832 |
msgid ""bulk edit" area initially open"
|
833 |
msgstr ""
|
834 |
|
835 |
-
#: includes/class-mla-core-options.php:
|
836 |
msgid ""
|
837 |
"Check this option to automatically open the \"Bulk Edit area\" when the "
|
838 |
"Media/Add New screen is displayed."
|
839 |
msgstr ""
|
840 |
|
841 |
-
#: includes/class-mla-core-options.php:
|
842 |
msgid "Media Manager/Media Grid Enhancements"
|
843 |
msgstr ""
|
844 |
|
845 |
-
#: includes/class-mla-core-options.php:
|
846 |
msgid "Enable Media Grid Enhancements"
|
847 |
msgstr ""
|
848 |
|
849 |
-
#: includes/class-mla-core-options.php:
|
850 |
msgid ""
|
851 |
"Check/uncheck this option to enable/disable Media Library Grid View "
|
852 |
"Enhancements."
|
853 |
msgstr ""
|
854 |
|
855 |
-
#: includes/class-mla-core-options.php:
|
856 |
msgid "Enable Media Manager Enhancements"
|
857 |
msgstr ""
|
858 |
|
859 |
-
#: includes/class-mla-core-options.php:
|
860 |
msgid ""
|
861 |
"Check/uncheck this option to enable/disable Media Manager Modal Window "
|
862 |
"Enhancements."
|
863 |
msgstr ""
|
864 |
|
865 |
-
#: includes/class-mla-core-options.php:
|
866 |
msgid "Media Manager Enhanced MIME Type filter"
|
867 |
msgstr ""
|
868 |
|
869 |
-
#: includes/class-mla-core-options.php:
|
870 |
msgid ""
|
871 |
"Check this option to filter by more MIME Types, e.g., text, applications."
|
872 |
msgstr ""
|
873 |
|
874 |
-
#: includes/class-mla-core-options.php:
|
875 |
msgid "Media Manager Month and Year filter"
|
876 |
msgstr ""
|
877 |
|
878 |
-
#: includes/class-mla-core-options.php:
|
879 |
msgid "Check this option to filter by month and year uploaded."
|
880 |
msgstr ""
|
881 |
|
882 |
-
#: includes/class-mla-core-options.php:
|
883 |
msgid "Media Manager Category/Tag filter"
|
884 |
msgstr ""
|
885 |
|
886 |
-
#: includes/class-mla-core-options.php:
|
887 |
msgid "Check this option to filter by taxonomy terms."
|
888 |
msgstr ""
|
889 |
|
890 |
-
#: includes/class-mla-core-options.php:
|
891 |
msgid "Media Manager Terms Search popup"
|
892 |
msgstr ""
|
893 |
|
894 |
-
#: includes/class-mla-core-options.php:
|
895 |
msgid "Check this option to enable the \"Terms Search\" popup window."
|
896 |
msgstr ""
|
897 |
|
898 |
-
#: includes/class-mla-core-options.php:
|
899 |
msgid "Media Manager Enhanced Search Media box"
|
900 |
msgstr ""
|
901 |
|
902 |
-
#: includes/class-mla-core-options.php:
|
903 |
msgid "Check this option to enable search box enhancements."
|
904 |
msgstr ""
|
905 |
|
906 |
-
#: includes/class-mla-core-options.php:
|
907 |
msgid "Media Manager Enhanced Search Media Controls"
|
908 |
msgstr ""
|
909 |
|
910 |
-
#: includes/class-mla-core-options.php:
|
911 |
msgid "Media Manager Checklist meta boxes"
|
912 |
msgstr ""
|
913 |
|
914 |
-
#: includes/class-mla-core-options.php:
|
915 |
msgid ""
|
916 |
"Check this option to enable MLA-enhanced meta boxes in the \"ATTACHMENT "
|
917 |
"DETAILS\" pane.<br> This option is for any taxonomy that uses a "
|
918 |
"<strong>\"checklist-style\"</strong> meta box."
|
919 |
msgstr ""
|
920 |
|
921 |
-
#: includes/class-mla-core-options.php:
|
922 |
msgid "Media Manager Flat meta boxes"
|
923 |
msgstr ""
|
924 |
|
925 |
-
#: includes/class-mla-core-options.php:
|
926 |
msgid ""
|
927 |
"Check this option to enable MLA-enhanced meta boxes in the \"ATTACHMENT "
|
928 |
"DETAILS\" pane.<br> This option is for <strong>flat taxonomies</"
|
@@ -930,211 +943,211 @@ msgid ""
|
|
930 |
"style\" meta box."
|
931 |
msgstr ""
|
932 |
|
933 |
-
#: includes/class-mla-core-options.php:
|
934 |
msgid "Media Manager auto-fill meta boxes"
|
935 |
msgstr ""
|
936 |
|
937 |
-
#: includes/class-mla-core-options.php:
|
938 |
msgid ""
|
939 |
"Check this option to automatically fill MLA-enhanced meta boxes in the "
|
940 |
"\"ATTACHMENT DETAILS\" pane<br> when the item is selected."
|
941 |
msgstr ""
|
942 |
|
943 |
-
#: includes/class-mla-core-options.php:
|
944 |
msgid "Media Manager Order By"
|
945 |
msgstr ""
|
946 |
|
947 |
-
#: includes/class-mla-core-options.php:
|
948 |
-
#: includes/class-mla-core-options.php:
|
949 |
-
#: includes/class-mla-core-options.php:904
|
950 |
#: includes/class-mla-core-options.php:918
|
951 |
-
#: includes/class-mla-core-options.php:932
|
|
|
952 |
msgid "Media Manager Default"
|
953 |
msgstr ""
|
954 |
|
955 |
-
#: includes/class-mla-core-options.php:
|
956 |
msgid "Title/Name"
|
957 |
msgstr ""
|
958 |
|
959 |
-
#: includes/class-mla-core-options.php:
|
960 |
msgid ""
|
961 |
"If you want to override the Media Manager default,<br> select a "
|
962 |
"column for the sort order of the Media Library listing."
|
963 |
msgstr ""
|
964 |
|
965 |
-
#: includes/class-mla-core-options.php:
|
966 |
msgid "Media Manager Order"
|
967 |
msgstr ""
|
968 |
|
969 |
-
#: includes/class-mla-core-options.php:
|
970 |
msgid "Attachment Display Settings"
|
971 |
msgstr ""
|
972 |
|
973 |
-
#: includes/class-mla-core-options.php:
|
974 |
msgid "Media Manager Apply Display Settings"
|
975 |
msgstr ""
|
976 |
|
977 |
-
#: includes/class-mla-core-options.php:
|
978 |
msgid ""
|
979 |
"Check this option to always start with the Attachment Display Settings set "
|
980 |
"here,<br> overriding browser-/cookie-based defaults."
|
981 |
msgstr ""
|
982 |
|
983 |
-
#: includes/class-mla-core-options.php:
|
984 |
-
#: includes/class-mla-core-options.php:
|
985 |
msgid "Alignment"
|
986 |
msgstr ""
|
987 |
|
988 |
-
#: includes/class-mla-core-options.php:901
|
989 |
#: includes/class-mla-core-options.php:915
|
990 |
#: includes/class-mla-core-options.php:929
|
|
|
991 |
#, php-format
|
992 |
msgid ""
|
993 |
"Select a value for the default %1$s option in the Attachment Display "
|
994 |
"Settings."
|
995 |
msgstr ""
|
996 |
|
997 |
-
#: includes/class-mla-core-options.php:
|
998 |
msgid "Left"
|
999 |
msgstr ""
|
1000 |
|
1001 |
-
#: includes/class-mla-core-options.php:
|
1002 |
msgid "Center"
|
1003 |
msgstr ""
|
1004 |
|
1005 |
-
#: includes/class-mla-core-options.php:
|
1006 |
msgid "Right"
|
1007 |
msgstr ""
|
1008 |
|
1009 |
-
#: includes/class-mla-core-options.php:
|
1010 |
-
#: includes/class-mla-core-options.php:
|
1011 |
msgid "Link To"
|
1012 |
msgstr ""
|
1013 |
|
1014 |
-
#: includes/class-mla-core-options.php:
|
1015 |
msgid "Media File"
|
1016 |
msgstr ""
|
1017 |
|
1018 |
-
#: includes/class-mla-core-options.php:
|
1019 |
msgid "Attachment Page"
|
1020 |
msgstr ""
|
1021 |
|
1022 |
-
#: includes/class-mla-core-options.php:
|
1023 |
msgid "Custom URL"
|
1024 |
msgstr ""
|
1025 |
|
1026 |
-
#: includes/class-mla-core-options.php:
|
1027 |
-
#: includes/class-mla-core-options.php:
|
1028 |
msgid "Size"
|
1029 |
msgstr ""
|
1030 |
|
1031 |
-
#: includes/class-mla-core-options.php:
|
1032 |
#: includes/class-mla-thumbnail-generation.php:591
|
1033 |
#: includes/class-mla-thumbnail-generation.php:655
|
1034 |
msgid "Thumbnail"
|
1035 |
msgstr ""
|
1036 |
|
1037 |
-
#: includes/class-mla-core-options.php:
|
1038 |
msgid "Medium"
|
1039 |
msgstr ""
|
1040 |
|
1041 |
-
#: includes/class-mla-core-options.php:
|
1042 |
msgid "Large"
|
1043 |
msgstr ""
|
1044 |
|
1045 |
-
#: includes/class-mla-core-options.php:
|
1046 |
msgid "Full Size"
|
1047 |
msgstr ""
|
1048 |
|
1049 |
-
#: includes/class-mla-core-options.php:
|
1050 |
msgid "Uninstall (Delete) Plugin Settings"
|
1051 |
msgstr ""
|
1052 |
|
1053 |
-
#: includes/class-mla-core-options.php:
|
1054 |
msgid "Delete Option Settings"
|
1055 |
msgstr ""
|
1056 |
|
1057 |
-
#: includes/class-mla-core-options.php:
|
1058 |
msgid ""
|
1059 |
"Check this option to remove all MLA option settings from the database when "
|
1060 |
"the plugin is deleted.<br> <strong>You can make a backup copy</"
|
1061 |
"strong> of your settings below by clicking \""
|
1062 |
msgstr ""
|
1063 |
|
1064 |
-
#: includes/class-mla-core-options.php:
|
1065 |
msgid "Export ALL Settings"
|
1066 |
msgstr ""
|
1067 |
|
1068 |
-
#: includes/class-mla-core-options.php:
|
1069 |
msgid "Delete Option Settings Backups"
|
1070 |
msgstr ""
|
1071 |
|
1072 |
-
#: includes/class-mla-core-options.php:
|
1073 |
msgid ""
|
1074 |
"Check this option to remove the <code>/wp-content/mla-backup</code> "
|
1075 |
"directory and its contents when the plugin is deleted."
|
1076 |
msgstr ""
|
1077 |
|
1078 |
-
#: includes/class-mla-core-options.php:
|
1079 |
msgid "Default [mla_gallery] Templates and Settings"
|
1080 |
msgstr ""
|
1081 |
|
1082 |
-
#: includes/class-mla-core-options.php:
|
1083 |
-
#: includes/class-mla-core-options.php:
|
1084 |
-
#: includes/class-mla-core-options.php:
|
1085 |
-
#: includes/class-mla-core-options.php:
|
1086 |
msgid "Style Template"
|
1087 |
msgstr ""
|
1088 |
|
1089 |
-
#: includes/class-mla-core-options.php:
|
1090 |
-
#: includes/class-mla-core-options.php:
|
1091 |
-
#: includes/class-mla-core-options.php:
|
1092 |
-
#: includes/class-mla-core-options.php:
|
1093 |
#, php-format
|
1094 |
msgid "Select the default %1$s for your %2$s shortcodes."
|
1095 |
msgstr ""
|
1096 |
|
1097 |
-
#: includes/class-mla-core-options.php:
|
1098 |
-
#: includes/class-mla-core-options.php:
|
1099 |
msgid "Markup Template"
|
1100 |
msgstr ""
|
1101 |
|
1102 |
-
#: includes/class-mla-core-options.php:
|
1103 |
-
#: includes/class-mla-core-options.php:
|
1104 |
#: includes/class-mla-settings-shortcodes-tab.php:108
|
1105 |
msgid "markup template"
|
1106 |
msgstr ""
|
1107 |
|
1108 |
-
#: includes/class-mla-core-options.php:
|
1109 |
-
#: includes/class-mla-core-options.php:
|
1110 |
msgid "Default columns"
|
1111 |
msgstr ""
|
1112 |
|
1113 |
-
#: includes/class-mla-core-options.php:
|
1114 |
msgid ""
|
1115 |
"Enter the number of [mla_tag_cloud] columns; must be a positive integer."
|
1116 |
msgstr ""
|
1117 |
|
1118 |
-
#: includes/class-mla-core-options.php:
|
1119 |
-
#: includes/class-mla-core-options.php:
|
1120 |
msgid "Default mla_margin"
|
1121 |
msgstr ""
|
1122 |
|
1123 |
-
#: includes/class-mla-core-options.php:
|
1124 |
-
#: includes/class-mla-core-options.php:
|
1125 |
msgid ""
|
1126 |
"Enter the CSS \"margin\" property value, in length (px, em, pt, etc.), "
|
1127 |
"percent (%), \"auto\" or \"inherit\".<br> Enter \"none\" to "
|
1128 |
"remove the property entirely."
|
1129 |
msgstr ""
|
1130 |
|
1131 |
-
#: includes/class-mla-core-options.php:
|
1132 |
-
#: includes/class-mla-core-options.php:
|
1133 |
msgid "Default mla_itemwidth"
|
1134 |
msgstr ""
|
1135 |
|
1136 |
-
#: includes/class-mla-core-options.php:
|
1137 |
-
#: includes/class-mla-core-options.php:
|
1138 |
msgid ""
|
1139 |
"Enter the CSS \"width\" property value, in length (px, em, pt, etc.), "
|
1140 |
"percent (%), \"auto\" or \"inherit\".<br> Enter \"calculate"
|
@@ -1144,19 +1157,19 @@ msgid ""
|
|
1144 |
"the property entirely."
|
1145 |
msgstr ""
|
1146 |
|
1147 |
-
#: includes/class-mla-core-options.php:
|
1148 |
msgid "Enter the number of [mla_gallery] columns; must be a positive integer."
|
1149 |
msgstr ""
|
1150 |
|
1151 |
-
#: includes/class-mla-core-options.php:
|
1152 |
msgid "Thumbnail Substitution Support, mla_viewer"
|
1153 |
msgstr ""
|
1154 |
|
1155 |
-
#: includes/class-mla-core-options.php:
|
1156 |
msgid "Enable thumbnail substitution"
|
1157 |
msgstr ""
|
1158 |
|
1159 |
-
#: includes/class-mla-core-options.php:
|
1160 |
msgid ""
|
1161 |
"Check this option to allow the \"mla_viewer\" to generate thumbnail images "
|
1162 |
"for PDF documents. Thumbnails are generated dynamically, each time the item "
|
@@ -1165,32 +1178,32 @@ msgid ""
|
|
1165 |
"strong>"
|
1166 |
msgstr ""
|
1167 |
|
1168 |
-
#: includes/class-mla-core-options.php:
|
1169 |
msgid "Enable Featured Images"
|
1170 |
msgstr ""
|
1171 |
|
1172 |
-
#: includes/class-mla-core-options.php:
|
1173 |
msgid ""
|
1174 |
"Check this option to extend Featured Image support to all Media Library "
|
1175 |
"items. The Featured Image can be used as a thumbnail image for the item in "
|
1176 |
"an [mla_gallery] display."
|
1177 |
msgstr ""
|
1178 |
|
1179 |
-
#: includes/class-mla-core-options.php:
|
1180 |
msgid "Enable Featured Image Generation"
|
1181 |
msgstr ""
|
1182 |
|
1183 |
-
#: includes/class-mla-core-options.php:
|
1184 |
msgid ""
|
1185 |
"Check this option to enable the \"Thumbnail\" generation action in the Media/"
|
1186 |
"Assistant submenu Bulk Actions dropdown."
|
1187 |
msgstr ""
|
1188 |
|
1189 |
-
#: includes/class-mla-core-options.php:
|
1190 |
msgid "Enable explicit Ghostscript check"
|
1191 |
msgstr ""
|
1192 |
|
1193 |
-
#: includes/class-mla-core-options.php:
|
1194 |
msgid ""
|
1195 |
"Check this option to enable the explicit check for Ghostscript support "
|
1196 |
"required for thumbnail generation. If your Ghostscript software is in a non-"
|
@@ -1199,37 +1212,37 @@ msgid ""
|
|
1199 |
"leave this option checked unless you know it is safe to turn it off."
|
1200 |
msgstr ""
|
1201 |
|
1202 |
-
#: includes/class-mla-core-options.php:
|
1203 |
msgid "Ghostscript path"
|
1204 |
msgstr ""
|
1205 |
|
1206 |
-
#: includes/class-mla-core-options.php:
|
1207 |
msgid ""
|
1208 |
"If your “gs” executable is in a non-standard location, enter the "
|
1209 |
"full path and filename here, e.g., “/usr/bin/gs”. It will "
|
1210 |
"override the search for Ghostscript in other places."
|
1211 |
msgstr ""
|
1212 |
|
1213 |
-
#: includes/class-mla-core-options.php:
|
1214 |
msgid "Enable custom field mapping"
|
1215 |
msgstr ""
|
1216 |
|
1217 |
-
#: includes/class-mla-core-options.php:1113
|
1218 |
-
#: includes/class-mla-core-options.php:1120
|
1219 |
#: includes/class-mla-core-options.php:1127
|
1220 |
-
#: includes/class-mla-core-options.php:
|
|
|
|
|
1221 |
msgid "See Help menu."
|
1222 |
msgstr ""
|
1223 |
|
1224 |
-
#: includes/class-mla-core-options.php:
|
1225 |
msgid "Enable custom field mapping when adding new media"
|
1226 |
msgstr ""
|
1227 |
|
1228 |
-
#: includes/class-mla-core-options.php:
|
1229 |
msgid "Enable custom field mapping when updating media metadata"
|
1230 |
msgstr ""
|
1231 |
|
1232 |
-
#: includes/class-mla-core-options.php:
|
1233 |
msgid ""
|
1234 |
"Update the custom field mapping values above, then click Save Changes to "
|
1235 |
"make the updates permanent.<br>You can also make temporary updates and click "
|
@@ -1237,33 +1250,33 @@ msgid ""
|
|
1237 |
"saving any rule changes."
|
1238 |
msgstr ""
|
1239 |
|
1240 |
-
#: includes/class-mla-core-options.php:
|
1241 |
msgid "Enable IPTC/EXIF Mapping"
|
1242 |
msgstr ""
|
1243 |
|
1244 |
-
#: includes/class-mla-core-options.php:
|
1245 |
msgid "Enable IPTC/EXIF Mapping when adding new media"
|
1246 |
msgstr ""
|
1247 |
|
1248 |
-
#: includes/class-mla-core-options.php:
|
1249 |
msgid ""
|
1250 |
"Check this option to enable mapping when uploading new media (attachments)."
|
1251 |
"<br> Does NOT affect the operation of the \"Map\" buttons on the "
|
1252 |
"bulk edit, single edit and settings screens."
|
1253 |
msgstr ""
|
1254 |
|
1255 |
-
#: includes/class-mla-core-options.php:
|
1256 |
msgid "Enable IPTC/EXIF Mapping when updating media metadata"
|
1257 |
msgstr ""
|
1258 |
|
1259 |
-
#: includes/class-mla-core-options.php:
|
1260 |
msgid ""
|
1261 |
"Check this option to enable mapping when media (attachments) metadata is "
|
1262 |
"regenerated,<br> e.g., when the Media/Edit Media \"Edit Image\" "
|
1263 |
"functions are used."
|
1264 |
msgstr ""
|
1265 |
|
1266 |
-
#: includes/class-mla-core-options.php:
|
1267 |
msgid ""
|
1268 |
"Update the standard field mapping values above, then click <strong>Save "
|
1269 |
"Changes</strong> to make the updates permanent.<br>You can also make "
|
@@ -1272,13 +1285,13 @@ msgid ""
|
|
1272 |
"changes."
|
1273 |
msgstr ""
|
1274 |
|
1275 |
-
#: includes/class-mla-core-options.php:
|
1276 |
msgid ""
|
1277 |
"Update the taxonomy term mapping values above, then click <strong>Save "
|
1278 |
"Changes</strong> or <strong>Map All Attachments, Taxonomy Terms Now</strong>."
|
1279 |
msgstr ""
|
1280 |
|
1281 |
-
#: includes/class-mla-core-options.php:
|
1282 |
msgid ""
|
1283 |
"<strong>Update</strong> individual custom field mapping values above, or "
|
1284 |
"make several updates and click <strong>Save Changes</strong> below to apply "
|
@@ -1289,36 +1302,36 @@ msgid ""
|
|
1289 |
"changes."
|
1290 |
msgstr ""
|
1291 |
|
1292 |
-
#: includes/class-mla-core-options.php:
|
1293 |
msgid "IPTC/EXIF Mapping help"
|
1294 |
msgstr ""
|
1295 |
|
1296 |
-
#: includes/class-mla-core-options.php:
|
1297 |
-
#: includes/class-mla-edit-media.php:481 includes/class-mla-main.php:
|
1298 |
msgid "Name/Slug"
|
1299 |
msgstr ""
|
1300 |
|
1301 |
-
#: includes/class-mla-core-options.php:
|
1302 |
#: includes/class-mla-edit-media.php:484 includes/class-mla-list-table.php:1429
|
1303 |
-
#: includes/class-mla-main.php:
|
1304 |
#: includes/mla-main-search-box-template.php:51
|
1305 |
#: includes/mla-media-modal-js-template.php:46
|
1306 |
msgid "ALT Text"
|
1307 |
msgstr ""
|
1308 |
|
1309 |
-
#: includes/class-mla-core-options.php:
|
1310 |
-
#: includes/class-mla-edit-media.php:482 includes/class-mla-main.php:
|
1311 |
#: includes/class-mla-options.php:475
|
1312 |
#: includes/mla-main-search-box-template.php:53
|
1313 |
#: includes/mla-media-modal-js-template.php:51
|
1314 |
msgid "Caption"
|
1315 |
msgstr ""
|
1316 |
|
1317 |
-
#: includes/class-mla-core-options.php:
|
1318 |
-
#: includes/class-mla-edit-media.php:483 includes/class-mla-main.php:
|
1319 |
#: includes/class-mla-options.php:478
|
1320 |
#: includes/class-mla-settings-custom-fields-tab.php:480
|
1321 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
1322 |
#: includes/class-mla-settings-upload-tab.php:199
|
1323 |
#: includes/class-mla-settings-upload-tab.php:543
|
1324 |
#: includes/class-mla-settings-view-tab.php:128
|
@@ -1334,214 +1347,214 @@ msgstr ""
|
|
1334 |
msgid "Description"
|
1335 |
msgstr ""
|
1336 |
|
1337 |
-
#: includes/class-mla-core-options.php:
|
1338 |
-
#: includes/class-mla-data.php:
|
1339 |
-
#: includes/class-mla-edit-media.php:749 includes/class-mla-main.php:
|
1340 |
msgid "Uploaded on"
|
1341 |
msgstr ""
|
1342 |
|
1343 |
-
#: includes/class-mla-core-options.php:
|
1344 |
msgid "Enable View and Post MIME Type Support"
|
1345 |
msgstr ""
|
1346 |
|
1347 |
-
#: includes/class-mla-core-options.php:
|
1348 |
msgid ""
|
1349 |
"Check/uncheck this option to enable/disable Post MIME Type Support, then "
|
1350 |
"click <strong>Save Changes</strong> to record the new setting."
|
1351 |
msgstr ""
|
1352 |
|
1353 |
-
#: includes/class-mla-core-options.php:
|
1354 |
msgid "Post MIME Types help."
|
1355 |
msgstr ""
|
1356 |
|
1357 |
-
#: includes/class-mla-core-options.php:
|
1358 |
#: includes/class-mla-mime-types.php:1696
|
1359 |
#: includes/class-mla-settings-custom-fields-tab.php:2501
|
1360 |
#: includes/class-mla-settings-documentation-tab.php:1545
|
1361 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
1362 |
#: includes/class-mla-settings-shortcodes-tab.php:1984
|
1363 |
msgctxt "table_view_singular"
|
1364 |
msgid "All"
|
1365 |
msgstr ""
|
1366 |
|
1367 |
-
#: includes/class-mla-core-options.php:
|
1368 |
#: includes/class-mla-mime-types.php:1697
|
1369 |
#: includes/class-mla-settings-custom-fields-tab.php:2502
|
1370 |
#: includes/class-mla-settings-documentation-tab.php:1546
|
1371 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
1372 |
#: includes/class-mla-settings-shortcodes-tab.php:1985
|
1373 |
msgctxt "table_view_plural"
|
1374 |
msgid "All"
|
1375 |
msgstr ""
|
1376 |
|
1377 |
-
#: includes/class-mla-core-options.php:
|
1378 |
-
#: includes/class-mla-core-options.php:
|
1379 |
-
#: includes/class-mla-core-options.php:
|
1380 |
-
#: includes/class-mla-core-options.php:
|
1381 |
-
#: includes/class-mla-core-options.php:
|
1382 |
msgctxt "post_mime_types_description"
|
1383 |
msgid "Built-in view"
|
1384 |
msgstr ""
|
1385 |
|
1386 |
-
#: includes/class-mla-core-options.php:
|
1387 |
msgctxt "table_view_singular"
|
1388 |
msgid "Image"
|
1389 |
msgstr ""
|
1390 |
|
1391 |
-
#: includes/class-mla-core-options.php:
|
1392 |
msgctxt "table_view_plural"
|
1393 |
msgid "Images"
|
1394 |
msgstr ""
|
1395 |
|
1396 |
-
#: includes/class-mla-core-options.php:
|
1397 |
msgctxt "post_mime_types_description"
|
1398 |
msgid "All image subtypes"
|
1399 |
msgstr ""
|
1400 |
|
1401 |
-
#: includes/class-mla-core-options.php:
|
1402 |
msgctxt "table_view_singular"
|
1403 |
msgid "Audio"
|
1404 |
msgstr ""
|
1405 |
|
1406 |
-
#: includes/class-mla-core-options.php:
|
1407 |
msgctxt "table_view_plural"
|
1408 |
msgid "Audio"
|
1409 |
msgstr ""
|
1410 |
|
1411 |
-
#: includes/class-mla-core-options.php:
|
1412 |
msgctxt "post_mime_types_description"
|
1413 |
msgid "All audio subtypes"
|
1414 |
msgstr ""
|
1415 |
|
1416 |
-
#: includes/class-mla-core-options.php:
|
1417 |
msgctxt "table_view_singular"
|
1418 |
msgid "Video"
|
1419 |
msgstr ""
|
1420 |
|
1421 |
-
#: includes/class-mla-core-options.php:
|
1422 |
msgctxt "table_view_plural"
|
1423 |
msgid "Video"
|
1424 |
msgstr ""
|
1425 |
|
1426 |
-
#: includes/class-mla-core-options.php:
|
1427 |
msgctxt "post_mime_types_description"
|
1428 |
msgid "All video subtypes"
|
1429 |
msgstr ""
|
1430 |
|
1431 |
-
#: includes/class-mla-core-options.php:
|
1432 |
msgctxt "table_view_singular"
|
1433 |
msgid "Text"
|
1434 |
msgstr ""
|
1435 |
|
1436 |
-
#: includes/class-mla-core-options.php:
|
1437 |
msgctxt "table_view_plural"
|
1438 |
msgid "Text"
|
1439 |
msgstr ""
|
1440 |
|
1441 |
-
#: includes/class-mla-core-options.php:
|
1442 |
msgctxt "post_mime_types_description"
|
1443 |
msgid "All text subtypes"
|
1444 |
msgstr ""
|
1445 |
|
1446 |
-
#: includes/class-mla-core-options.php:
|
1447 |
msgctxt "table_view_singular"
|
1448 |
msgid "Application"
|
1449 |
msgstr ""
|
1450 |
|
1451 |
-
#: includes/class-mla-core-options.php:
|
1452 |
msgctxt "table_view_plural"
|
1453 |
msgid "Applications"
|
1454 |
msgstr ""
|
1455 |
|
1456 |
-
#: includes/class-mla-core-options.php:
|
1457 |
msgctxt "post_mime_types_description"
|
1458 |
msgid "All application subtypes"
|
1459 |
msgstr ""
|
1460 |
|
1461 |
-
#: includes/class-mla-core-options.php:
|
1462 |
msgctxt "table_view_plural"
|
1463 |
msgid "Unattached"
|
1464 |
msgstr ""
|
1465 |
|
1466 |
-
#: includes/class-mla-core-options.php:
|
1467 |
msgctxt "table_view_singular"
|
1468 |
msgid "Attached"
|
1469 |
msgstr ""
|
1470 |
|
1471 |
-
#: includes/class-mla-core-options.php:
|
1472 |
msgctxt "table_view_plural"
|
1473 |
msgid "Attached"
|
1474 |
msgstr ""
|
1475 |
|
1476 |
-
#: includes/class-mla-core-options.php:
|
1477 |
msgctxt "table_view_singular"
|
1478 |
msgid "Mine"
|
1479 |
msgstr ""
|
1480 |
|
1481 |
-
#: includes/class-mla-core-options.php:
|
1482 |
msgctxt "table_view_plural"
|
1483 |
msgid "Mine"
|
1484 |
msgstr ""
|
1485 |
|
1486 |
-
#: includes/class-mla-core-options.php:
|
1487 |
msgctxt "table_view_singular"
|
1488 |
msgid "Trash"
|
1489 |
msgstr ""
|
1490 |
|
1491 |
-
#: includes/class-mla-core-options.php:
|
1492 |
msgctxt "table_view_plural"
|
1493 |
msgid "Trash"
|
1494 |
msgstr ""
|
1495 |
|
1496 |
-
#: includes/class-mla-core-options.php:
|
1497 |
msgid "Enable Upload MIME Type Support"
|
1498 |
msgstr ""
|
1499 |
|
1500 |
-
#: includes/class-mla-core-options.php:
|
1501 |
msgid ""
|
1502 |
"Check/uncheck this option to enable/disable Upload MIME Type Support, then "
|
1503 |
"click <strong>Save Changes</strong> to record the new setting."
|
1504 |
msgstr ""
|
1505 |
|
1506 |
-
#: includes/class-mla-core-options.php:
|
1507 |
msgid "Upload MIME Types help."
|
1508 |
msgstr ""
|
1509 |
|
1510 |
-
#: includes/class-mla-core-options.php:
|
1511 |
msgid "Enable MLA File Type Icons Support"
|
1512 |
msgstr ""
|
1513 |
|
1514 |
-
#: includes/class-mla-core-options.php:
|
1515 |
msgid ""
|
1516 |
"Check/uncheck this option to enable/disable MLA File Type Icons Support, "
|
1517 |
"then click <strong>Save Changes</strong> to record the new setting."
|
1518 |
msgstr ""
|
1519 |
|
1520 |
-
#: includes/class-mla-core-options.php:
|
1521 |
msgid "Always Use MLA MIME Type"
|
1522 |
msgstr ""
|
1523 |
|
1524 |
-
#: includes/class-mla-core-options.php:
|
1525 |
msgid ""
|
1526 |
"Check this option to override WordPress MIME Type security checks, then "
|
1527 |
"click <strong>Save Changes</strong> to record the new setting."
|
1528 |
msgstr ""
|
1529 |
|
1530 |
-
#: includes/class-mla-core-options.php:
|
1531 |
msgid "Display Limit"
|
1532 |
msgstr ""
|
1533 |
|
1534 |
-
#: includes/class-mla-core-options.php:
|
1535 |
msgid ""
|
1536 |
"Enter the maximum number of debug log characters to display; enter zero or "
|
1537 |
"leave blank for no limit."
|
1538 |
msgstr ""
|
1539 |
|
1540 |
-
#: includes/class-mla-core-options.php:
|
1541 |
msgid "Debug File"
|
1542 |
msgstr ""
|
1543 |
|
1544 |
-
#: includes/class-mla-core-options.php:
|
1545 |
msgid ""
|
1546 |
"Enter the name of an alternate, MLA-specific debug log file; leave blank to "
|
1547 |
"use the PHP error_log.<br> The WP_CONTENT_DIR value (below) will "
|
@@ -1549,43 +1562,43 @@ msgid ""
|
|
1549 |
"\"."
|
1550 |
msgstr ""
|
1551 |
|
1552 |
-
#: includes/class-mla-core-options.php:
|
1553 |
msgid "Replace PHP error_log file"
|
1554 |
msgstr ""
|
1555 |
|
1556 |
-
#: includes/class-mla-core-options.php:
|
1557 |
msgid ""
|
1558 |
"Check this option to replace the PHP error_log file with the MLA Debug File."
|
1559 |
"<br> allows capture of PHP messages in the MLA Debug File."
|
1560 |
msgstr ""
|
1561 |
|
1562 |
-
#: includes/class-mla-core-options.php:
|
1563 |
msgid "PHP Reporting"
|
1564 |
msgstr ""
|
1565 |
|
1566 |
-
#: includes/class-mla-core-options.php:
|
1567 |
msgid ""
|
1568 |
"Enter a numeric error_reporting value, e.g., 0x7FFF or 32767; leave blank to "
|
1569 |
"use the existing PHP error_reporting value."
|
1570 |
msgstr ""
|
1571 |
|
1572 |
-
#: includes/class-mla-core-options.php:
|
1573 |
msgid "MLA Reporting"
|
1574 |
msgstr ""
|
1575 |
|
1576 |
-
#: includes/class-mla-core-options.php:
|
1577 |
msgid ""
|
1578 |
"Enter a numeric MLA_DEBUG_LEVEL value, e.g., 0x0003 or 3; leave blank to use "
|
1579 |
"the existing MLA_DEBUG_LEVEL value."
|
1580 |
msgstr ""
|
1581 |
|
1582 |
-
#: includes/class-mla-core-options.php:
|
1583 |
msgid "Add Tax. Columns"
|
1584 |
msgstr ""
|
1585 |
|
1586 |
-
#: includes/class-mla-core-options.php:
|
1587 |
msgid ""
|
1588 |
-
"Check this option to add Term ID and Term-Taxonomy ID columns to the "
|
1589 |
"taxonomy edit admin submenu tables."
|
1590 |
msgstr ""
|
1591 |
|
@@ -1601,33 +1614,33 @@ msgctxt "error_log"
|
|
1601 |
msgid "%1$s: mla_load_template file \"%2$s\" bad source type \"%3$s\"."
|
1602 |
msgstr ""
|
1603 |
|
1604 |
-
#: includes/class-mla-core.php:
|
1605 |
#, php-format
|
1606 |
msgid "%1$s: Bad specification part \"%2$s\""
|
1607 |
msgstr ""
|
1608 |
|
1609 |
-
#: includes/class-mla-core.php:
|
1610 |
#, php-format
|
1611 |
msgid "%1$s: Bad specification option \"%2$s\""
|
1612 |
msgstr ""
|
1613 |
|
1614 |
-
#: includes/class-mla-core.php:
|
1615 |
#, php-format
|
1616 |
msgid "%1$s: Bad specification prefix \"%2$s\""
|
1617 |
msgstr ""
|
1618 |
|
1619 |
-
#: includes/class-mla-core.php:
|
1620 |
msgid "Most Used"
|
1621 |
msgstr ""
|
1622 |
|
1623 |
-
#: includes/class-mla-core.php:
|
1624 |
#, php-format
|
1625 |
msgid "+ %s"
|
1626 |
msgstr ""
|
1627 |
|
1628 |
-
#: includes/class-mla-core.php:
|
1629 |
-
#: includes/class-mla-edit-media.php:418 includes/class-mla-main.php:
|
1630 |
-
#: includes/class-mla-main.php:
|
1631 |
#: includes/class-mla-media-modal.php:648
|
1632 |
#: includes/mla-media-modal-js-template.php:26
|
1633 |
#: includes/mla-media-modal-js-template.php:73
|
@@ -1714,7 +1727,7 @@ msgstr ""
|
|
1714 |
#: includes/class-mla-data-query.php:294
|
1715 |
#: includes/class-mla-settings-custom-fields-tab.php:1250
|
1716 |
#: includes/class-mla-settings-documentation-tab.php:536
|
1717 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
1718 |
#: includes/class-mla-settings-shortcodes-tab.php:978
|
1719 |
msgctxt "list_table_column"
|
1720 |
msgid "Name"
|
@@ -1764,7 +1777,7 @@ msgstr ""
|
|
1764 |
#: includes/class-mla-mime-types.php:708 includes/class-mla-mime-types.php:787
|
1765 |
#: includes/class-mla-settings-custom-fields-tab.php:1260
|
1766 |
#: includes/class-mla-settings-documentation-tab.php:539
|
1767 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
1768 |
#: includes/class-mla-settings-shortcodes-tab.php:981
|
1769 |
msgctxt "list_table_column"
|
1770 |
msgid "Description"
|
@@ -1812,55 +1825,55 @@ msgctxt "error_log"
|
|
1812 |
msgid " %1$s: %2$s non-array \"%3$s\""
|
1813 |
msgstr ""
|
1814 |
|
1815 |
-
#: includes/class-mla-data-query.php:
|
1816 |
#, php-format
|
1817 |
msgctxt "error_log"
|
1818 |
msgid " %1$s: _execute_list_table_query $wp_filter = \"%2$s\"."
|
1819 |
msgstr ""
|
1820 |
|
1821 |
-
#: includes/class-mla-data-query.php:
|
1822 |
#, php-format
|
1823 |
msgctxt "error_log"
|
1824 |
msgid " %1$s: _execute_list_table_query WP_Query = \"%2$s\"."
|
1825 |
msgstr ""
|
1826 |
|
1827 |
-
#: includes/class-mla-data-query.php:
|
1828 |
#, php-format
|
1829 |
msgctxt "error_log"
|
1830 |
msgid " %1$s: _execute_list_table_query SQL_request = \"%2$s\"."
|
1831 |
msgstr ""
|
1832 |
|
1833 |
-
#: includes/class-mla-data-query.php:
|
1834 |
#, php-format
|
1835 |
msgctxt "error_log"
|
1836 |
msgid " %1$s: mla_query_posts_search_filter = \"%2$s\"."
|
1837 |
msgstr ""
|
1838 |
|
1839 |
-
#: includes/class-mla-data-query.php:
|
1840 |
#, php-format
|
1841 |
msgctxt "error_log"
|
1842 |
msgid " %1$s: mla_query_posts_where_filter = \"%2$s\"."
|
1843 |
msgstr ""
|
1844 |
|
1845 |
-
#: includes/class-mla-data-query.php:
|
1846 |
#, php-format
|
1847 |
msgctxt "error_log"
|
1848 |
msgid " %1$s: mla_query_posts_join_filter = \"%2$s\"."
|
1849 |
msgstr ""
|
1850 |
|
1851 |
-
#: includes/class-mla-data-query.php:
|
1852 |
#, php-format
|
1853 |
msgctxt "error_log"
|
1854 |
msgid " %1$s: mla_query_posts_orderby_filter = \"%2$s\"."
|
1855 |
msgstr ""
|
1856 |
|
1857 |
-
#: includes/class-mla-data-query.php:
|
1858 |
#, php-format
|
1859 |
msgctxt "error_log"
|
1860 |
msgid " %1$s: mla_query_posts_clauses_filter = \"%2$s\"."
|
1861 |
msgstr ""
|
1862 |
|
1863 |
-
#: includes/class-mla-data-query.php:
|
1864 |
#, php-format
|
1865 |
msgctxt "error_log"
|
1866 |
msgid " %1$s: mla_query_posts_clauses_request_filter = \"%2$s\"."
|
@@ -1942,7 +1955,7 @@ msgctxt "error_log"
|
|
1942 |
msgid "%1$s: _evaluate_template_node unknown type \"%2$s\"."
|
1943 |
msgstr ""
|
1944 |
|
1945 |
-
#: includes/class-mla-data.php:
|
1946 |
#, php-format
|
1947 |
msgctxt "error_log"
|
1948 |
msgid ""
|
@@ -1950,50 +1963,50 @@ msgid ""
|
|
1950 |
"\"."
|
1951 |
msgstr ""
|
1952 |
|
1953 |
-
#: includes/class-mla-data.php:
|
1954 |
#, php-format
|
1955 |
msgctxt "error_log"
|
1956 |
msgid "%1$s: mla_get_attachment_by_id(%2$d) not found."
|
1957 |
msgstr ""
|
1958 |
|
1959 |
-
#: includes/class-mla-data.php:
|
1960 |
#, php-format
|
1961 |
msgctxt "error_log"
|
1962 |
msgid "%1$s: mla_get_attachment_by_id(%2$d) wrong post_type \"%3$s\"."
|
1963 |
msgstr ""
|
1964 |
|
1965 |
-
#: includes/class-mla-data.php:
|
1966 |
msgctxt "error_log"
|
1967 |
msgid "mla_parse_xml_string xml_parse_into_struct failed."
|
1968 |
msgstr ""
|
1969 |
|
1970 |
-
#: includes/class-mla-data.php:
|
1971 |
msgctxt "error_log"
|
1972 |
msgid "mla_parse_xml_string set option failed."
|
1973 |
msgstr ""
|
1974 |
|
1975 |
-
#: includes/class-mla-data.php:
|
1976 |
msgid "Auto"
|
1977 |
msgstr ""
|
1978 |
|
1979 |
-
#: includes/class-mla-data.php:
|
1980 |
msgid "Manual"
|
1981 |
msgstr ""
|
1982 |
|
1983 |
-
#: includes/class-mla-data.php:
|
1984 |
msgid "Bracket"
|
1985 |
msgstr ""
|
1986 |
|
1987 |
-
#: includes/class-mla-data.php:
|
1988 |
msgid "Other"
|
1989 |
msgstr ""
|
1990 |
|
1991 |
-
#: includes/class-mla-data.php:
|
1992 |
#: includes/class-mla-settings-custom-fields-tab.php:841
|
1993 |
#: includes/class-mla-settings-custom-fields-tab.php:1563
|
1994 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
1995 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
1996 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
1997 |
#: includes/class-mla-settings-view-tab.php:401
|
1998 |
#: includes/class-mla-settings-view-tab.php:802
|
1999 |
#: includes/class-mla-settings-view-tab.php:818
|
@@ -2001,12 +2014,12 @@ msgstr ""
|
|
2001 |
msgid "Yes"
|
2002 |
msgstr ""
|
2003 |
|
2004 |
-
#: includes/class-mla-data.php:
|
2005 |
#: includes/class-mla-settings-custom-fields-tab.php:842
|
2006 |
#: includes/class-mla-settings-custom-fields-tab.php:1565
|
2007 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
2008 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
2009 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
2010 |
#: includes/class-mla-settings-view-tab.php:400
|
2011 |
#: includes/class-mla-settings-view-tab.php:804
|
2012 |
#: includes/class-mla-settings-view-tab.php:820
|
@@ -2014,172 +2027,173 @@ msgstr ""
|
|
2014 |
msgid "No"
|
2015 |
msgstr ""
|
2016 |
|
2017 |
-
#: includes/class-mla-data.php:
|
2018 |
#, php-format
|
2019 |
msgid "Deleting %1$s"
|
2020 |
msgstr ""
|
2021 |
|
2022 |
-
#: includes/class-mla-data.php:
|
2023 |
#, php-format
|
2024 |
msgid "%1$s: meta:%2$s not found"
|
2025 |
msgstr ""
|
2026 |
|
2027 |
-
#: includes/class-mla-data.php:
|
2028 |
-
#: includes/class-mla-data.php:
|
2029 |
#, php-format
|
2030 |
msgid "Adding %1$s = %2$s"
|
2031 |
msgstr ""
|
2032 |
|
2033 |
-
#: includes/class-mla-data.php:
|
2034 |
#, php-format
|
2035 |
msgid "%1$s: Adding meta:%2$s; not found"
|
2036 |
msgstr ""
|
2037 |
|
2038 |
-
#: includes/class-mla-data.php:
|
2039 |
#, php-format
|
2040 |
msgid "Deleting Null meta:%1$s"
|
2041 |
msgstr ""
|
2042 |
|
2043 |
-
#: includes/class-mla-data.php:
|
2044 |
-
#: includes/class-mla-data.php:
|
2045 |
-
#: includes/class-mla-data.php:
|
2046 |
-
#: includes/class-mla-data.php:
|
2047 |
-
#: includes/class-mla-data.php:
|
2048 |
-
#: includes/class-mla-data.php:
|
2049 |
-
#: includes/class-mla-data.php:
|
2050 |
#: includes/class-mla-mime-types.php:1300
|
2051 |
#: includes/class-mla-mime-types.php:2412
|
2052 |
#, php-format
|
2053 |
msgid "Changing %1$s from \"%2$s\" to \"%3$s\""
|
2054 |
msgstr ""
|
2055 |
|
2056 |
-
#: includes/class-mla-data.php:
|
2057 |
#, php-format
|
2058 |
msgid "%1$s: Changing meta:%2$s; not found"
|
2059 |
msgstr ""
|
2060 |
|
2061 |
-
#: includes/class-mla-data.php:
|
2062 |
#, php-format
|
2063 |
msgid "Deleting old %1$s values"
|
2064 |
msgstr ""
|
2065 |
|
2066 |
-
#: includes/class-mla-data.php:
|
2067 |
#, php-format
|
2068 |
msgid "Changing %1$s from \"%2$s\" to \"%3$s\"; %4$d updates"
|
2069 |
msgstr ""
|
2070 |
|
2071 |
-
#: includes/class-mla-data.php:
|
2072 |
msgid "Could not retrieve Attachment."
|
2073 |
msgstr ""
|
2074 |
|
2075 |
-
#: includes/class-mla-data.php:
|
2076 |
#, php-format
|
2077 |
msgid "%1$s: Could not change Name/Slug \"%2$s\"; name already exists"
|
2078 |
msgstr ""
|
2079 |
|
2080 |
-
#: includes/class-mla-data.php:
|
2081 |
#, php-format
|
2082 |
msgid "Deleting ALT Text, was \"%1$s\""
|
2083 |
msgstr ""
|
2084 |
|
2085 |
-
#: includes/class-mla-data.php:
|
2086 |
#, php-format
|
2087 |
msgid "%1$s: Could not delete ALT Text, remains \"%2$s\""
|
2088 |
msgstr ""
|
2089 |
|
2090 |
-
#: includes/class-mla-data.php:
|
2091 |
#, php-format
|
2092 |
msgid "%1$s: Could not change ALT Text from \"%2$s\" to \"%3$s\""
|
2093 |
msgstr ""
|
2094 |
|
2095 |
-
#: includes/class-mla-data.php:
|
2096 |
#: includes/class-mla-list-table.php:1134
|
2097 |
#: includes/class-mla-list-table.php:1137
|
2098 |
-
#: includes/class-mla-list-table.php:1205 includes/class-mla-
|
2099 |
-
#: includes/class-mla-
|
2100 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
|
|
2101 |
msgid "Parent"
|
2102 |
msgstr ""
|
2103 |
|
2104 |
-
#: includes/class-mla-data.php:
|
2105 |
-
#: includes/class-mla-edit-media.php:
|
2106 |
#: includes/class-mla-settings-view-tab.php:126
|
2107 |
#: includes/class-mla-settings-view-tab.php:389
|
2108 |
msgid "Menu Order"
|
2109 |
msgstr ""
|
2110 |
|
2111 |
-
#: includes/class-mla-data.php:
|
2112 |
#: includes/class-mla-list-table.php:1585
|
2113 |
-
#: includes/class-mla-list-table.php:1588 includes/class-mla-main.php:
|
2114 |
-
#: includes/class-mla-main.php:
|
2115 |
msgid "Author"
|
2116 |
msgstr ""
|
2117 |
|
2118 |
-
#: includes/class-mla-data.php:
|
2119 |
-
#: includes/class-mla-main.php:
|
2120 |
msgid "Comments"
|
2121 |
msgstr ""
|
2122 |
|
2123 |
-
#: includes/class-mla-data.php:
|
2124 |
-
#: includes/class-mla-main.php:
|
2125 |
msgid "Pings"
|
2126 |
msgstr ""
|
2127 |
|
2128 |
-
#: includes/class-mla-data.php:
|
2129 |
#, php-format
|
2130 |
msgid "You cannot assign \"%1$s\" terms"
|
2131 |
msgstr ""
|
2132 |
|
2133 |
-
#: includes/class-mla-data.php:
|
2134 |
msgctxt "tag delimiter"
|
2135 |
msgid ","
|
2136 |
msgstr ""
|
2137 |
|
2138 |
-
#: includes/class-mla-data.php:
|
2139 |
msgid "Adding"
|
2140 |
msgstr ""
|
2141 |
|
2142 |
-
#: includes/class-mla-data.php:
|
2143 |
msgid "Removing"
|
2144 |
msgstr ""
|
2145 |
|
2146 |
-
#: includes/class-mla-data.php:
|
2147 |
msgid "Replacing"
|
2148 |
msgstr ""
|
2149 |
|
2150 |
-
#: includes/class-mla-data.php:
|
2151 |
msgid "Ignoring"
|
2152 |
msgstr ""
|
2153 |
|
2154 |
-
#: includes/class-mla-data.php:
|
2155 |
#, php-format
|
2156 |
msgid "%1$s \"%2$s\" terms"
|
2157 |
msgstr ""
|
2158 |
|
2159 |
-
#: includes/class-mla-data.php:
|
2160 |
#, php-format
|
2161 |
msgid "Item %1$d, no changes detected."
|
2162 |
msgstr ""
|
2163 |
|
2164 |
-
#: includes/class-mla-data.php:
|
2165 |
#, php-format
|
2166 |
msgid "Item %1$d updated."
|
2167 |
msgstr ""
|
2168 |
|
2169 |
-
#: includes/class-mla-data.php:
|
2170 |
#, php-format
|
2171 |
msgid "%1$s: Item %2$d update failed."
|
2172 |
msgstr ""
|
2173 |
|
2174 |
#: includes/class-mla-edit-media.php:131 includes/class-mla-edit-media.php:185
|
2175 |
#: includes/class-mla-edit-media.php:238 includes/class-mla-main.php:470
|
2176 |
-
#: includes/class-mla-main.php:1158 includes/class-mla-main.php:
|
2177 |
-
#: includes/class-mla-media-modal.php:268 includes/class-mla-options.php:
|
2178 |
#: includes/class-mla-polylang-support.php:379
|
2179 |
#: includes/class-mla-settings-custom-fields-tab.php:57
|
2180 |
#: includes/class-mla-settings-custom-fields-tab.php:90
|
2181 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
2182 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
2183 |
#: includes/class-mla-settings-upload-tab.php:46
|
2184 |
#: includes/class-mla-settings-view-tab.php:46
|
2185 |
#: includes/class-mla-thumbnail-generation.php:99
|
@@ -2209,7 +2223,7 @@ msgstr ""
|
|
2209 |
msgid "An ajax.done error has occurred. Please reload the page and try again."
|
2210 |
msgstr ""
|
2211 |
|
2212 |
-
#: includes/class-mla-edit-media.php:242 includes/class-mla-main.php:
|
2213 |
#, php-format
|
2214 |
msgid "Uploaded on: %s"
|
2215 |
msgstr ""
|
@@ -2218,8 +2232,8 @@ msgstr ""
|
|
2218 |
msgid "Last modified"
|
2219 |
msgstr ""
|
2220 |
|
2221 |
-
#: includes/class-mla-edit-media.php:321 includes/class-mla-main.php:
|
2222 |
-
#: includes/class-mla-main.php:
|
2223 |
#: includes/class-mla-mime-types.php:825 includes/class-mla-mime-types.php:1466
|
2224 |
#: includes/class-mla-mime-types.php:2645
|
2225 |
#: includes/class-mla-settings-custom-fields-tab.php:578
|
@@ -2227,9 +2241,9 @@ msgstr ""
|
|
2227 |
#: includes/class-mla-settings-custom-fields-tab.php:2079
|
2228 |
#: includes/class-mla-settings-documentation-tab.php:337
|
2229 |
#: includes/class-mla-settings-documentation-tab.php:1278
|
2230 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
2231 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
2232 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
2233 |
#: includes/class-mla-settings-shortcodes-tab.php:524
|
2234 |
#: includes/class-mla-settings-shortcodes-tab.php:1643
|
2235 |
#: includes/class-mla-settings-upload-tab.php:322
|
@@ -2240,42 +2254,42 @@ msgid "%1$s: %2$s non-array \"%3$s\""
|
|
2240 |
msgstr ""
|
2241 |
|
2242 |
#: includes/class-mla-edit-media.php:341 includes/class-mla-edit-media.php:397
|
2243 |
-
#: includes/class-mla-main.php:
|
2244 |
msgid "+ Add New Term"
|
2245 |
msgstr ""
|
2246 |
|
2247 |
#: includes/class-mla-edit-media.php:342 includes/class-mla-edit-media.php:398
|
2248 |
-
#: includes/class-mla-main.php:
|
2249 |
msgid "Add New"
|
2250 |
msgstr ""
|
2251 |
|
2252 |
#: includes/class-mla-edit-media.php:360 includes/class-mla-edit-media.php:416
|
2253 |
-
#: includes/class-mla-main.php:
|
2254 |
msgid "? Search"
|
2255 |
msgstr ""
|
2256 |
|
2257 |
#: includes/class-mla-edit-media.php:363 includes/class-mla-edit-media.php:419
|
2258 |
-
#: includes/class-mla-edit-media.php:428 includes/class-mla-main.php:
|
2259 |
-
#: includes/class-mla-main.php:
|
2260 |
msgid "Add"
|
2261 |
msgstr ""
|
2262 |
|
2263 |
#: includes/class-mla-edit-media.php:364 includes/class-mla-edit-media.php:420
|
2264 |
-
#: includes/class-mla-edit-media.php:429 includes/class-mla-main.php:
|
2265 |
-
#: includes/class-mla-main.php:
|
2266 |
msgid "Remove"
|
2267 |
msgstr ""
|
2268 |
|
2269 |
#: includes/class-mla-edit-media.php:365 includes/class-mla-edit-media.php:421
|
2270 |
-
#: includes/class-mla-edit-media.php:430 includes/class-mla-main.php:
|
2271 |
-
#: includes/class-mla-main.php:
|
2272 |
#: includes/class-mla-settings-custom-fields-tab.php:502
|
2273 |
#: includes/class-mla-settings-custom-fields-tab.php:812
|
2274 |
#: includes/class-mla-settings-custom-fields-tab.php:1549
|
2275 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
2276 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
2277 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
2278 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
2279 |
msgid "Replace"
|
2280 |
msgstr ""
|
2281 |
|
@@ -2285,36 +2299,36 @@ msgid ""
|
|
2285 |
"menu for more information."
|
2286 |
msgstr ""
|
2287 |
|
2288 |
-
#: includes/class-mla-edit-media.php:470 includes/class-mla-main.php:
|
2289 |
#: includes/class-mla-settings.php:1391
|
2290 |
msgid "Reset"
|
2291 |
msgstr ""
|
2292 |
|
2293 |
-
#: includes/class-mla-edit-media.php:476 includes/class-mla-main.php:
|
2294 |
-
#: includes/class-mla-main.php:
|
2295 |
#: includes/class-mla-settings-custom-fields-tab.php:840
|
2296 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
2297 |
#: includes/class-mla-settings-upload-tab.php:120
|
2298 |
#: includes/class-mla-settings-upload-tab.php:554
|
2299 |
#: includes/class-mla-settings-view-tab.php:399
|
2300 |
msgid "No Change"
|
2301 |
msgstr ""
|
2302 |
|
2303 |
-
#: includes/class-mla-edit-media.php:477 includes/class-mla-main.php:
|
2304 |
msgid "Allow"
|
2305 |
msgstr ""
|
2306 |
|
2307 |
-
#: includes/class-mla-edit-media.php:478 includes/class-mla-main.php:
|
2308 |
msgid "Do not allow"
|
2309 |
msgstr ""
|
2310 |
|
2311 |
#: includes/class-mla-edit-media.php:486 includes/class-mla-list-table.php:1131
|
2312 |
-
#: includes/class-mla-list-table.php:1202 includes/class-mla-main.php:
|
2313 |
msgid "Parent ID"
|
2314 |
msgstr ""
|
2315 |
|
2316 |
-
#: includes/class-mla-edit-media.php:487 includes/class-mla-edit-media.php:
|
2317 |
-
#: includes/class-mla-main.php:
|
2318 |
#: includes/class-mla-settings-upload-tab.php:1469
|
2319 |
msgid "Select"
|
2320 |
msgstr ""
|
@@ -2335,32 +2349,32 @@ msgstr ""
|
|
2335 |
msgid "IPTC/EXIF mapping is disabled."
|
2336 |
msgstr ""
|
2337 |
|
2338 |
-
#: includes/class-mla-edit-media.php:688 includes/class-mla-main.php:
|
2339 |
msgid "Month"
|
2340 |
msgstr ""
|
2341 |
|
2342 |
-
#: includes/class-mla-edit-media.php:694 includes/class-mla-main.php:
|
2343 |
#, php-format
|
2344 |
msgid "%1$s-%2$s"
|
2345 |
msgstr ""
|
2346 |
|
2347 |
-
#: includes/class-mla-edit-media.php:698 includes/class-mla-main.php:
|
2348 |
msgid "Day"
|
2349 |
msgstr ""
|
2350 |
|
2351 |
-
#: includes/class-mla-edit-media.php:699 includes/class-mla-main.php:
|
2352 |
msgid "Year"
|
2353 |
msgstr ""
|
2354 |
|
2355 |
-
#: includes/class-mla-edit-media.php:700 includes/class-mla-main.php:
|
2356 |
msgid "Hour"
|
2357 |
msgstr ""
|
2358 |
|
2359 |
-
#: includes/class-mla-edit-media.php:701 includes/class-mla-main.php:
|
2360 |
msgid "Minute"
|
2361 |
msgstr ""
|
2362 |
|
2363 |
-
#: includes/class-mla-edit-media.php:705 includes/class-mla-main.php:
|
2364 |
#, php-format
|
2365 |
msgid "%1$s %2$s, %3$s @ %4$s:%5$s"
|
2366 |
msgstr ""
|
@@ -2369,16 +2383,16 @@ msgstr ""
|
|
2369 |
msgid "OK"
|
2370 |
msgstr ""
|
2371 |
|
2372 |
-
#: includes/class-mla-edit-media.php:729 includes/class-mla-main.php:
|
2373 |
-
#: includes/class-mla-main.php:
|
2374 |
#: includes/class-mla-polylang-support.php:2083
|
2375 |
#: includes/class-mla-settings-custom-fields-tab.php:530
|
2376 |
#: includes/class-mla-settings-custom-fields-tab.php:761
|
2377 |
#: includes/class-mla-settings-custom-fields-tab.php:843
|
2378 |
#: includes/class-mla-settings-documentation-tab.php:210
|
2379 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
2380 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
2381 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
2382 |
#: includes/class-mla-settings-shortcodes-tab.php:426
|
2383 |
#: includes/class-mla-settings-shortcodes-tab.php:497
|
2384 |
#: includes/class-mla-settings-upload-tab.php:202
|
@@ -2405,8 +2419,8 @@ msgstr ""
|
|
2405 |
#: includes/class-mla-polylang-support.php:378
|
2406 |
#: includes/class-mla-settings-custom-fields-tab.php:1392
|
2407 |
#: includes/class-mla-settings-custom-fields-tab.php:1739
|
2408 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
2409 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
2410 |
#: includes/class-mla-settings-shortcodes-tab.php:1096
|
2411 |
#: includes/class-mla-settings-upload-tab.php:928
|
2412 |
#: includes/class-mla-settings-upload-tab.php:1213
|
@@ -2428,7 +2442,7 @@ msgid "Map Custom Field metadata for this item"
|
|
2428 |
msgstr ""
|
2429 |
|
2430 |
#: includes/class-mla-edit-media.php:785 includes/class-mla-main.php:1852
|
2431 |
-
#: includes/class-mla-main.php:
|
2432 |
msgid "Map Custom Field metadata"
|
2433 |
msgstr ""
|
2434 |
|
@@ -2437,30 +2451,34 @@ msgid "Map IPTC/EXIF metadata for this item"
|
|
2437 |
msgstr ""
|
2438 |
|
2439 |
#: includes/class-mla-edit-media.php:789 includes/class-mla-main.php:1855
|
2440 |
-
#: includes/class-mla-main.php:
|
2441 |
msgid "Map IPTC/EXIF metadata"
|
2442 |
msgstr ""
|
2443 |
|
2444 |
-
#: includes/class-mla-edit-media.php:885 includes/class-mla-edit-media.php:
|
2445 |
msgid "Parent Info"
|
2446 |
msgstr ""
|
2447 |
|
2448 |
-
#: includes/class-mla-edit-media.php:895 includes/class-mla-edit-media.php:
|
2449 |
msgid "Attachment Metadata"
|
2450 |
msgstr ""
|
2451 |
|
2452 |
-
#: includes/class-mla-edit-media.php:
|
|
|
|
|
|
|
|
|
2453 |
#: includes/class-mla-main.php:709 includes/class-mla-settings.php:586
|
2454 |
#, php-format
|
2455 |
msgctxt "error_log"
|
2456 |
msgid "%1$s: %2$s discarding \"%3$s\"; no title/order"
|
2457 |
msgstr ""
|
2458 |
|
2459 |
-
#: includes/class-mla-edit-media.php:
|
2460 |
msgid "Post Parent"
|
2461 |
msgstr ""
|
2462 |
|
2463 |
-
#: includes/class-mla-edit-media.php:
|
2464 |
msgid "Select Parent"
|
2465 |
msgstr ""
|
2466 |
|
@@ -2475,7 +2493,7 @@ msgstr ""
|
|
2475 |
|
2476 |
#: includes/class-mla-list-table.php:500
|
2477 |
#: includes/class-mla-settings-custom-fields-tab.php:1037
|
2478 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
2479 |
#: includes/class-mla-settings-upload-tab.php:653
|
2480 |
#: includes/class-mla-settings-view-tab.php:496
|
2481 |
msgid "List View"
|
@@ -2499,7 +2517,7 @@ msgstr ""
|
|
2499 |
#: includes/class-mla-list-table.php:648
|
2500 |
#: includes/class-mla-settings-custom-fields-tab.php:1340
|
2501 |
#: includes/class-mla-settings-documentation-tab.php:620
|
2502 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
2503 |
#: includes/class-mla-settings-shortcodes-tab.php:1051
|
2504 |
#: includes/class-mla-settings-upload-tab.php:864
|
2505 |
#: includes/class-mla-settings-upload-tab.php:1417
|
@@ -2518,7 +2536,7 @@ msgstr ""
|
|
2518 |
|
2519 |
#: includes/class-mla-list-table.php:820
|
2520 |
#: includes/class-mla-settings-custom-fields-tab.php:1392
|
2521 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
2522 |
#: includes/class-mla-settings-shortcodes-tab.php:1096
|
2523 |
#: includes/class-mla-settings-upload-tab.php:928
|
2524 |
#: includes/class-mla-settings-view-tab.php:723
|
@@ -2527,20 +2545,20 @@ msgstr ""
|
|
2527 |
|
2528 |
#: includes/class-mla-list-table.php:821
|
2529 |
#: includes/class-mla-settings-custom-fields-tab.php:1395
|
2530 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
2531 |
#: includes/class-mla-settings-upload-tab.php:930
|
2532 |
#: includes/class-mla-settings-view-tab.php:725
|
2533 |
msgid "Edit this item inline"
|
2534 |
msgstr ""
|
2535 |
|
2536 |
-
#: includes/class-mla-list-table.php:821 includes/class-mla-main.php:
|
2537 |
#: includes/class-mla-options.php:1244
|
2538 |
#: includes/class-mla-settings-custom-fields-tab.php:493
|
2539 |
#: includes/class-mla-settings-custom-fields-tab.php:803
|
2540 |
#: includes/class-mla-settings-custom-fields-tab.php:1395
|
2541 |
#: includes/class-mla-settings-custom-fields-tab.php:1505
|
2542 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
2543 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
2544 |
#: includes/class-mla-settings-upload-tab.php:930
|
2545 |
#: includes/class-mla-settings-view-tab.php:725
|
2546 |
msgid "Quick Edit"
|
@@ -2556,7 +2574,7 @@ msgstr ""
|
|
2556 |
|
2557 |
#: includes/class-mla-list-table.php:832
|
2558 |
#: includes/class-mla-settings-custom-fields-tab.php:1403
|
2559 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
2560 |
#: includes/class-mla-settings-shortcodes-tab.php:1102
|
2561 |
#: includes/class-mla-settings-upload-tab.php:934
|
2562 |
#: includes/class-mla-settings-view-tab.php:731
|
@@ -2567,8 +2585,8 @@ msgstr ""
|
|
2567 |
#: includes/class-mla-list-table.php:1977
|
2568 |
#: includes/class-mla-settings-custom-fields-tab.php:1403
|
2569 |
#: includes/class-mla-settings-custom-fields-tab.php:1740
|
2570 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
2571 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
2572 |
#: includes/class-mla-settings-shortcodes-tab.php:1102
|
2573 |
#: includes/class-mla-settings-upload-tab.php:934
|
2574 |
#: includes/class-mla-settings-view-tab.php:731
|
@@ -2637,7 +2655,7 @@ msgstr[1] ""
|
|
2637 |
|
2638 |
#: includes/class-mla-list-table.php:2071
|
2639 |
#: includes/class-mla-settings-custom-fields-tab.php:1803
|
2640 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
2641 |
#: includes/class-mla-settings-shortcodes-tab.php:1361
|
2642 |
msgid "Filter"
|
2643 |
msgstr ""
|
@@ -2664,8 +2682,8 @@ msgstr ""
|
|
2664 |
#: includes/class-mla-main.php:460
|
2665 |
#: includes/class-mla-settings-custom-fields-tab.php:55
|
2666 |
#: includes/class-mla-settings-custom-fields-tab.php:88
|
2667 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
2668 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
2669 |
#: includes/class-mla-settings-upload-tab.php:44
|
2670 |
#: includes/class-mla-settings-view-tab.php:44
|
2671 |
msgid "Remove From Bulk Edit"
|
@@ -2675,33 +2693,33 @@ msgstr ""
|
|
2675 |
msgid "Bulk Edit items"
|
2676 |
msgstr ""
|
2677 |
|
2678 |
-
#: includes/class-mla-main.php:463 includes/class-mla-main.php:
|
2679 |
#: includes/class-mla-settings-custom-fields-tab.php:61
|
2680 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
2681 |
msgid "Waiting"
|
2682 |
msgstr ""
|
2683 |
|
2684 |
-
#: includes/class-mla-main.php:464 includes/class-mla-main.php:
|
2685 |
#: includes/class-mla-settings-custom-fields-tab.php:63
|
2686 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
2687 |
msgid "Complete"
|
2688 |
msgstr ""
|
2689 |
|
2690 |
#: includes/class-mla-main.php:465
|
2691 |
#: includes/class-mla-settings-custom-fields-tab.php:64
|
2692 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
2693 |
msgid "Unchanged"
|
2694 |
msgstr ""
|
2695 |
|
2696 |
#: includes/class-mla-main.php:466
|
2697 |
#: includes/class-mla-settings-custom-fields-tab.php:65
|
2698 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
2699 |
msgid "Succeeded"
|
2700 |
msgstr ""
|
2701 |
|
2702 |
#: includes/class-mla-main.php:467
|
2703 |
#: includes/class-mla-settings-custom-fields-tab.php:66
|
2704 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
2705 |
msgid "Failed"
|
2706 |
msgstr ""
|
2707 |
|
@@ -2716,7 +2734,7 @@ msgid_plural "%d items permanently deleted."
|
|
2716 |
msgstr[0] ""
|
2717 |
msgstr[1] ""
|
2718 |
|
2719 |
-
#: includes/class-mla-main.php:611 includes/class-mla-main.php:
|
2720 |
#, php-format
|
2721 |
msgid "Item %1$d moved to Trash."
|
2722 |
msgstr ""
|
@@ -2768,7 +2786,7 @@ msgstr ""
|
|
2768 |
#: includes/class-mla-main.php:1462
|
2769 |
#: includes/class-mla-settings-custom-fields-tab.php:635
|
2770 |
#: includes/class-mla-settings-documentation-tab.php:287
|
2771 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
2772 |
#: includes/class-mla-settings-shortcodes-tab.php:586
|
2773 |
#: includes/class-mla-settings-upload-tab.php:421
|
2774 |
#: includes/class-mla-settings-view-tab.php:267
|
@@ -2804,7 +2822,7 @@ msgstr ""
|
|
2804 |
#: includes/class-mla-main.php:1688
|
2805 |
#: includes/class-mla-settings-custom-fields-tab.php:663
|
2806 |
#: includes/class-mla-settings-documentation-tab.php:321
|
2807 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
2808 |
#: includes/class-mla-settings-shortcodes-tab.php:613
|
2809 |
#: includes/class-mla-settings-upload-tab.php:459
|
2810 |
#: includes/class-mla-settings-view-tab.php:304
|
@@ -2824,14 +2842,14 @@ msgstr ""
|
|
2824 |
msgid "search results for"
|
2825 |
msgstr ""
|
2826 |
|
2827 |
-
#: includes/class-mla-main.php:1858 includes/class-mla-main.php:
|
2828 |
-
#: includes/class-mla-main.php:
|
2829 |
#: includes/class-mla-settings-custom-fields-tab.php:532
|
2830 |
#: includes/class-mla-settings-custom-fields-tab.php:844
|
2831 |
#: includes/class-mla-settings-documentation-tab.php:664
|
2832 |
#: includes/class-mla-settings-documentation-tab.php:863
|
2833 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
2834 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
2835 |
#: includes/class-mla-settings-shortcodes-tab.php:500
|
2836 |
#: includes/class-mla-settings-upload-tab.php:201
|
2837 |
#: includes/class-mla-settings-upload-tab.php:551
|
@@ -2840,66 +2858,66 @@ msgstr ""
|
|
2840 |
msgid "Update"
|
2841 |
msgstr ""
|
2842 |
|
2843 |
-
#: includes/class-mla-main.php:
|
2844 |
msgid "All Post Types"
|
2845 |
msgstr ""
|
2846 |
|
2847 |
-
#: includes/class-mla-main.php:
|
2848 |
msgid "For"
|
2849 |
msgstr ""
|
2850 |
|
2851 |
-
#: includes/class-mla-main.php:
|
2852 |
-
#: includes/class-mla-shortcode-support.php:
|
2853 |
msgid "Unattached"
|
2854 |
msgstr ""
|
2855 |
|
2856 |
-
#: includes/class-mla-main.php:
|
2857 |
#: includes/class-mla-settings-custom-fields-tab.php:496
|
2858 |
#: includes/class-mla-settings-custom-fields-tab.php:806
|
2859 |
#: includes/class-mla-settings-custom-fields-tab.php:1509
|
2860 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
2861 |
#: includes/class-mla-settings-upload-tab.php:552
|
2862 |
#: includes/class-mla-settings-view-tab.php:398
|
2863 |
msgid "Bulk Edit"
|
2864 |
msgstr ""
|
2865 |
|
2866 |
-
#: includes/class-mla-main.php:
|
2867 |
msgid "In-process"
|
2868 |
msgstr ""
|
2869 |
|
2870 |
-
#: includes/class-mla-main.php:
|
2871 |
msgid "You are not allowed to delete this item."
|
2872 |
msgstr ""
|
2873 |
|
2874 |
-
#: includes/class-mla-main.php:
|
2875 |
#, php-format
|
2876 |
msgid "%1$s: Item %2$d could NOT be deleted."
|
2877 |
msgstr ""
|
2878 |
|
2879 |
-
#: includes/class-mla-main.php:
|
2880 |
#, php-format
|
2881 |
msgid "Item %1$d permanently deleted."
|
2882 |
msgstr ""
|
2883 |
|
2884 |
-
#: includes/class-mla-main.php:
|
2885 |
msgid "You are not allowed to move this item out of the Trash."
|
2886 |
msgstr ""
|
2887 |
|
2888 |
-
#: includes/class-mla-main.php:
|
2889 |
#, php-format
|
2890 |
msgid "%1$s: Item %2$d could NOT be restored from Trash."
|
2891 |
msgstr ""
|
2892 |
|
2893 |
-
#: includes/class-mla-main.php:
|
2894 |
#, php-format
|
2895 |
msgid "Item %1$d restored from Trash."
|
2896 |
msgstr ""
|
2897 |
|
2898 |
-
#: includes/class-mla-main.php:
|
2899 |
msgid "You are not allowed to move this item to the Trash."
|
2900 |
msgstr ""
|
2901 |
|
2902 |
-
#: includes/class-mla-main.php:
|
2903 |
#, php-format
|
2904 |
msgid "%1$s: Item %2$d could NOT be moved to Trash."
|
2905 |
msgstr ""
|
@@ -3006,7 +3024,7 @@ msgstr ""
|
|
3006 |
|
3007 |
#: includes/class-mla-mime-types.php:630
|
3008 |
#: includes/class-mla-settings-custom-fields-tab.php:1255
|
3009 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
3010 |
msgctxt "list_table_column"
|
3011 |
msgid "Status"
|
3012 |
msgstr ""
|
@@ -3177,13 +3195,13 @@ msgid "MLA"
|
|
3177 |
msgstr ""
|
3178 |
|
3179 |
#: includes/class-mla-mime-types.php:1716
|
3180 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
3181 |
msgctxt "table_view_singular"
|
3182 |
msgid "Custom"
|
3183 |
msgstr ""
|
3184 |
|
3185 |
#: includes/class-mla-mime-types.php:1717
|
3186 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
3187 |
msgctxt "table_view_plural"
|
3188 |
msgid "Custom"
|
3189 |
msgstr ""
|
@@ -3345,38 +3363,38 @@ msgstr ""
|
|
3345 |
msgid "Attachments"
|
3346 |
msgstr ""
|
3347 |
|
3348 |
-
#: includes/class-mla-objects.php:
|
3349 |
msgid "Term ID"
|
3350 |
msgstr ""
|
3351 |
|
3352 |
-
#: includes/class-mla-objects.php:
|
3353 |
msgid "Term-Tax ID"
|
3354 |
msgstr ""
|
3355 |
|
3356 |
-
#: includes/class-mla-objects.php:
|
3357 |
#, php-format
|
3358 |
msgctxt "error_log"
|
3359 |
msgid ""
|
3360 |
"%1$s: mla_taxonomy_column_filter( \"%2$s\" ) - get_term failed: \"%3$s\""
|
3361 |
msgstr ""
|
3362 |
|
3363 |
-
#: includes/class-mla-objects.php:
|
3364 |
msgid "click to search"
|
3365 |
msgstr ""
|
3366 |
|
3367 |
-
#: includes/class-mla-objects.php:
|
3368 |
msgid "Shortcode(s), HTML and/or Plain Text"
|
3369 |
msgstr ""
|
3370 |
|
3371 |
-
#: includes/class-mla-objects.php:
|
3372 |
msgid "MLA Text"
|
3373 |
msgstr ""
|
3374 |
|
3375 |
-
#: includes/class-mla-objects.php:
|
3376 |
msgid "Automatically add paragraphs"
|
3377 |
msgstr ""
|
3378 |
|
3379 |
-
#: includes/class-mla-objects.php:
|
3380 |
msgid "Add .textwidget div tags"
|
3381 |
msgstr ""
|
3382 |
|
@@ -3487,8 +3505,8 @@ msgstr ""
|
|
3487 |
#: includes/class-mla-options.php:469
|
3488 |
#: includes/class-mla-settings-custom-fields-tab.php:472
|
3489 |
#: includes/class-mla-settings-custom-fields-tab.php:790
|
3490 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
3491 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
3492 |
#: includes/class-mla-settings-shortcodes-tab.php:422
|
3493 |
#: includes/class-mla-settings-shortcodes-tab.php:493
|
3494 |
#: includes/mla-main-search-box-template.php:49
|
@@ -3509,8 +3527,8 @@ msgid "Terms"
|
|
3509 |
msgstr ""
|
3510 |
|
3511 |
#: includes/class-mla-options.php:1001 includes/class-mla-options.php:1047
|
3512 |
-
#: includes/class-mla-options.php:
|
3513 |
-
#: includes/class-mla-options.php:
|
3514 |
#: includes/class-mla-settings-upload-tab.php:126
|
3515 |
msgid "None (select a value)"
|
3516 |
msgstr ""
|
@@ -3523,35 +3541,35 @@ msgstr ""
|
|
3523 |
msgid "Template (see below)"
|
3524 |
msgstr ""
|
3525 |
|
3526 |
-
#: includes/class-mla-options.php:1133 includes/class-mla-options.php:
|
3527 |
#, php-format
|
3528 |
msgid "%1$s: New field %2$s already exists."
|
3529 |
msgstr ""
|
3530 |
|
3531 |
-
#: includes/class-mla-options.php:1138 includes/class-mla-options.php:
|
3532 |
#, php-format
|
3533 |
msgid "Adding new field %1$s."
|
3534 |
msgstr ""
|
3535 |
|
3536 |
-
#: includes/class-mla-options.php:1146 includes/class-mla-options.php:
|
3537 |
#, php-format
|
3538 |
msgid "Adding new rule for %1$s."
|
3539 |
msgstr ""
|
3540 |
|
3541 |
-
#: includes/class-mla-options.php:1172 includes/class-mla-options.php:
|
3542 |
-
#: includes/class-mla-options.php:
|
3543 |
#, php-format
|
3544 |
msgid "Deleting rule for %1$s."
|
3545 |
msgstr ""
|
3546 |
|
3547 |
#: includes/class-mla-options.php:1195 includes/class-mla-options.php:1216
|
3548 |
#: includes/class-mla-options.php:1266 includes/class-mla-options.php:1273
|
3549 |
-
#: includes/class-mla-options.php:
|
3550 |
-
#: includes/class-mla-options.php:
|
3551 |
-
#: includes/class-mla-options.php:
|
3552 |
-
#: includes/class-mla-options.php:
|
3553 |
-
#: includes/class-mla-options.php:
|
3554 |
-
#: includes/class-mla-options.php:
|
3555 |
#, php-format
|
3556 |
msgid "%1$s changing %2$s from %3$s to %4$s."
|
3557 |
msgstr ""
|
@@ -3562,52 +3580,52 @@ msgstr ""
|
|
3562 |
msgid "Data Source"
|
3563 |
msgstr ""
|
3564 |
|
3565 |
-
#: includes/class-mla-options.php:1201 includes/class-mla-options.php:
|
3566 |
-
#: includes/class-mla-options.php:
|
3567 |
msgid "Replace to Keep"
|
3568 |
msgstr ""
|
3569 |
|
3570 |
-
#: includes/class-mla-options.php:1204 includes/class-mla-options.php:
|
3571 |
-
#: includes/class-mla-options.php:
|
3572 |
msgid "Keep to Replace"
|
3573 |
msgstr ""
|
3574 |
|
3575 |
#: includes/class-mla-options.php:1209 includes/class-mla-options.php:1230
|
3576 |
#: includes/class-mla-options.php:1244 includes/class-mla-options.php:1258
|
3577 |
-
#: includes/class-mla-options.php:1287 includes/class-mla-options.php:
|
3578 |
-
#: includes/class-mla-options.php:
|
3579 |
-
#: includes/class-mla-options.php:
|
3580 |
-
#: includes/class-mla-options.php:
|
3581 |
#, php-format
|
3582 |
msgid "%1$s changing %2$s value from %3$s."
|
3583 |
msgstr ""
|
3584 |
|
3585 |
-
#: includes/class-mla-options.php:1209 includes/class-mla-options.php:
|
3586 |
-
#: includes/class-mla-options.php:
|
3587 |
#: includes/class-mla-settings-custom-fields-tab.php:498
|
3588 |
#: includes/class-mla-settings-custom-fields-tab.php:808
|
3589 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
3590 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
3591 |
msgid "Existing Text"
|
3592 |
msgstr ""
|
3593 |
|
3594 |
-
#: includes/class-mla-options.php:1216 includes/class-mla-options.php:
|
3595 |
#: includes/class-mla-settings-custom-fields-tab.php:503
|
3596 |
#: includes/class-mla-settings-custom-fields-tab.php:813
|
3597 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
3598 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
3599 |
msgid "Format"
|
3600 |
msgstr ""
|
3601 |
|
3602 |
#: includes/class-mla-options.php:1222 includes/class-mla-options.php:1236
|
3603 |
#: includes/class-mla-options.php:1250 includes/class-mla-options.php:1279
|
3604 |
-
#: includes/class-mla-options.php:
|
3605 |
msgid "unchecked to checked"
|
3606 |
msgstr ""
|
3607 |
|
3608 |
#: includes/class-mla-options.php:1225 includes/class-mla-options.php:1239
|
3609 |
#: includes/class-mla-options.php:1253 includes/class-mla-options.php:1282
|
3610 |
-
#: includes/class-mla-options.php:
|
3611 |
msgid "checked to unchecked"
|
3612 |
msgstr ""
|
3613 |
|
@@ -3622,58 +3640,58 @@ msgstr ""
|
|
3622 |
msgid "Metavalue name"
|
3623 |
msgstr ""
|
3624 |
|
3625 |
-
#: includes/class-mla-options.php:1273 includes/class-mla-options.php:
|
3626 |
#: includes/class-mla-settings-custom-fields-tab.php:510
|
3627 |
#: includes/class-mla-settings-custom-fields-tab.php:820
|
3628 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
3629 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
3630 |
msgid "Option"
|
3631 |
msgstr ""
|
3632 |
|
3633 |
-
#: includes/class-mla-options.php:1287 includes/class-mla-options.php:
|
3634 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
3635 |
msgid "Delete NULL values"
|
3636 |
msgstr ""
|
3637 |
|
3638 |
-
#: includes/class-mla-options.php:
|
3639 |
#, php-format
|
3640 |
msgid "%1$s: No old values for %2$s."
|
3641 |
msgstr ""
|
3642 |
|
3643 |
-
#: includes/class-mla-options.php:
|
3644 |
msgid "Field Title"
|
3645 |
msgstr ""
|
3646 |
|
3647 |
-
#: includes/class-mla-options.php:
|
3648 |
-
#: includes/class-mla-options.php:
|
3649 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
3650 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
3651 |
msgid "IPTC Value"
|
3652 |
msgstr ""
|
3653 |
|
3654 |
-
#: includes/class-mla-options.php:
|
3655 |
-
#: includes/class-mla-options.php:
|
3656 |
msgid "EXIF Value"
|
3657 |
msgstr ""
|
3658 |
|
3659 |
-
#: includes/class-mla-options.php:
|
3660 |
-
#: includes/class-mla-options.php:
|
3661 |
msgid "EXIF to IPTC"
|
3662 |
msgstr ""
|
3663 |
|
3664 |
-
#: includes/class-mla-options.php:
|
3665 |
-
#: includes/class-mla-options.php:
|
3666 |
msgid "IPTC to EXIF"
|
3667 |
msgstr ""
|
3668 |
|
3669 |
-
#: includes/class-mla-options.php:
|
3670 |
-
#: includes/class-mla-options.php:
|
3671 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
3672 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
3673 |
msgid "Priority"
|
3674 |
msgstr ""
|
3675 |
|
3676 |
-
#: includes/class-mla-options.php:
|
3677 |
msgid "Delimiter(s)"
|
3678 |
msgstr ""
|
3679 |
|
@@ -3867,8 +3885,8 @@ msgstr ""
|
|
3867 |
#: includes/class-mla-polylang-support.php:2602
|
3868 |
#: includes/class-mla-settings-custom-fields-tab.php:686
|
3869 |
#: includes/class-mla-settings-custom-fields-tab.php:787
|
3870 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
3871 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
3872 |
#: includes/class-mla-settings-shortcodes-tab.php:733
|
3873 |
#: includes/class-mla-settings-upload-tab.php:485
|
3874 |
#: includes/class-mla-settings-upload-tab.php:531
|
@@ -3911,8 +3929,8 @@ msgstr ""
|
|
3911 |
|
3912 |
#: includes/class-mla-settings-custom-fields-tab.php:54
|
3913 |
#: includes/class-mla-settings-custom-fields-tab.php:87
|
3914 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
3915 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
3916 |
#: includes/class-mla-settings-upload-tab.php:43
|
3917 |
#: includes/class-mla-settings-view-tab.php:43
|
3918 |
msgid "Error while making the changes."
|
@@ -3920,30 +3938,30 @@ msgstr ""
|
|
3920 |
|
3921 |
#: includes/class-mla-settings-custom-fields-tab.php:56
|
3922 |
#: includes/class-mla-settings-custom-fields-tab.php:89
|
3923 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
3924 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
3925 |
#: includes/class-mla-settings-upload-tab.php:45
|
3926 |
#: includes/class-mla-settings-view-tab.php:45
|
3927 |
msgid "no slug"
|
3928 |
msgstr ""
|
3929 |
|
3930 |
#: includes/class-mla-settings-custom-fields-tab.php:62
|
3931 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
3932 |
msgid "Running"
|
3933 |
msgstr ""
|
3934 |
|
3935 |
#: includes/class-mla-settings-custom-fields-tab.php:67
|
3936 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
3937 |
msgid "Skipped"
|
3938 |
msgstr ""
|
3939 |
|
3940 |
#: includes/class-mla-settings-custom-fields-tab.php:68
|
3941 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
3942 |
msgid "Reprocessed"
|
3943 |
msgstr ""
|
3944 |
|
3945 |
#: includes/class-mla-settings-custom-fields-tab.php:69
|
3946 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
3947 |
msgid "PAUSED"
|
3948 |
msgstr ""
|
3949 |
|
@@ -3956,113 +3974,113 @@ msgid "Custom field no mapping changes detected."
|
|
3956 |
msgstr ""
|
3957 |
|
3958 |
#: includes/class-mla-settings-custom-fields-tab.php:169
|
3959 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
3960 |
msgid "No custom field mapping rules to process."
|
3961 |
msgstr ""
|
3962 |
|
3963 |
#: includes/class-mla-settings-custom-fields-tab.php:202
|
3964 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
3965 |
#, php-format
|
3966 |
msgid "%1$s mapping completed; %2$d attachment(s) examined, %3$d updated."
|
3967 |
msgstr ""
|
3968 |
|
3969 |
#: includes/class-mla-settings-custom-fields-tab.php:202
|
3970 |
#: includes/class-mla-settings-custom-fields-tab.php:205
|
3971 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
3972 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
3973 |
msgid "Custom field"
|
3974 |
msgstr ""
|
3975 |
|
3976 |
#: includes/class-mla-settings-custom-fields-tab.php:205
|
3977 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
3978 |
#, php-format
|
3979 |
msgid ""
|
3980 |
"%1$s mapping completed; %2$d attachment(s) examined, no changes detected."
|
3981 |
msgstr ""
|
3982 |
|
3983 |
#: includes/class-mla-settings-custom-fields-tab.php:252
|
3984 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
3985 |
msgid ": No custom field name selected/entered"
|
3986 |
msgstr ""
|
3987 |
|
3988 |
#: includes/class-mla-settings-custom-fields-tab.php:256
|
3989 |
#: includes/class-mla-settings-custom-fields-tab.php:323
|
3990 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
3991 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
3992 |
msgid ": Rule already exists for the new name"
|
3993 |
msgstr ""
|
3994 |
|
3995 |
#: includes/class-mla-settings-custom-fields-tab.php:274
|
3996 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
3997 |
msgid "Rule added"
|
3998 |
msgstr ""
|
3999 |
|
4000 |
#: includes/class-mla-settings-custom-fields-tab.php:277
|
4001 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
4002 |
msgid ": Rule addition failed"
|
4003 |
msgstr ""
|
4004 |
|
4005 |
#: includes/class-mla-settings-custom-fields-tab.php:327
|
4006 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
4007 |
msgid ": Invalid rule name must be changed"
|
4008 |
msgstr ""
|
4009 |
|
4010 |
#: includes/class-mla-settings-custom-fields-tab.php:350
|
4011 |
#: includes/class-mla-settings-custom-fields-tab.php:442
|
4012 |
#: includes/class-mla-settings-custom-fields-tab.php:998
|
4013 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
4014 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
4015 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
4016 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
4017 |
msgid ": Rule update failed"
|
4018 |
msgstr ""
|
4019 |
|
4020 |
#: includes/class-mla-settings-custom-fields-tab.php:355
|
4021 |
#: includes/class-mla-settings-custom-fields-tab.php:445
|
4022 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
4023 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
4024 |
msgid "Rule updated"
|
4025 |
msgstr ""
|
4026 |
|
4027 |
#: includes/class-mla-settings-custom-fields-tab.php:379
|
4028 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
4029 |
#, php-format
|
4030 |
msgid "Custom Field Rule \"%1$s\" deleted."
|
4031 |
msgstr ""
|
4032 |
|
4033 |
#: includes/class-mla-settings-custom-fields-tab.php:466
|
4034 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
4035 |
msgid "Edit Rule"
|
4036 |
msgstr ""
|
4037 |
|
4038 |
#: includes/class-mla-settings-custom-fields-tab.php:475
|
4039 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
4040 |
msgid ""
|
4041 |
"This is the name of the custom field to which the rule applies.<br>Only one "
|
4042 |
"rule is allowed for each custom field."
|
4043 |
msgstr ""
|
4044 |
|
4045 |
#: includes/class-mla-settings-custom-fields-tab.php:476
|
4046 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
4047 |
msgid "Change Name"
|
4048 |
msgstr ""
|
4049 |
|
4050 |
#: includes/class-mla-settings-custom-fields-tab.php:477
|
4051 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
4052 |
msgid "Cancel Name Change"
|
4053 |
msgstr ""
|
4054 |
|
4055 |
#: includes/class-mla-settings-custom-fields-tab.php:478
|
4056 |
#: includes/class-mla-settings-custom-fields-tab.php:792
|
4057 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
4058 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
4059 |
msgid "Enter new field"
|
4060 |
msgstr ""
|
4061 |
|
4062 |
#: includes/class-mla-settings-custom-fields-tab.php:479
|
4063 |
#: includes/class-mla-settings-custom-fields-tab.php:793
|
4064 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
4065 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
4066 |
msgid "Cancel new field"
|
4067 |
msgstr ""
|
4068 |
|
@@ -4098,80 +4116,80 @@ msgstr ""
|
|
4098 |
#: includes/class-mla-settings-custom-fields-tab.php:500
|
4099 |
#: includes/class-mla-settings-custom-fields-tab.php:810
|
4100 |
#: includes/class-mla-settings-custom-fields-tab.php:1547
|
4101 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
4102 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
4103 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
4104 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
4105 |
#: includes/class-mla-thumbnail-generation.php:650
|
4106 |
msgid "Keep"
|
4107 |
msgstr ""
|
4108 |
|
4109 |
#: includes/class-mla-settings-custom-fields-tab.php:505
|
4110 |
#: includes/class-mla-settings-custom-fields-tab.php:815
|
4111 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
4112 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
4113 |
msgid "Native"
|
4114 |
msgstr ""
|
4115 |
|
4116 |
#: includes/class-mla-settings-custom-fields-tab.php:507
|
4117 |
#: includes/class-mla-settings-custom-fields-tab.php:817
|
4118 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
4119 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
4120 |
msgid "Commas"
|
4121 |
msgstr ""
|
4122 |
|
4123 |
#: includes/class-mla-settings-custom-fields-tab.php:509
|
4124 |
#: includes/class-mla-settings-custom-fields-tab.php:819
|
4125 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
4126 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
4127 |
msgid "Raw"
|
4128 |
msgstr ""
|
4129 |
|
4130 |
#: includes/class-mla-settings-custom-fields-tab.php:512
|
4131 |
#: includes/class-mla-settings-custom-fields-tab.php:822
|
4132 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
4133 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
4134 |
msgid "Text"
|
4135 |
msgstr ""
|
4136 |
|
4137 |
#: includes/class-mla-settings-custom-fields-tab.php:514
|
4138 |
#: includes/class-mla-settings-custom-fields-tab.php:824
|
4139 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
4140 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
4141 |
msgid "Single"
|
4142 |
msgstr ""
|
4143 |
|
4144 |
#: includes/class-mla-settings-custom-fields-tab.php:516
|
4145 |
#: includes/class-mla-settings-custom-fields-tab.php:826
|
4146 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
4147 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
4148 |
msgid "Export"
|
4149 |
msgstr ""
|
4150 |
|
4151 |
#: includes/class-mla-settings-custom-fields-tab.php:518
|
4152 |
#: includes/class-mla-settings-custom-fields-tab.php:828
|
4153 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
4154 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
4155 |
msgid "Array"
|
4156 |
msgstr ""
|
4157 |
|
4158 |
#: includes/class-mla-settings-custom-fields-tab.php:520
|
4159 |
#: includes/class-mla-settings-custom-fields-tab.php:830
|
4160 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
4161 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
4162 |
msgid "Multi"
|
4163 |
msgstr ""
|
4164 |
|
4165 |
#: includes/class-mla-settings-custom-fields-tab.php:522
|
4166 |
#: includes/class-mla-settings-custom-fields-tab.php:832
|
4167 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
4168 |
msgid "Delete NULL Values"
|
4169 |
msgstr ""
|
4170 |
|
4171 |
#: includes/class-mla-settings-custom-fields-tab.php:523
|
4172 |
#: includes/class-mla-settings-custom-fields-tab.php:833
|
4173 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
4174 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
4175 |
msgid "Do not store empty custom field values"
|
4176 |
msgstr ""
|
4177 |
|
@@ -4180,11 +4198,11 @@ msgstr ""
|
|
4180 |
#: includes/class-mla-settings-custom-fields-tab.php:1531
|
4181 |
#: includes/class-mla-settings-custom-fields-tab.php:1762
|
4182 |
#: includes/class-mla-settings-documentation-tab.php:1226
|
4183 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
4184 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
4185 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
4186 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
4187 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
4188 |
#: includes/class-mla-settings-upload-tab.php:555
|
4189 |
#: includes/class-mla-settings-upload-tab.php:1041
|
4190 |
msgid "Active"
|
@@ -4195,11 +4213,11 @@ msgstr ""
|
|
4195 |
#: includes/class-mla-settings-custom-fields-tab.php:1533
|
4196 |
#: includes/class-mla-settings-custom-fields-tab.php:1765
|
4197 |
#: includes/class-mla-settings-documentation-tab.php:1228
|
4198 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
4199 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
4200 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
4201 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
4202 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
4203 |
#: includes/class-mla-settings-upload-tab.php:197
|
4204 |
#: includes/class-mla-settings-upload-tab.php:541
|
4205 |
#: includes/class-mla-settings-upload-tab.php:1039
|
@@ -4207,7 +4225,7 @@ msgid "Inactive"
|
|
4207 |
msgstr ""
|
4208 |
|
4209 |
#: includes/class-mla-settings-custom-fields-tab.php:560
|
4210 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
4211 |
#, php-format
|
4212 |
msgid "Custom Field Rule \"%1$s\": %2$s"
|
4213 |
msgstr ""
|
@@ -4219,8 +4237,8 @@ msgstr ""
|
|
4219 |
#: includes/class-mla-settings-custom-fields-tab.php:611
|
4220 |
#: includes/class-mla-settings-custom-fields-tab.php:639
|
4221 |
#: includes/class-mla-settings-documentation-tab.php:277
|
4222 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
4223 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
4224 |
#: includes/class-mla-settings-shortcodes-tab.php:574
|
4225 |
#: includes/class-mla-settings-upload-tab.php:410
|
4226 |
#: includes/class-mla-settings-view-tab.php:257
|
@@ -4237,43 +4255,43 @@ msgid "Custom Field Mapping Progress"
|
|
4237 |
msgstr ""
|
4238 |
|
4239 |
#: includes/class-mla-settings-custom-fields-tab.php:755
|
4240 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
4241 |
msgid "DO NOT DO THE FOLLOWING (they will cause mapping to fail)"
|
4242 |
msgstr ""
|
4243 |
|
4244 |
#: includes/class-mla-settings-custom-fields-tab.php:756
|
4245 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
4246 |
msgid "Close the window"
|
4247 |
msgstr ""
|
4248 |
|
4249 |
#: includes/class-mla-settings-custom-fields-tab.php:757
|
4250 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
4251 |
msgid "Reload the page"
|
4252 |
msgstr ""
|
4253 |
|
4254 |
#: includes/class-mla-settings-custom-fields-tab.php:758
|
4255 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
4256 |
msgid "Click the browser’s Stop, Back or forward buttons"
|
4257 |
msgstr ""
|
4258 |
|
4259 |
#: includes/class-mla-settings-custom-fields-tab.php:759
|
4260 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
4261 |
msgid "Progress"
|
4262 |
msgstr ""
|
4263 |
|
4264 |
#: includes/class-mla-settings-custom-fields-tab.php:760
|
4265 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
4266 |
msgid "Pause"
|
4267 |
msgstr ""
|
4268 |
|
4269 |
#: includes/class-mla-settings-custom-fields-tab.php:762
|
4270 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
4271 |
msgid "Resume"
|
4272 |
msgstr ""
|
4273 |
|
4274 |
#: includes/class-mla-settings-custom-fields-tab.php:763
|
4275 |
#: includes/class-mla-settings-documentation-tab.php:152
|
4276 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
4277 |
#: includes/class-mla-settings-shortcodes-tab.php:497
|
4278 |
#: includes/class-mla-template-support.php:160
|
4279 |
#: includes/class-mla-template-support.php:166
|
@@ -4298,7 +4316,7 @@ msgid ""
|
|
4298 |
msgstr ""
|
4299 |
|
4300 |
#: includes/class-mla-settings-custom-fields-tab.php:776
|
4301 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
4302 |
msgid ""
|
4303 |
"You can find more information about using the controls in this tab to define "
|
4304 |
"mapping rules and apply them by clicking the \"Help\" control in the upper-"
|
@@ -4306,54 +4324,54 @@ msgid ""
|
|
4306 |
msgstr ""
|
4307 |
|
4308 |
#: includes/class-mla-settings-custom-fields-tab.php:781
|
4309 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
4310 |
#: includes/class-mla-settings-shortcodes-tab.php:731
|
4311 |
msgid "Search results for"
|
4312 |
msgstr ""
|
4313 |
|
4314 |
#: includes/class-mla-settings-custom-fields-tab.php:783
|
4315 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
4316 |
msgid "Search Rules Text"
|
4317 |
msgstr ""
|
4318 |
|
4319 |
#: includes/class-mla-settings-custom-fields-tab.php:785
|
4320 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
4321 |
msgid "Search Rules"
|
4322 |
msgstr ""
|
4323 |
|
4324 |
#: includes/class-mla-settings-custom-fields-tab.php:788
|
4325 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
4326 |
msgid "Execute All Rules"
|
4327 |
msgstr ""
|
4328 |
|
4329 |
#: includes/class-mla-settings-custom-fields-tab.php:789
|
4330 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
4331 |
msgid "Add New Custom Field Rule"
|
4332 |
msgstr ""
|
4333 |
|
4334 |
#: includes/class-mla-settings-custom-fields-tab.php:839
|
4335 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
4336 |
msgid "Add Rule"
|
4337 |
msgstr ""
|
4338 |
|
4339 |
#: includes/class-mla-settings-custom-fields-tab.php:910
|
4340 |
#: includes/class-mla-settings-custom-fields-tab.php:932
|
4341 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
4342 |
msgid "Nothing to execute"
|
4343 |
msgstr ""
|
4344 |
|
4345 |
#: includes/class-mla-settings-custom-fields-tab.php:972
|
4346 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
4347 |
msgid "Rule not found"
|
4348 |
msgstr ""
|
4349 |
|
4350 |
#: includes/class-mla-settings-custom-fields-tab.php:975
|
4351 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
4352 |
msgid "Rule ID not found"
|
4353 |
msgstr ""
|
4354 |
|
4355 |
#: includes/class-mla-settings-custom-fields-tab.php:1251
|
4356 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
4357 |
msgctxt "list_table_column"
|
4358 |
msgid "Bad Name"
|
4359 |
msgstr ""
|
@@ -4369,38 +4387,38 @@ msgid "Visibility"
|
|
4369 |
msgstr ""
|
4370 |
|
4371 |
#: includes/class-mla-settings-custom-fields-tab.php:1256
|
4372 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
4373 |
msgctxt "list_table_column"
|
4374 |
msgid "Existing Text"
|
4375 |
msgstr ""
|
4376 |
|
4377 |
#: includes/class-mla-settings-custom-fields-tab.php:1257
|
4378 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
4379 |
msgctxt "list_table_column"
|
4380 |
msgid "Delete NULL"
|
4381 |
msgstr ""
|
4382 |
|
4383 |
#: includes/class-mla-settings-custom-fields-tab.php:1258
|
4384 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
4385 |
msgctxt "list_table_column"
|
4386 |
msgid "Format"
|
4387 |
msgstr ""
|
4388 |
|
4389 |
#: includes/class-mla-settings-custom-fields-tab.php:1259
|
4390 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
4391 |
msgctxt "list_table_column"
|
4392 |
msgid "Option"
|
4393 |
msgstr ""
|
4394 |
|
4395 |
#: includes/class-mla-settings-custom-fields-tab.php:1398
|
4396 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
4397 |
msgid "Map All Attachments"
|
4398 |
msgstr ""
|
4399 |
|
4400 |
#: includes/class-mla-settings-custom-fields-tab.php:1398
|
4401 |
#: includes/class-mla-settings-custom-fields-tab.php:1741
|
4402 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
4403 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
4404 |
msgid "Execute"
|
4405 |
msgstr ""
|
4406 |
|
@@ -4410,13 +4428,13 @@ msgstr ""
|
|
4410 |
|
4411 |
#: includes/class-mla-settings-custom-fields-tab.php:1400
|
4412 |
#: includes/class-mla-settings-custom-fields-tab.php:1742
|
4413 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
4414 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
4415 |
msgid "Purge Values"
|
4416 |
msgstr ""
|
4417 |
|
4418 |
#: includes/class-mla-settings-custom-fields-tab.php:1759
|
4419 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
4420 |
#: includes/class-mla-settings-shortcodes-tab.php:1317
|
4421 |
msgid "Any Status"
|
4422 |
msgstr ""
|
@@ -4452,13 +4470,13 @@ msgid "Bulk Edit"
|
|
4452 |
msgstr ""
|
4453 |
|
4454 |
#: includes/class-mla-settings-custom-fields-tab.php:2517
|
4455 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
4456 |
msgctxt "table_view_singular"
|
4457 |
msgid "Read Only"
|
4458 |
msgstr ""
|
4459 |
|
4460 |
#: includes/class-mla-settings-custom-fields-tab.php:2518
|
4461 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
4462 |
msgctxt "table_view_plural"
|
4463 |
msgid "Read Only"
|
4464 |
msgstr ""
|
@@ -4650,133 +4668,133 @@ msgctxt "table_view_plural"
|
|
4650 |
msgid "Uninstalled"
|
4651 |
msgstr ""
|
4652 |
|
4653 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
4654 |
msgid "IPTC/EXIF mapping settings updated."
|
4655 |
msgstr ""
|
4656 |
|
4657 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
4658 |
msgid "IPTC/EXIF no mapping changes detected."
|
4659 |
msgstr ""
|
4660 |
|
4661 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
4662 |
msgid "updated."
|
4663 |
msgstr ""
|
4664 |
|
4665 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
4666 |
msgid "Notes for the IPTC/EXIF tab submenu table."
|
4667 |
msgstr ""
|
4668 |
|
4669 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
4670 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
4671 |
msgid "EXIF/Template Value"
|
4672 |
msgstr ""
|
4673 |
|
4674 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
4675 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
4676 |
msgid "EXIF element name or Content Template"
|
4677 |
msgstr ""
|
4678 |
|
4679 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
4680 |
msgid " (starting with \"template:\")"
|
4681 |
msgstr ""
|
4682 |
|
4683 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
4684 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
4685 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
4686 |
msgid "IPTC"
|
4687 |
msgstr ""
|
4688 |
|
4689 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
4690 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
4691 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
4692 |
msgid "EXIF"
|
4693 |
msgstr ""
|
4694 |
|
4695 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
4696 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
4697 |
msgid "Delimiters"
|
4698 |
msgstr ""
|
4699 |
|
4700 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
4701 |
msgid "Standard field mapping"
|
4702 |
msgstr ""
|
4703 |
|
4704 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
4705 |
msgid "Taxonomy term mapping"
|
4706 |
msgstr ""
|
4707 |
|
4708 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
4709 |
msgid "Custom field mapping"
|
4710 |
msgstr ""
|
4711 |
|
4712 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
4713 |
msgid "Edit IPTC EXIF Rule cancelled."
|
4714 |
msgstr ""
|
4715 |
|
4716 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
4717 |
msgid "IPTC/EXIF Mapping Support is disabled"
|
4718 |
msgstr ""
|
4719 |
|
4720 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
4721 |
msgid "IPTC & EXIF Mapping Progress"
|
4722 |
msgstr ""
|
4723 |
|
4724 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
4725 |
msgid "IPTC & EXIF Processing Options"
|
4726 |
msgstr ""
|
4727 |
|
4728 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
4729 |
msgid ""
|
4730 |
"In this tab you can define the rules for mapping IPTC (International Press "
|
4731 |
"Telecommunications Council) and EXIF (EXchangeable Image File) metadata to "
|
4732 |
"WordPress standard attachment fields, taxonomy terms and custom fields."
|
4733 |
msgstr ""
|
4734 |
|
4735 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
4736 |
msgctxt "list_table_column"
|
4737 |
msgid "IPTC Value"
|
4738 |
msgstr ""
|
4739 |
|
4740 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
4741 |
msgctxt "list_table_column"
|
4742 |
msgid "EXIF/Template Value"
|
4743 |
msgstr ""
|
4744 |
|
4745 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
4746 |
msgctxt "list_table_column"
|
4747 |
msgid "Priority "
|
4748 |
msgstr ""
|
4749 |
|
4750 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
4751 |
msgctxt "list_table_column"
|
4752 |
msgid "Delimiter(s)"
|
4753 |
msgstr ""
|
4754 |
|
4755 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
4756 |
msgctxt "list_table_column"
|
4757 |
msgid "Parent"
|
4758 |
msgstr ""
|
4759 |
|
4760 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
4761 |
msgid "Purge IPTC EXIF values"
|
4762 |
msgstr ""
|
4763 |
|
4764 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
4765 |
msgctxt "table_view_singular"
|
4766 |
msgid "Standard"
|
4767 |
msgstr ""
|
4768 |
|
4769 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
4770 |
msgctxt "table_view_plural"
|
4771 |
msgid "Standard"
|
4772 |
msgstr ""
|
4773 |
|
4774 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
4775 |
msgctxt "table_view_singular"
|
4776 |
msgid "Taxonomy"
|
4777 |
msgstr ""
|
4778 |
|
4779 |
-
#: includes/class-mla-settings-iptc-exif-tab.php:
|
4780 |
msgctxt "table_view_plural"
|
4781 |
msgid "Taxonomy"
|
4782 |
msgstr ""
|
@@ -5704,180 +5722,180 @@ msgstr ""
|
|
5704 |
msgid "Settings imported; %1$s updated, %2$s unchanged."
|
5705 |
msgstr ""
|
5706 |
|
5707 |
-
#: includes/class-mla-shortcode-support.php:
|
5708 |
-
#: includes/class-mla-shortcode-support.php:
|
5709 |
-
#: includes/class-mla-shortcode-support.php:
|
5710 |
-
#: includes/class-mla-shortcode-support.php:
|
5711 |
msgid "Previous"
|
5712 |
msgstr ""
|
5713 |
|
5714 |
-
#: includes/class-mla-shortcode-support.php:
|
5715 |
-
#: includes/class-mla-shortcode-support.php:
|
5716 |
-
#: includes/class-mla-shortcode-support.php:
|
5717 |
-
#: includes/class-mla-shortcode-support.php:
|
5718 |
msgid "Next"
|
5719 |
msgstr ""
|
5720 |
|
5721 |
-
#: includes/class-mla-shortcode-support.php:
|
5722 |
-
#: includes/class-mla-shortcode-support.php:
|
5723 |
-
#: includes/class-mla-shortcode-support.php:
|
5724 |
-
#: includes/class-mla-shortcode-support.php:
|
5725 |
-
#: includes/class-mla-shortcode-support.php:
|
5726 |
-
#: includes/class-mla-shortcode-support.php:
|
5727 |
#: includes/class-mla-template-support.php:598
|
5728 |
msgid "not found"
|
5729 |
msgstr ""
|
5730 |
|
5731 |
-
#: includes/class-mla-shortcode-support.php:
|
5732 |
-
#: includes/class-mla-shortcode-support.php:
|
5733 |
-
#: includes/class-mla-shortcode-support.php:
|
5734 |
msgid "mla_debug REQUEST"
|
5735 |
msgstr ""
|
5736 |
|
5737 |
-
#: includes/class-mla-shortcode-support.php:
|
5738 |
-
#: includes/class-mla-shortcode-support.php:
|
5739 |
msgid "mla_debug attributes_errors"
|
5740 |
msgstr ""
|
5741 |
|
5742 |
-
#: includes/class-mla-shortcode-support.php:
|
5743 |
-
#: includes/class-mla-shortcode-support.php:
|
5744 |
-
#: includes/class-mla-shortcode-support.php:
|
5745 |
-
#: includes/class-mla-shortcode-support.php:
|
5746 |
msgid "mla_debug attributes"
|
5747 |
msgstr ""
|
5748 |
|
5749 |
-
#: includes/class-mla-shortcode-support.php:
|
5750 |
-
#: includes/class-mla-shortcode-support.php:
|
5751 |
-
#: includes/class-mla-shortcode-support.php:
|
5752 |
-
#: includes/class-mla-shortcode-support.php:
|
5753 |
msgid "mla_debug arguments"
|
5754 |
msgstr ""
|
5755 |
|
5756 |
-
#: includes/class-mla-shortcode-support.php:
|
5757 |
msgid "mla_debug empty gallery"
|
5758 |
msgstr ""
|
5759 |
|
5760 |
-
#: includes/class-mla-shortcode-support.php:
|
5761 |
msgid ""
|
5762 |
"<strong>Photonic-enhanced [mla_gallery]</strong> type must be "
|
5763 |
"<strong>default</strong>, query = "
|
5764 |
msgstr ""
|
5765 |
|
5766 |
-
#: includes/class-mla-shortcode-support.php:
|
5767 |
msgid "unknown"
|
5768 |
msgstr ""
|
5769 |
|
5770 |
-
#: includes/class-mla-shortcode-support.php:
|
5771 |
msgid "mla_debug empty cloud"
|
5772 |
msgstr ""
|
5773 |
|
5774 |
-
#: includes/class-mla-shortcode-support.php:
|
5775 |
msgid "mla_debug adding ANY terms"
|
5776 |
msgstr ""
|
5777 |
|
5778 |
-
#: includes/class-mla-shortcode-support.php:
|
5779 |
msgid "mla_debug adding NO terms"
|
5780 |
msgstr ""
|
5781 |
|
5782 |
-
#: includes/class-mla-shortcode-support.php:
|
5783 |
msgid "mla_debug adding IGNORE terms"
|
5784 |
msgstr ""
|
5785 |
|
5786 |
-
#: includes/class-mla-shortcode-support.php:
|
5787 |
msgid "mla_debug empty list"
|
5788 |
msgstr ""
|
5789 |
|
5790 |
-
#: includes/class-mla-shortcode-support.php:
|
5791 |
msgid "no-terms"
|
5792 |
msgstr ""
|
5793 |
|
5794 |
-
#: includes/class-mla-shortcode-support.php:
|
5795 |
-
#: includes/class-mla-shortcode-support.php:
|
5796 |
-
#: includes/class-mla-shortcode-support.php:5788
|
5797 |
#: includes/class-mla-shortcode-support.php:5804
|
5798 |
-
#: includes/class-mla-shortcode-support.php:
|
5799 |
#: includes/class-mla-shortcode-support.php:5843
|
|
|
5800 |
msgid "Invalid mla_gallery"
|
5801 |
msgstr ""
|
5802 |
|
5803 |
-
#: includes/class-mla-shortcode-support.php:
|
5804 |
-
#: includes/class-mla-shortcode-support.php:
|
5805 |
msgid "mla_debug query"
|
5806 |
msgstr ""
|
5807 |
|
5808 |
-
#: includes/class-mla-shortcode-support.php:
|
5809 |
msgid "mla_debug request"
|
5810 |
msgstr ""
|
5811 |
|
5812 |
-
#: includes/class-mla-shortcode-support.php:
|
5813 |
msgid "mla_debug query_vars"
|
5814 |
msgstr ""
|
5815 |
|
5816 |
-
#: includes/class-mla-shortcode-support.php:
|
5817 |
msgid "mla_debug post_count"
|
5818 |
msgstr ""
|
5819 |
|
5820 |
-
#: includes/class-mla-shortcode-support.php:
|
5821 |
msgid "mla_debug found_posts"
|
5822 |
msgstr ""
|
5823 |
|
5824 |
-
#: includes/class-mla-shortcode-support.php:
|
5825 |
msgid "mla_debug JOIN filter"
|
5826 |
msgstr ""
|
5827 |
|
5828 |
-
#: includes/class-mla-shortcode-support.php:
|
5829 |
msgid "mla_debug modified JOIN filter"
|
5830 |
msgstr ""
|
5831 |
|
5832 |
-
#: includes/class-mla-shortcode-support.php:
|
5833 |
msgid "mla_debug WHERE filter"
|
5834 |
msgstr ""
|
5835 |
|
5836 |
-
#: includes/class-mla-shortcode-support.php:
|
5837 |
msgid "mla_debug modified WHERE filter"
|
5838 |
msgstr ""
|
5839 |
|
5840 |
-
#: includes/class-mla-shortcode-support.php:
|
5841 |
msgid "mla_debug ORDER BY filter, incoming"
|
5842 |
msgstr ""
|
5843 |
|
5844 |
-
#: includes/class-mla-shortcode-support.php:
|
5845 |
msgid "Replacement ORDER BY clause"
|
5846 |
msgstr ""
|
5847 |
|
5848 |
-
#: includes/class-mla-shortcode-support.php:
|
5849 |
msgid "mla_debug posts_clauses filter"
|
5850 |
msgstr ""
|
5851 |
|
5852 |
-
#: includes/class-mla-shortcode-support.php:
|
5853 |
msgid "mla_debug posts_clauses_request filter"
|
5854 |
msgstr ""
|
5855 |
|
5856 |
-
#: includes/class-mla-shortcode-support.php:
|
5857 |
msgid "mla_debug results"
|
5858 |
msgstr ""
|
5859 |
|
5860 |
-
#: includes/class-mla-shortcode-support.php:
|
5861 |
msgid "Invalid taxonomy"
|
5862 |
msgstr ""
|
5863 |
|
5864 |
-
#: includes/class-mla-shortcode-support.php:
|
5865 |
msgid "mla_debug query arguments"
|
5866 |
msgstr ""
|
5867 |
|
5868 |
-
#: includes/class-mla-shortcode-support.php:
|
5869 |
msgid "mla_debug last_query"
|
5870 |
msgstr ""
|
5871 |
|
5872 |
-
#: includes/class-mla-shortcode-support.php:
|
5873 |
msgid "mla_debug last_error"
|
5874 |
msgstr ""
|
5875 |
|
5876 |
-
#: includes/class-mla-shortcode-support.php:
|
5877 |
msgid "mla_debug num_rows"
|
5878 |
msgstr ""
|
5879 |
|
5880 |
-
#: includes/class-mla-shortcode-support.php:
|
5881 |
msgid "mla_debug found_rows"
|
5882 |
msgstr ""
|
5883 |
|
2 |
msgid ""
|
3 |
msgstr ""
|
4 |
"Project-Id-Version: Media Library Assistant\n"
|
5 |
+
"POT-Creation-Date: 2021-10-17 15:53-0700\n"
|
6 |
"PO-Revision-Date: 2015-08-21 21:38-0800\n"
|
7 |
"Last-Translator: David Lingren <david@fairtradejudaica.org>\n"
|
8 |
"Language-Team: David Lingren <david@davidlingren.com>\n"
|
24 |
#: includes/class-mla-admin-columns-pro-support-423.php:178
|
25 |
#: includes/class-mla-admin-columns-pro-support-44.php:175
|
26 |
#: includes/class-mla-admin-columns-pro-support.php:193
|
27 |
+
#: includes/class-mla-ajax.php:356 includes/class-mla-edit-media.php:1065
|
28 |
#: includes/class-mla-list-table.php:712
|
29 |
msgid "Draft"
|
30 |
msgstr ""
|
32 |
#: includes/class-mla-admin-columns-pro-support-423.php:181
|
33 |
#: includes/class-mla-admin-columns-pro-support-44.php:178
|
34 |
#: includes/class-mla-admin-columns-pro-support.php:196
|
35 |
+
#: includes/class-mla-ajax.php:350 includes/class-mla-edit-media.php:1059
|
36 |
#: includes/class-mla-list-table.php:715
|
37 |
msgid "Scheduled"
|
38 |
msgstr ""
|
40 |
#: includes/class-mla-admin-columns-pro-support-423.php:184
|
41 |
#: includes/class-mla-admin-columns-pro-support-44.php:181
|
42 |
#: includes/class-mla-admin-columns-pro-support.php:199
|
43 |
+
#: includes/class-mla-edit-media.php:1062 includes/class-mla-list-table.php:718
|
44 |
msgctxt "post state"
|
45 |
msgid "Pending"
|
46 |
msgstr ""
|
74 |
#: includes/class-mla-admin-columns-pro-support.php:692
|
75 |
#: includes/class-mla-admin-columns-pro-support.php:759
|
76 |
#: includes/class-mla-admin-columns-pro-support.php:821
|
77 |
+
#: includes/class-mla-core-options.php:462
|
78 |
+
#: includes/class-mla-core-options.php:472
|
79 |
+
#: includes/class-mla-core-options.php:482
|
80 |
+
#: includes/class-mla-core-options.php:492
|
81 |
#: includes/class-mla-list-table.php:1234
|
82 |
#: includes/class-mla-list-table.php:1279
|
83 |
#: includes/class-mla-list-table.php:1329
|
97 |
#: includes/class-mla-admin-columns-pro-support.php:715
|
98 |
#: includes/class-mla-admin-columns-pro-support.php:778
|
99 |
#: includes/class-mla-admin-columns-pro-support.php:840
|
100 |
+
#: includes/class-mla-edit-media.php:1166
|
101 |
+
#: includes/class-mla-edit-media.php:1203
|
102 |
+
#: includes/class-mla-edit-media.php:1238
|
103 |
+
#: includes/class-mla-edit-media.php:1272
|
104 |
#: includes/class-mla-list-table.php:1252
|
105 |
#: includes/class-mla-list-table.php:1301
|
106 |
#: includes/class-mla-list-table.php:1347
|
111 |
#: includes/class-mla-admin-columns-pro-support-423.php:1027
|
112 |
#: includes/class-mla-admin-columns-pro-support-44.php:1024
|
113 |
#: includes/class-mla-admin-columns-pro-support.php:1065
|
114 |
+
#: includes/class-mla-core-options.php:621
|
115 |
+
#: includes/class-mla-core-options.php:887
|
|
|
116 |
#: includes/class-mla-core-options.php:918
|
117 |
+
#: includes/class-mla-core-options.php:932
|
118 |
#: includes/class-mla-list-table.php:561 includes/class-mla-list-table.php:1487
|
119 |
#: includes/class-mla-settings-shortcodes-tab.php:649
|
120 |
msgid "None"
|
139 |
#: includes/class-mla-admin-columns-pro-support-423.php:1134
|
140 |
#: includes/class-mla-admin-columns-pro-support-44.php:1131
|
141 |
#: includes/class-mla-admin-columns-pro-support.php:1172
|
142 |
+
#: includes/class-mla-core-options.php:1334
|
143 |
#: includes/class-mla-list-table.php:1643
|
144 |
msgctxt "table_view_singular"
|
145 |
msgid "Unattached"
|
147 |
|
148 |
#: includes/class-mla-admin-columns-support-deprecated.php:33
|
149 |
#: includes/class-mla-admin-columns-support.php:43
|
150 |
+
#: includes/class-mla-core-options.php:571 includes/class-mla-settings.php:426
|
151 |
#: includes/class-mla-settings.php:1446 includes/class-mla-settings.php:1464
|
152 |
#: index.php:46
|
153 |
msgid "Media Library Assistant"
|
155 |
|
156 |
#: includes/class-mla-admin-columns-support-deprecated.php:34
|
157 |
#: includes/class-mla-admin-columns-support.php:44
|
158 |
+
#: includes/class-mla-core-options.php:580
|
159 |
msgid "Assistant"
|
160 |
msgstr ""
|
161 |
|
167 |
|
168 |
#: includes/class-mla-ajax.php:77 includes/class-mla-ajax.php:94
|
169 |
#: includes/class-mla-ajax.php:111 includes/class-mla-ajax.php:129
|
170 |
+
#: includes/class-mla-ajax.php:148 includes/class-mla-data-query.php:1381
|
171 |
+
#: includes/class-mla-data-query.php:1397
|
172 |
+
#: includes/class-mla-data-query.php:1399
|
173 |
+
#: includes/class-mla-data-query.php:1913
|
174 |
+
#: includes/class-mla-data-query.php:2004
|
175 |
+
#: includes/class-mla-data-query.php:2076
|
176 |
+
#: includes/class-mla-data-query.php:2171
|
177 |
+
#: includes/class-mla-data-query.php:2257
|
178 |
+
#: includes/class-mla-data-query.php:2276
|
179 |
msgid "DEBUG"
|
180 |
msgstr ""
|
181 |
|
207 |
"\"%3$d\" count = %4$d."
|
208 |
msgstr ""
|
209 |
|
210 |
+
#: includes/class-mla-ajax.php:337 includes/class-mla-core-options.php:1210
|
211 |
+
#: includes/class-mla-data.php:4408 includes/class-mla-edit-media.php:480
|
212 |
+
#: includes/class-mla-main.php:2085 includes/class-mla-main.php:2407
|
213 |
+
#: includes/class-mla-objects.php:369 includes/class-mla-options.php:466
|
214 |
#: includes/mla-main-search-box-template.php:47
|
215 |
#: includes/mla-media-modal-js-template.php:38
|
216 |
msgid "Title"
|
217 |
msgstr ""
|
218 |
|
219 |
+
#: includes/class-mla-ajax.php:337 includes/class-mla-main.php:2086
|
220 |
#: includes/class-mla-thumbnail-generation.php:644
|
221 |
msgid "Type"
|
222 |
msgstr ""
|
223 |
|
224 |
+
#: includes/class-mla-ajax.php:337 includes/class-mla-main.php:2087
|
225 |
msgid "Date"
|
226 |
msgstr ""
|
227 |
|
228 |
+
#: includes/class-mla-ajax.php:337 includes/class-mla-main.php:2088
|
229 |
#: includes/class-mla-settings-custom-fields-tab.php:524
|
230 |
#: includes/class-mla-settings-custom-fields-tab.php:834
|
231 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:585
|
232 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:973
|
233 |
#: includes/class-mla-settings-upload-tab.php:553
|
234 |
msgid "Status"
|
235 |
msgstr ""
|
251 |
|
252 |
#: includes/class-mla-ajax.php:395 includes/class-mla-ajax.php:402
|
253 |
#: includes/class-mla-ajax.php:411 includes/class-mla-core.php:893
|
254 |
+
#: includes/class-mla-core.php:911 includes/class-mla-core.php:1371
|
255 |
+
#: includes/class-mla-core.php:1377 includes/class-mla-core.php:1381
|
256 |
#: includes/class-mla-data-office.php:35 includes/class-mla-data-office.php:40
|
257 |
#: includes/class-mla-data-office.php:50 includes/class-mla-data-office.php:54
|
258 |
#: includes/class-mla-data-office.php:69 includes/class-mla-data-office.php:74
|
263 |
#: includes/class-mla-data.php:196 includes/class-mla-data.php:257
|
264 |
#: includes/class-mla-data.php:325 includes/class-mla-data.php:414
|
265 |
#: includes/class-mla-data.php:566 includes/class-mla-data.php:629
|
266 |
+
#: includes/class-mla-data.php:1676 includes/class-mla-data.php:1823
|
267 |
+
#: includes/class-mla-data.php:1829 includes/class-mla-data.php:2179
|
268 |
+
#: includes/class-mla-data.php:2183 includes/class-mla-data.php:3613
|
269 |
+
#: includes/class-mla-data.php:3669 includes/class-mla-data.php:3713
|
270 |
+
#: includes/class-mla-data.php:4108 includes/class-mla-data.php:4121
|
271 |
+
#: includes/class-mla-data.php:4143 includes/class-mla-data.php:4383
|
272 |
+
#: includes/class-mla-data.php:4429 includes/class-mla-data.php:4462
|
273 |
+
#: includes/class-mla-data.php:4478 includes/class-mla-data.php:4752
|
274 |
+
#: includes/class-mla-edit-media.php:321 includes/class-mla-edit-media.php:971
|
275 |
+
#: includes/class-mla-edit-media.php:1013 includes/class-mla-main.php:709
|
276 |
#: includes/class-mla-main.php:837 includes/class-mla-main.php:839
|
277 |
#: includes/class-mla-main.php:842 includes/class-mla-main.php:902
|
278 |
#: includes/class-mla-main.php:936 includes/class-mla-main.php:945
|
281 |
#: includes/class-mla-main.php:1556 includes/class-mla-main.php:1606
|
282 |
#: includes/class-mla-main.php:1716 includes/class-mla-main.php:1745
|
283 |
#: includes/class-mla-main.php:1887 includes/class-mla-main.php:1894
|
284 |
+
#: includes/class-mla-main.php:2071 includes/class-mla-main.php:2210
|
285 |
+
#: includes/class-mla-main.php:2539 includes/class-mla-main.php:2547
|
286 |
+
#: includes/class-mla-main.php:2571 includes/class-mla-main.php:2579
|
287 |
+
#: includes/class-mla-main.php:2611 includes/class-mla-main.php:2619
|
288 |
#: includes/class-mla-media-modal.php:618 includes/class-mla-mime-types.php:825
|
289 |
#: includes/class-mla-mime-types.php:1209
|
290 |
#: includes/class-mla-mime-types.php:1297
|
302 |
#: includes/class-mla-mime-types.php:2525
|
303 |
#: includes/class-mla-mime-types.php:2604
|
304 |
#: includes/class-mla-mime-types.php:2613
|
305 |
+
#: includes/class-mla-mime-types.php:2645 includes/class-mla-objects.php:266
|
306 |
#: includes/class-mla-options.php:218 includes/class-mla-options.php:434
|
307 |
#: includes/class-mla-options.php:515 includes/class-mla-options.php:570
|
308 |
+
#: includes/class-mla-options.php:1133 includes/class-mla-options.php:1978
|
309 |
+
#: includes/class-mla-options.php:2204
|
310 |
#: includes/class-mla-settings-custom-fields-tab.php:169
|
311 |
#: includes/class-mla-settings-custom-fields-tab.php:252
|
312 |
#: includes/class-mla-settings-custom-fields-tab.php:256
|
324 |
#: includes/class-mla-settings-documentation-tab.php:142
|
325 |
#: includes/class-mla-settings-documentation-tab.php:337
|
326 |
#: includes/class-mla-settings-documentation-tab.php:1278
|
327 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:195
|
328 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:290
|
329 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:294
|
330 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:314
|
331 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:363
|
332 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:367
|
333 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:397
|
334 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:402
|
335 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:492
|
336 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:718
|
337 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:887
|
338 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:1095
|
339 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:1099
|
340 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:1129
|
341 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:2386
|
342 |
#: includes/class-mla-settings-shortcodes-tab.php:102
|
343 |
#: includes/class-mla-settings-shortcodes-tab.php:113
|
344 |
#: includes/class-mla-settings-shortcodes-tab.php:117
|
368 |
#: includes/class-mla-settings.php:1792 includes/class-mla-settings.php:1799
|
369 |
#: includes/class-mla-settings.php:1808 includes/class-mla-settings.php:1845
|
370 |
#: includes/class-mla-settings.php:1853 includes/class-mla-settings.php:1862
|
371 |
+
#: includes/class-mla-shortcode-support.php:2272
|
372 |
+
#: includes/class-mla-shortcode-support.php:2367
|
373 |
+
#: includes/class-mla-shortcode-support.php:3755
|
374 |
+
#: includes/class-mla-shortcode-support.php:3919
|
375 |
+
#: includes/class-mla-shortcode-support.php:3951
|
376 |
+
#: includes/class-mla-shortcode-support.php:5269
|
377 |
+
#: includes/class-mla-shortcode-support.php:5339
|
|
|
378 |
#: includes/class-mla-shortcode-support.php:5804
|
379 |
+
#: includes/class-mla-shortcode-support.php:5820
|
380 |
#: includes/class-mla-shortcode-support.php:5843
|
381 |
+
#: includes/class-mla-shortcode-support.php:5859
|
382 |
#: includes/class-mla-thumbnail-generation.php:437
|
383 |
#: includes/class-mla-thumbnail-generation.php:449
|
384 |
#: includes/class-mla-thumbnail-generation.php:461
|
395 |
msgid "You are not allowed to edit this Attachment."
|
396 |
msgstr ""
|
397 |
|
398 |
+
#: includes/class-mla-core-options.php:423 includes/class-mla-options.php:257
|
399 |
msgid "Attachment Categories"
|
400 |
msgstr ""
|
401 |
|
402 |
+
#: includes/class-mla-core-options.php:427
|
403 |
msgid "Check this option to add support for Attachment Categories."
|
404 |
msgstr ""
|
405 |
|
406 |
+
#: includes/class-mla-core-options.php:431 includes/class-mla-options.php:272
|
407 |
msgid "Attachment Tags"
|
408 |
msgstr ""
|
409 |
|
410 |
+
#: includes/class-mla-core-options.php:435
|
411 |
msgid "Check this option to add support for Attachment Tags."
|
412 |
msgstr ""
|
413 |
|
414 |
+
#: includes/class-mla-core-options.php:439 includes/class-mla-settings.php:1060
|
415 |
msgid "Where-used Reporting"
|
416 |
msgstr ""
|
417 |
|
418 |
+
#: includes/class-mla-core-options.php:444
|
419 |
msgid "Exclude Revisions"
|
420 |
msgstr ""
|
421 |
|
422 |
+
#: includes/class-mla-core-options.php:448
|
423 |
msgid "Check this option to exclude revisions from where-used reporting."
|
424 |
msgstr ""
|
425 |
|
426 |
+
#: includes/class-mla-core-options.php:452
|
427 |
msgid "Where-used database access tuning"
|
428 |
msgstr ""
|
429 |
|
430 |
+
#: includes/class-mla-core-options.php:457
|
431 |
+
#: includes/class-mla-edit-media.php:906 includes/class-mla-edit-media.php:1177
|
432 |
msgid "Featured in"
|
433 |
msgstr ""
|
434 |
|
435 |
+
#: includes/class-mla-core-options.php:462
|
436 |
+
#: includes/class-mla-core-options.php:472
|
437 |
msgid "Enabled"
|
438 |
msgstr ""
|
439 |
|
440 |
+
#: includes/class-mla-core-options.php:463
|
441 |
msgid "Search database posts and pages for Featured Image attachments."
|
442 |
msgstr ""
|
443 |
|
444 |
+
#: includes/class-mla-core-options.php:467
|
445 |
+
#: includes/class-mla-edit-media.php:910 includes/class-mla-edit-media.php:1215
|
446 |
msgid "Inserted in"
|
447 |
msgstr ""
|
448 |
|
449 |
+
#: includes/class-mla-core-options.php:472
|
450 |
msgid "Base"
|
451 |
msgstr ""
|
452 |
|
453 |
+
#: includes/class-mla-core-options.php:473
|
454 |
msgid ""
|
455 |
"Search database posts and pages for attachments embedded in content."
|
456 |
"<br> Base = ignore intermediate size suffixes; use path, base "
|
457 |
"name and extension only."
|
458 |
msgstr ""
|
459 |
|
460 |
+
#: includes/class-mla-core-options.php:477
|
461 |
+
#: includes/class-mla-edit-media.php:914 includes/class-mla-edit-media.php:1249
|
462 |
#: includes/class-mla-settings.php:1558
|
463 |
msgid "Gallery in"
|
464 |
msgstr ""
|
465 |
|
466 |
+
#: includes/class-mla-core-options.php:482
|
467 |
+
#: includes/class-mla-core-options.php:492
|
468 |
msgid "Dynamic"
|
469 |
msgstr ""
|
470 |
|
471 |
+
#: includes/class-mla-core-options.php:482
|
472 |
+
#: includes/class-mla-core-options.php:492 includes/class-mla-main.php:2442
|
473 |
#: includes/class-mla-settings-custom-fields-tab.php:764
|
474 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:902
|
475 |
msgid "Refresh"
|
476 |
msgstr ""
|
477 |
|
478 |
+
#: includes/class-mla-core-options.php:482
|
479 |
+
#: includes/class-mla-core-options.php:492
|
480 |
msgid "Cached"
|
481 |
msgstr ""
|
482 |
|
483 |
+
#: includes/class-mla-core-options.php:483
|
484 |
msgid ""
|
485 |
"Search database posts and pages for [ gallery ] shortcode results.<br> "
|
486 |
" Dynamic = once every page load, Cached = once every login, Disabled = "
|
487 |
"never.<br> Refresh = update references, then set to Cached."
|
488 |
msgstr ""
|
489 |
|
490 |
+
#: includes/class-mla-core-options.php:487
|
491 |
+
#: includes/class-mla-edit-media.php:918 includes/class-mla-edit-media.php:1283
|
492 |
#: includes/class-mla-settings.php:1568
|
493 |
msgid "MLA Gallery in"
|
494 |
msgstr ""
|
495 |
|
496 |
+
#: includes/class-mla-core-options.php:493
|
497 |
msgid ""
|
498 |
"Search database posts and pages for [mla_gallery] shortcode results."
|
499 |
"<br> Dynamic = once every page load, Cached = once every login, "
|
501 |
"Cached."
|
502 |
msgstr ""
|
503 |
|
504 |
+
#: includes/class-mla-core-options.php:497 includes/class-mla-settings.php:1060
|
505 |
msgid "Taxonomy Support"
|
506 |
msgstr ""
|
507 |
|
508 |
+
#: includes/class-mla-core-options.php:502
|
509 |
msgid "Compute Attachments Column"
|
510 |
msgstr ""
|
511 |
|
512 |
+
#: includes/class-mla-core-options.php:506
|
513 |
msgid ""
|
514 |
"Check this option to calculate attachments per term in the Attachments "
|
515 |
"Column."
|
516 |
msgstr ""
|
517 |
|
518 |
+
#: includes/class-mla-core-options.php:510
|
519 |
msgid "Show Count Column"
|
520 |
msgstr ""
|
521 |
|
522 |
+
#: includes/class-mla-core-options.php:514
|
523 |
msgid "Check this option to display the Count column on taxonomy edit screens."
|
524 |
msgstr ""
|
525 |
|
526 |
+
#: includes/class-mla-core-options.php:519
|
527 |
msgid ""
|
528 |
"Check the \"<strong>Support</strong>\" box to add the taxonomy to the "
|
529 |
"Assistant and the Edit Media screen."
|
530 |
msgstr ""
|
531 |
|
532 |
+
#: includes/class-mla-core-options.php:520
|
533 |
msgid ""
|
534 |
"Check the \"<strong>Inline Edit</strong>\" box to display the taxonomy in "
|
535 |
"the Quick Edit and Bulk Edit areas."
|
536 |
msgstr ""
|
537 |
|
538 |
+
#: includes/class-mla-core-options.php:521
|
539 |
msgid ""
|
540 |
"Check the \"<strong>Term Search</strong>\" box to add the taxonomy to the "
|
541 |
"\"Search Media/Terms\" list."
|
542 |
msgstr ""
|
543 |
|
544 |
+
#: includes/class-mla-core-options.php:522
|
545 |
+
#: includes/class-mla-core-options.php:760
|
546 |
+
#: includes/class-mla-core-options.php:769 includes/class-mla-settings.php:1093
|
547 |
#: includes/class-mla-settings.php:1094 includes/class-mla-settings.php:1095
|
548 |
msgid "For complete documentation"
|
549 |
msgstr ""
|
550 |
|
551 |
+
#: includes/class-mla-core-options.php:522
|
552 |
+
#: includes/class-mla-core-options.php:760
|
553 |
+
#: includes/class-mla-core-options.php:769 includes/class-mla-settings.php:1093
|
554 |
#: includes/class-mla-settings.php:1094 includes/class-mla-settings.php:1095
|
555 |
msgid "click here"
|
556 |
msgstr ""
|
557 |
|
558 |
+
#: includes/class-mla-core-options.php:524
|
559 |
msgid ""
|
560 |
"Check the \"<strong>Checklist</strong>\" box to enable the checklist-style "
|
561 |
"meta box for a flat taxonomy."
|
562 |
msgstr ""
|
563 |
|
564 |
+
#: includes/class-mla-core-options.php:525
|
565 |
msgid ""
|
566 |
"You must also check the <strong>\"Enable enhanced checklist taxonomies\"</"
|
567 |
"strong> box below to enable this feature."
|
568 |
msgstr ""
|
569 |
|
570 |
+
#: includes/class-mla-core-options.php:526
|
571 |
msgid ""
|
572 |
"Check the \"<strong>Checked On Top</strong>\" box to move checked terms to "
|
573 |
"the top of the checklist-style meta box."
|
574 |
msgstr ""
|
575 |
|
576 |
+
#: includes/class-mla-core-options.php:527
|
577 |
msgid ""
|
578 |
"Check the \"<strong>Inline Add Term</strong>\" box to support adding terms "
|
579 |
"in the Quick Edit and Bulk Edit areas."
|
580 |
msgstr ""
|
581 |
|
582 |
+
#: includes/class-mla-core-options.php:528
|
583 |
msgid ""
|
584 |
"Use the \"<strong>List Filter</strong>\" option to select the taxonomy (or "
|
585 |
"custom field) on which to filter the Assistant table listing."
|
586 |
msgstr ""
|
587 |
|
588 |
+
#: includes/class-mla-core-options.php:529
|
589 |
msgid ""
|
590 |
"To <strong>filter on a custom field</strong>, enter the field name and "
|
591 |
"select ASC (Ascending) or DESC (Descending) order."
|
592 |
msgstr ""
|
593 |
|
594 |
+
#: includes/class-mla-core-options.php:558
|
595 |
msgid "Media/Assistant Screen Options"
|
596 |
msgstr ""
|
597 |
|
598 |
+
#: includes/class-mla-core-options.php:563
|
599 |
msgid "Admin Menu Options"
|
600 |
msgstr ""
|
601 |
|
602 |
+
#: includes/class-mla-core-options.php:568
|
603 |
msgid "Page Title"
|
604 |
msgstr ""
|
605 |
|
606 |
+
#: includes/class-mla-core-options.php:573
|
607 |
msgid "Enter the title for the Media/Assistant submenu page"
|
608 |
msgstr ""
|
609 |
|
610 |
+
#: includes/class-mla-core-options.php:577
|
611 |
msgid "Menu Title"
|
612 |
msgstr ""
|
613 |
|
614 |
+
#: includes/class-mla-core-options.php:582
|
615 |
msgid "Enter the title for the Media/Assistant submenu entry"
|
616 |
msgstr ""
|
617 |
|
618 |
+
#: includes/class-mla-core-options.php:586
|
619 |
msgid "Submenu Order"
|
620 |
msgstr ""
|
621 |
|
622 |
+
#: includes/class-mla-core-options.php:591
|
623 |
msgid ""
|
624 |
"Enter the position of the Media/Assistant submenu entry.<br> 0 = "
|
625 |
"natural order (at bottom), 1 - 4 = at top<br> "
|
627 |
"\""
|
628 |
msgstr ""
|
629 |
|
630 |
+
#: includes/class-mla-core-options.php:595
|
631 |
msgid "Display Media/Library"
|
632 |
msgstr ""
|
633 |
|
634 |
+
#: includes/class-mla-core-options.php:599
|
635 |
msgid ""
|
636 |
"Check/uncheck this option to display/remove the WordPress Media/Library "
|
637 |
"submenu entry."
|
638 |
msgstr ""
|
639 |
|
640 |
+
#: includes/class-mla-core-options.php:603
|
641 |
msgid "Display Media/Assistant list/grid view switcher"
|
642 |
msgstr ""
|
643 |
|
644 |
+
#: includes/class-mla-core-options.php:607
|
645 |
msgid ""
|
646 |
"Check/uncheck this option to display/remove the \"list/grid\" view switcher "
|
647 |
"on the Media/Assistant submenu."
|
648 |
msgstr ""
|
649 |
|
650 |
+
#: includes/class-mla-core-options.php:611
|
651 |
msgid "Table Defaults"
|
652 |
msgstr ""
|
653 |
|
654 |
+
#: includes/class-mla-core-options.php:616
|
655 |
msgid "Order By"
|
656 |
msgstr ""
|
657 |
|
658 |
+
#: includes/class-mla-core-options.php:621
|
659 |
msgid "ID/Parent"
|
660 |
msgstr ""
|
661 |
|
662 |
+
#: includes/class-mla-core-options.php:622
|
663 |
msgid "Select the column for the sort order of the Assistant table listing."
|
664 |
msgstr ""
|
665 |
|
666 |
+
#: includes/class-mla-core-options.php:626
|
667 |
msgid "Order"
|
668 |
msgstr ""
|
669 |
|
670 |
+
#: includes/class-mla-core-options.php:631
|
671 |
msgid "Ascending"
|
672 |
msgstr ""
|
673 |
|
674 |
+
#: includes/class-mla-core-options.php:631
|
675 |
msgid "Descending"
|
676 |
msgstr ""
|
677 |
|
678 |
+
#: includes/class-mla-core-options.php:632
|
679 |
+
#: includes/class-mla-core-options.php:897
|
680 |
msgid "Choose the sort order."
|
681 |
msgstr ""
|
682 |
|
683 |
+
#: includes/class-mla-core-options.php:636 includes/class-mla-main.php:630
|
684 |
msgid "Entries per page"
|
685 |
msgstr ""
|
686 |
|
687 |
+
#: includes/class-mla-core-options.php:640
|
688 |
msgid "Enter the number of Media/Assistant submenu table items per page."
|
689 |
msgstr ""
|
690 |
|
691 |
+
#: includes/class-mla-core-options.php:649
|
692 |
msgid "Views Width"
|
693 |
msgstr ""
|
694 |
|
695 |
+
#: includes/class-mla-core-options.php:654
|
696 |
msgid "Enter the width for the views list, in pixels (px) or percent (%)"
|
697 |
msgstr ""
|
698 |
|
699 |
+
#: includes/class-mla-core-options.php:658
|
700 |
msgid "Icon Size"
|
701 |
msgstr ""
|
702 |
|
703 |
+
#: includes/class-mla-core-options.php:663
|
704 |
msgid "Enter the size of the thumbnail/icon images, in pixels"
|
705 |
msgstr ""
|
706 |
|
707 |
+
#: includes/class-mla-core-options.php:667
|
708 |
msgid "Show Primary Column File Name"
|
709 |
msgstr ""
|
710 |
|
711 |
+
#: includes/class-mla-core-options.php:671
|
712 |
msgid ""
|
713 |
"Check/uncheck this option to show/omit the file name from the primary column."
|
714 |
msgstr ""
|
715 |
|
716 |
+
#: includes/class-mla-core-options.php:675
|
717 |
msgid "QuickTags editor for bulk description"
|
718 |
msgstr ""
|
719 |
|
720 |
+
#: includes/class-mla-core-options.php:679
|
721 |
msgid ""
|
722 |
"Check this option to use the QuickTags editor for the Description field in "
|
723 |
"the Bulk Edit area."
|
724 |
msgstr ""
|
725 |
|
726 |
+
#: includes/class-mla-core-options.php:683
|
727 |
msgid "Bulk Chunk Size"
|
728 |
msgstr ""
|
729 |
|
730 |
+
#: includes/class-mla-core-options.php:688
|
731 |
msgid "Enter the size of the Bulk Edit and Map All processing chunks"
|
732 |
msgstr ""
|
733 |
|
734 |
+
#: includes/class-mla-core-options.php:692
|
735 |
msgid "Taxonomy Filter parameters"
|
736 |
msgstr ""
|
737 |
|
738 |
+
#: includes/class-mla-core-options.php:697
|
739 |
msgid "Maximum Depth"
|
740 |
msgstr ""
|
741 |
|
742 |
+
#: includes/class-mla-core-options.php:702
|
743 |
msgid ""
|
744 |
"Enter the number of levels displayed for hierarchial taxonomies; enter zero "
|
745 |
"for no limit."
|
746 |
msgstr ""
|
747 |
|
748 |
+
#: includes/class-mla-core-options.php:706
|
749 |
msgid "Include Children"
|
750 |
msgstr ""
|
751 |
|
752 |
+
#: includes/class-mla-core-options.php:710
|
753 |
msgid ""
|
754 |
"Check/uncheck this option to include/exclude children for hierarchical "
|
755 |
"taxonomies."
|
756 |
msgstr ""
|
757 |
|
758 |
+
#: includes/class-mla-core-options.php:714
|
759 |
msgid "Search Media Defaults"
|
760 |
msgstr ""
|
761 |
|
762 |
+
#: includes/class-mla-core-options.php:719
|
763 |
msgid "Display Search Controls"
|
764 |
msgstr ""
|
765 |
|
766 |
+
#: includes/class-mla-core-options.php:723
|
767 |
+
#: includes/class-mla-core-options.php:858
|
768 |
msgid ""
|
769 |
"Check/uncheck this option to display/hide the and/or connector and search "
|
770 |
"fields controls."
|
771 |
msgstr ""
|
772 |
|
773 |
+
#: includes/class-mla-core-options.php:727
|
774 |
msgid ""
|
775 |
"Use these controls to set defaults for the and/or connector and search "
|
776 |
"fields controls.<br>These defaults will be used for the Search Media boxes "
|
777 |
"on both the Media/Assistant submenu<br>and the Media Manager Modal Window."
|
778 |
msgstr ""
|
779 |
|
780 |
+
#: includes/class-mla-core-options.php:741
|
781 |
msgid "Media/Edit Media Enhancements"
|
782 |
msgstr ""
|
783 |
|
784 |
+
#: includes/class-mla-core-options.php:746
|
785 |
msgid "Enable "enhanced checklist" taxonomies"
|
786 |
msgstr ""
|
787 |
|
788 |
+
#: includes/class-mla-core-options.php:750
|
789 |
msgid ""
|
790 |
"Check this option to enable the \"? Search\" feature for hierarchical "
|
791 |
"taxonomies, e.g., Att. Categories.<br> This option also enables "
|
792 |
"the \"checklist-style\" support for flat taxonomies, e.g., Att. Tags."
|
793 |
msgstr ""
|
794 |
|
795 |
+
#: includes/class-mla-core-options.php:754
|
796 |
msgid "Enable Edit Media additional meta boxes"
|
797 |
msgstr ""
|
798 |
|
799 |
+
#: includes/class-mla-core-options.php:758
|
800 |
msgid ""
|
801 |
"Check this option to add \"Parent Info\", \"Menu Order\", \"Attachment "
|
802 |
+
"Metadata\", \"Attachment File Metadata\" and four \"where-used\" meta boxes "
|
803 |
+
"to the Edit Media screen."
|
804 |
msgstr ""
|
805 |
|
806 |
+
#: includes/class-mla-core-options.php:759
|
807 |
msgid "You can also use Filters to customize the meta boxes."
|
808 |
msgstr ""
|
809 |
|
810 |
+
#: includes/class-mla-core-options.php:764
|
811 |
+
msgid "Enable File Attachment Metadata meta box"
|
812 |
+
msgstr ""
|
813 |
+
|
814 |
+
#: includes/class-mla-core-options.php:768
|
815 |
+
msgid ""
|
816 |
+
"Check this option to enable the \"Attachment File Metadata\" meta box on "
|
817 |
+
"the Edit Media screen."
|
818 |
+
msgstr ""
|
819 |
+
|
820 |
+
#: includes/class-mla-core-options.php:773
|
821 |
msgid "Media/Add New Enhancements"
|
822 |
msgstr ""
|
823 |
|
824 |
+
#: includes/class-mla-core-options.php:778
|
825 |
msgid "Enable "bulk edit" area"
|
826 |
msgstr ""
|
827 |
|
828 |
+
#: includes/class-mla-core-options.php:782
|
829 |
msgid ""
|
830 |
"Check this option to enable the \"Bulk Edit area\" feature on the Media/Add "
|
831 |
"New screen."
|
832 |
msgstr ""
|
833 |
|
834 |
+
#: includes/class-mla-core-options.php:786
|
835 |
msgid ""bulk edit" area on top"
|
836 |
msgstr ""
|
837 |
|
838 |
+
#: includes/class-mla-core-options.php:790
|
839 |
msgid ""
|
840 |
"Check this option to move the \"Bulk Edit area\" to the top of the Media/Add "
|
841 |
"New screen."
|
842 |
msgstr ""
|
843 |
|
844 |
+
#: includes/class-mla-core-options.php:794
|
845 |
msgid ""bulk edit" area initially open"
|
846 |
msgstr ""
|
847 |
|
848 |
+
#: includes/class-mla-core-options.php:797
|
849 |
msgid ""
|
850 |
"Check this option to automatically open the \"Bulk Edit area\" when the "
|
851 |
"Media/Add New screen is displayed."
|
852 |
msgstr ""
|
853 |
|
854 |
+
#: includes/class-mla-core-options.php:801
|
855 |
msgid "Media Manager/Media Grid Enhancements"
|
856 |
msgstr ""
|
857 |
|
858 |
+
#: includes/class-mla-core-options.php:806
|
859 |
msgid "Enable Media Grid Enhancements"
|
860 |
msgstr ""
|
861 |
|
862 |
+
#: includes/class-mla-core-options.php:809
|
863 |
msgid ""
|
864 |
"Check/uncheck this option to enable/disable Media Library Grid View "
|
865 |
"Enhancements."
|
866 |
msgstr ""
|
867 |
|
868 |
+
#: includes/class-mla-core-options.php:813
|
869 |
msgid "Enable Media Manager Enhancements"
|
870 |
msgstr ""
|
871 |
|
872 |
+
#: includes/class-mla-core-options.php:816
|
873 |
msgid ""
|
874 |
"Check/uncheck this option to enable/disable Media Manager Modal Window "
|
875 |
"Enhancements."
|
876 |
msgstr ""
|
877 |
|
878 |
+
#: includes/class-mla-core-options.php:820
|
879 |
msgid "Media Manager Enhanced MIME Type filter"
|
880 |
msgstr ""
|
881 |
|
882 |
+
#: includes/class-mla-core-options.php:823
|
883 |
msgid ""
|
884 |
"Check this option to filter by more MIME Types, e.g., text, applications."
|
885 |
msgstr ""
|
886 |
|
887 |
+
#: includes/class-mla-core-options.php:827
|
888 |
msgid "Media Manager Month and Year filter"
|
889 |
msgstr ""
|
890 |
|
891 |
+
#: includes/class-mla-core-options.php:830
|
892 |
msgid "Check this option to filter by month and year uploaded."
|
893 |
msgstr ""
|
894 |
|
895 |
+
#: includes/class-mla-core-options.php:834
|
896 |
msgid "Media Manager Category/Tag filter"
|
897 |
msgstr ""
|
898 |
|
899 |
+
#: includes/class-mla-core-options.php:837
|
900 |
msgid "Check this option to filter by taxonomy terms."
|
901 |
msgstr ""
|
902 |
|
903 |
+
#: includes/class-mla-core-options.php:841
|
904 |
msgid "Media Manager Terms Search popup"
|
905 |
msgstr ""
|
906 |
|
907 |
+
#: includes/class-mla-core-options.php:844
|
908 |
msgid "Check this option to enable the \"Terms Search\" popup window."
|
909 |
msgstr ""
|
910 |
|
911 |
+
#: includes/class-mla-core-options.php:848
|
912 |
msgid "Media Manager Enhanced Search Media box"
|
913 |
msgstr ""
|
914 |
|
915 |
+
#: includes/class-mla-core-options.php:851
|
916 |
msgid "Check this option to enable search box enhancements."
|
917 |
msgstr ""
|
918 |
|
919 |
+
#: includes/class-mla-core-options.php:855
|
920 |
msgid "Media Manager Enhanced Search Media Controls"
|
921 |
msgstr ""
|
922 |
|
923 |
+
#: includes/class-mla-core-options.php:862
|
924 |
msgid "Media Manager Checklist meta boxes"
|
925 |
msgstr ""
|
926 |
|
927 |
+
#: includes/class-mla-core-options.php:865
|
928 |
msgid ""
|
929 |
"Check this option to enable MLA-enhanced meta boxes in the \"ATTACHMENT "
|
930 |
"DETAILS\" pane.<br> This option is for any taxonomy that uses a "
|
931 |
"<strong>\"checklist-style\"</strong> meta box."
|
932 |
msgstr ""
|
933 |
|
934 |
+
#: includes/class-mla-core-options.php:869
|
935 |
msgid "Media Manager Flat meta boxes"
|
936 |
msgstr ""
|
937 |
|
938 |
+
#: includes/class-mla-core-options.php:872
|
939 |
msgid ""
|
940 |
"Check this option to enable MLA-enhanced meta boxes in the \"ATTACHMENT "
|
941 |
"DETAILS\" pane.<br> This option is for <strong>flat taxonomies</"
|
943 |
"style\" meta box."
|
944 |
msgstr ""
|
945 |
|
946 |
+
#: includes/class-mla-core-options.php:876
|
947 |
msgid "Media Manager auto-fill meta boxes"
|
948 |
msgstr ""
|
949 |
|
950 |
+
#: includes/class-mla-core-options.php:879
|
951 |
msgid ""
|
952 |
"Check this option to automatically fill MLA-enhanced meta boxes in the "
|
953 |
"\"ATTACHMENT DETAILS\" pane<br> when the item is selected."
|
954 |
msgstr ""
|
955 |
|
956 |
+
#: includes/class-mla-core-options.php:883
|
957 |
msgid "Media Manager Order By"
|
958 |
msgstr ""
|
959 |
|
960 |
+
#: includes/class-mla-core-options.php:887
|
961 |
+
#: includes/class-mla-core-options.php:896
|
|
|
962 |
#: includes/class-mla-core-options.php:918
|
963 |
+
#: includes/class-mla-core-options.php:932
|
964 |
+
#: includes/class-mla-core-options.php:946 includes/class-mla-settings.php:1144
|
965 |
msgid "Media Manager Default"
|
966 |
msgstr ""
|
967 |
|
968 |
+
#: includes/class-mla-core-options.php:887
|
969 |
msgid "Title/Name"
|
970 |
msgstr ""
|
971 |
|
972 |
+
#: includes/class-mla-core-options.php:888
|
973 |
msgid ""
|
974 |
"If you want to override the Media Manager default,<br> select a "
|
975 |
"column for the sort order of the Media Library listing."
|
976 |
msgstr ""
|
977 |
|
978 |
+
#: includes/class-mla-core-options.php:892
|
979 |
msgid "Media Manager Order"
|
980 |
msgstr ""
|
981 |
|
982 |
+
#: includes/class-mla-core-options.php:901
|
983 |
msgid "Attachment Display Settings"
|
984 |
msgstr ""
|
985 |
|
986 |
+
#: includes/class-mla-core-options.php:906
|
987 |
msgid "Media Manager Apply Display Settings"
|
988 |
msgstr ""
|
989 |
|
990 |
+
#: includes/class-mla-core-options.php:909
|
991 |
msgid ""
|
992 |
"Check this option to always start with the Attachment Display Settings set "
|
993 |
"here,<br> overriding browser-/cookie-based defaults."
|
994 |
msgstr ""
|
995 |
|
996 |
+
#: includes/class-mla-core-options.php:913
|
997 |
+
#: includes/class-mla-core-options.php:915
|
998 |
msgid "Alignment"
|
999 |
msgstr ""
|
1000 |
|
|
|
1001 |
#: includes/class-mla-core-options.php:915
|
1002 |
#: includes/class-mla-core-options.php:929
|
1003 |
+
#: includes/class-mla-core-options.php:943
|
1004 |
#, php-format
|
1005 |
msgid ""
|
1006 |
"Select a value for the default %1$s option in the Attachment Display "
|
1007 |
"Settings."
|
1008 |
msgstr ""
|
1009 |
|
1010 |
+
#: includes/class-mla-core-options.php:918
|
1011 |
msgid "Left"
|
1012 |
msgstr ""
|
1013 |
|
1014 |
+
#: includes/class-mla-core-options.php:918
|
1015 |
msgid "Center"
|
1016 |
msgstr ""
|
1017 |
|
1018 |
+
#: includes/class-mla-core-options.php:918
|
1019 |
msgid "Right"
|
1020 |
msgstr ""
|
1021 |
|
1022 |
+
#: includes/class-mla-core-options.php:927
|
1023 |
+
#: includes/class-mla-core-options.php:929
|
1024 |
msgid "Link To"
|
1025 |
msgstr ""
|
1026 |
|
1027 |
+
#: includes/class-mla-core-options.php:932
|
1028 |
msgid "Media File"
|
1029 |
msgstr ""
|
1030 |
|
1031 |
+
#: includes/class-mla-core-options.php:932
|
1032 |
msgid "Attachment Page"
|
1033 |
msgstr ""
|
1034 |
|
1035 |
+
#: includes/class-mla-core-options.php:932
|
1036 |
msgid "Custom URL"
|
1037 |
msgstr ""
|
1038 |
|
1039 |
+
#: includes/class-mla-core-options.php:941
|
1040 |
+
#: includes/class-mla-core-options.php:943
|
1041 |
msgid "Size"
|
1042 |
msgstr ""
|
1043 |
|
1044 |
+
#: includes/class-mla-core-options.php:946
|
1045 |
#: includes/class-mla-thumbnail-generation.php:591
|
1046 |
#: includes/class-mla-thumbnail-generation.php:655
|
1047 |
msgid "Thumbnail"
|
1048 |
msgstr ""
|
1049 |
|
1050 |
+
#: includes/class-mla-core-options.php:946
|
1051 |
msgid "Medium"
|
1052 |
msgstr ""
|
1053 |
|
1054 |
+
#: includes/class-mla-core-options.php:946
|
1055 |
msgid "Large"
|
1056 |
msgstr ""
|
1057 |
|
1058 |
+
#: includes/class-mla-core-options.php:946
|
1059 |
msgid "Full Size"
|
1060 |
msgstr ""
|
1061 |
|
1062 |
+
#: includes/class-mla-core-options.php:955
|
1063 |
msgid "Uninstall (Delete) Plugin Settings"
|
1064 |
msgstr ""
|
1065 |
|
1066 |
+
#: includes/class-mla-core-options.php:960
|
1067 |
msgid "Delete Option Settings"
|
1068 |
msgstr ""
|
1069 |
|
1070 |
+
#: includes/class-mla-core-options.php:963
|
1071 |
msgid ""
|
1072 |
"Check this option to remove all MLA option settings from the database when "
|
1073 |
"the plugin is deleted.<br> <strong>You can make a backup copy</"
|
1074 |
"strong> of your settings below by clicking \""
|
1075 |
msgstr ""
|
1076 |
|
1077 |
+
#: includes/class-mla-core-options.php:963 includes/class-mla-settings.php:1062
|
1078 |
msgid "Export ALL Settings"
|
1079 |
msgstr ""
|
1080 |
|
1081 |
+
#: includes/class-mla-core-options.php:967
|
1082 |
msgid "Delete Option Settings Backups"
|
1083 |
msgstr ""
|
1084 |
|
1085 |
+
#: includes/class-mla-core-options.php:970
|
1086 |
msgid ""
|
1087 |
"Check this option to remove the <code>/wp-content/mla-backup</code> "
|
1088 |
"directory and its contents when the plugin is deleted."
|
1089 |
msgstr ""
|
1090 |
|
1091 |
+
#: includes/class-mla-core-options.php:974
|
1092 |
msgid "Default [mla_gallery] Templates and Settings"
|
1093 |
msgstr ""
|
1094 |
|
1095 |
+
#: includes/class-mla-core-options.php:979
|
1096 |
+
#: includes/class-mla-core-options.php:985
|
1097 |
+
#: includes/class-mla-core-options.php:1023
|
1098 |
+
#: includes/class-mla-core-options.php:1029
|
1099 |
msgid "Style Template"
|
1100 |
msgstr ""
|
1101 |
|
1102 |
+
#: includes/class-mla-core-options.php:985
|
1103 |
+
#: includes/class-mla-core-options.php:995
|
1104 |
+
#: includes/class-mla-core-options.php:1029
|
1105 |
+
#: includes/class-mla-core-options.php:1039
|
1106 |
#, php-format
|
1107 |
msgid "Select the default %1$s for your %2$s shortcodes."
|
1108 |
msgstr ""
|
1109 |
|
1110 |
+
#: includes/class-mla-core-options.php:989
|
1111 |
+
#: includes/class-mla-core-options.php:1033
|
1112 |
msgid "Markup Template"
|
1113 |
msgstr ""
|
1114 |
|
1115 |
+
#: includes/class-mla-core-options.php:995
|
1116 |
+
#: includes/class-mla-core-options.php:1039
|
1117 |
#: includes/class-mla-settings-shortcodes-tab.php:108
|
1118 |
msgid "markup template"
|
1119 |
msgstr ""
|
1120 |
|
1121 |
+
#: includes/class-mla-core-options.php:999
|
1122 |
+
#: includes/class-mla-core-options.php:1043
|
1123 |
msgid "Default columns"
|
1124 |
msgstr ""
|
1125 |
|
1126 |
+
#: includes/class-mla-core-options.php:1003
|
1127 |
msgid ""
|
1128 |
"Enter the number of [mla_tag_cloud] columns; must be a positive integer."
|
1129 |
msgstr ""
|
1130 |
|
1131 |
+
#: includes/class-mla-core-options.php:1007
|
1132 |
+
#: includes/class-mla-core-options.php:1051
|
1133 |
msgid "Default mla_margin"
|
1134 |
msgstr ""
|
1135 |
|
1136 |
+
#: includes/class-mla-core-options.php:1011
|
1137 |
+
#: includes/class-mla-core-options.php:1055
|
1138 |
msgid ""
|
1139 |
"Enter the CSS \"margin\" property value, in length (px, em, pt, etc.), "
|
1140 |
"percent (%), \"auto\" or \"inherit\".<br> Enter \"none\" to "
|
1141 |
"remove the property entirely."
|
1142 |
msgstr ""
|
1143 |
|
1144 |
+
#: includes/class-mla-core-options.php:1015
|
1145 |
+
#: includes/class-mla-core-options.php:1059
|
1146 |
msgid "Default mla_itemwidth"
|
1147 |
msgstr ""
|
1148 |
|
1149 |
+
#: includes/class-mla-core-options.php:1019
|
1150 |
+
#: includes/class-mla-core-options.php:1063
|
1151 |
msgid ""
|
1152 |
"Enter the CSS \"width\" property value, in length (px, em, pt, etc.), "
|
1153 |
"percent (%), \"auto\" or \"inherit\".<br> Enter \"calculate"
|
1157 |
"the property entirely."
|
1158 |
msgstr ""
|
1159 |
|
1160 |
+
#: includes/class-mla-core-options.php:1047
|
1161 |
msgid "Enter the number of [mla_gallery] columns; must be a positive integer."
|
1162 |
msgstr ""
|
1163 |
|
1164 |
+
#: includes/class-mla-core-options.php:1067
|
1165 |
msgid "Thumbnail Substitution Support, mla_viewer"
|
1166 |
msgstr ""
|
1167 |
|
1168 |
+
#: includes/class-mla-core-options.php:1072
|
1169 |
msgid "Enable thumbnail substitution"
|
1170 |
msgstr ""
|
1171 |
|
1172 |
+
#: includes/class-mla-core-options.php:1075
|
1173 |
msgid ""
|
1174 |
"Check this option to allow the \"mla_viewer\" to generate thumbnail images "
|
1175 |
"for PDF documents. Thumbnails are generated dynamically, each time the item "
|
1178 |
"strong>"
|
1179 |
msgstr ""
|
1180 |
|
1181 |
+
#: includes/class-mla-core-options.php:1079
|
1182 |
msgid "Enable Featured Images"
|
1183 |
msgstr ""
|
1184 |
|
1185 |
+
#: includes/class-mla-core-options.php:1082
|
1186 |
msgid ""
|
1187 |
"Check this option to extend Featured Image support to all Media Library "
|
1188 |
"items. The Featured Image can be used as a thumbnail image for the item in "
|
1189 |
"an [mla_gallery] display."
|
1190 |
msgstr ""
|
1191 |
|
1192 |
+
#: includes/class-mla-core-options.php:1086
|
1193 |
msgid "Enable Featured Image Generation"
|
1194 |
msgstr ""
|
1195 |
|
1196 |
+
#: includes/class-mla-core-options.php:1089
|
1197 |
msgid ""
|
1198 |
"Check this option to enable the \"Thumbnail\" generation action in the Media/"
|
1199 |
"Assistant submenu Bulk Actions dropdown."
|
1200 |
msgstr ""
|
1201 |
|
1202 |
+
#: includes/class-mla-core-options.php:1093
|
1203 |
msgid "Enable explicit Ghostscript check"
|
1204 |
msgstr ""
|
1205 |
|
1206 |
+
#: includes/class-mla-core-options.php:1096
|
1207 |
msgid ""
|
1208 |
"Check this option to enable the explicit check for Ghostscript support "
|
1209 |
"required for thumbnail generation. If your Ghostscript software is in a non-"
|
1212 |
"leave this option checked unless you know it is safe to turn it off."
|
1213 |
msgstr ""
|
1214 |
|
1215 |
+
#: includes/class-mla-core-options.php:1100
|
1216 |
msgid "Ghostscript path"
|
1217 |
msgstr ""
|
1218 |
|
1219 |
+
#: includes/class-mla-core-options.php:1104
|
1220 |
msgid ""
|
1221 |
"If your “gs” executable is in a non-standard location, enter the "
|
1222 |
"full path and filename here, e.g., “/usr/bin/gs”. It will "
|
1223 |
"override the search for Ghostscript in other places."
|
1224 |
msgstr ""
|
1225 |
|
1226 |
+
#: includes/class-mla-core-options.php:1124
|
1227 |
msgid "Enable custom field mapping"
|
1228 |
msgstr ""
|
1229 |
|
|
|
|
|
1230 |
#: includes/class-mla-core-options.php:1127
|
1231 |
+
#: includes/class-mla-core-options.php:1134
|
1232 |
+
#: includes/class-mla-core-options.php:1141
|
1233 |
+
#: includes/class-mla-core-options.php:1158
|
1234 |
msgid "See Help menu."
|
1235 |
msgstr ""
|
1236 |
|
1237 |
+
#: includes/class-mla-core-options.php:1131
|
1238 |
msgid "Enable custom field mapping when adding new media"
|
1239 |
msgstr ""
|
1240 |
|
1241 |
+
#: includes/class-mla-core-options.php:1138
|
1242 |
msgid "Enable custom field mapping when updating media metadata"
|
1243 |
msgstr ""
|
1244 |
|
1245 |
+
#: includes/class-mla-core-options.php:1145
|
1246 |
msgid ""
|
1247 |
"Update the custom field mapping values above, then click Save Changes to "
|
1248 |
"make the updates permanent.<br>You can also make temporary updates and click "
|
1250 |
"saving any rule changes."
|
1251 |
msgstr ""
|
1252 |
|
1253 |
+
#: includes/class-mla-core-options.php:1155
|
1254 |
msgid "Enable IPTC/EXIF Mapping"
|
1255 |
msgstr ""
|
1256 |
|
1257 |
+
#: includes/class-mla-core-options.php:1162
|
1258 |
msgid "Enable IPTC/EXIF Mapping when adding new media"
|
1259 |
msgstr ""
|
1260 |
|
1261 |
+
#: includes/class-mla-core-options.php:1165
|
1262 |
msgid ""
|
1263 |
"Check this option to enable mapping when uploading new media (attachments)."
|
1264 |
"<br> Does NOT affect the operation of the \"Map\" buttons on the "
|
1265 |
"bulk edit, single edit and settings screens."
|
1266 |
msgstr ""
|
1267 |
|
1268 |
+
#: includes/class-mla-core-options.php:1169
|
1269 |
msgid "Enable IPTC/EXIF Mapping when updating media metadata"
|
1270 |
msgstr ""
|
1271 |
|
1272 |
+
#: includes/class-mla-core-options.php:1172
|
1273 |
msgid ""
|
1274 |
"Check this option to enable mapping when media (attachments) metadata is "
|
1275 |
"regenerated,<br> e.g., when the Media/Edit Media \"Edit Image\" "
|
1276 |
"functions are used."
|
1277 |
msgstr ""
|
1278 |
|
1279 |
+
#: includes/class-mla-core-options.php:1176
|
1280 |
msgid ""
|
1281 |
"Update the standard field mapping values above, then click <strong>Save "
|
1282 |
"Changes</strong> to make the updates permanent.<br>You can also make "
|
1285 |
"changes."
|
1286 |
msgstr ""
|
1287 |
|
1288 |
+
#: includes/class-mla-core-options.php:1186
|
1289 |
msgid ""
|
1290 |
"Update the taxonomy term mapping values above, then click <strong>Save "
|
1291 |
"Changes</strong> or <strong>Map All Attachments, Taxonomy Terms Now</strong>."
|
1292 |
msgstr ""
|
1293 |
|
1294 |
+
#: includes/class-mla-core-options.php:1196
|
1295 |
msgid ""
|
1296 |
"<strong>Update</strong> individual custom field mapping values above, or "
|
1297 |
"make several updates and click <strong>Save Changes</strong> below to apply "
|
1302 |
"changes."
|
1303 |
msgstr ""
|
1304 |
|
1305 |
+
#: includes/class-mla-core-options.php:1206
|
1306 |
msgid "IPTC/EXIF Mapping help"
|
1307 |
msgstr ""
|
1308 |
|
1309 |
+
#: includes/class-mla-core-options.php:1217 includes/class-mla-data.php:4432
|
1310 |
+
#: includes/class-mla-edit-media.php:481 includes/class-mla-main.php:2408
|
1311 |
msgid "Name/Slug"
|
1312 |
msgstr ""
|
1313 |
|
1314 |
+
#: includes/class-mla-core-options.php:1224 includes/class-mla-data.php:4475
|
1315 |
#: includes/class-mla-edit-media.php:484 includes/class-mla-list-table.php:1429
|
1316 |
+
#: includes/class-mla-main.php:2412 includes/class-mla-options.php:472
|
1317 |
#: includes/mla-main-search-box-template.php:51
|
1318 |
#: includes/mla-media-modal-js-template.php:46
|
1319 |
msgid "ALT Text"
|
1320 |
msgstr ""
|
1321 |
|
1322 |
+
#: includes/class-mla-core-options.php:1231 includes/class-mla-data.php:4488
|
1323 |
+
#: includes/class-mla-edit-media.php:482 includes/class-mla-main.php:2409
|
1324 |
#: includes/class-mla-options.php:475
|
1325 |
#: includes/mla-main-search-box-template.php:53
|
1326 |
#: includes/mla-media-modal-js-template.php:51
|
1327 |
msgid "Caption"
|
1328 |
msgstr ""
|
1329 |
|
1330 |
+
#: includes/class-mla-core-options.php:1238 includes/class-mla-data.php:4497
|
1331 |
+
#: includes/class-mla-edit-media.php:483 includes/class-mla-main.php:2410
|
1332 |
#: includes/class-mla-options.php:478
|
1333 |
#: includes/class-mla-settings-custom-fields-tab.php:480
|
1334 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:533
|
1335 |
#: includes/class-mla-settings-upload-tab.php:199
|
1336 |
#: includes/class-mla-settings-upload-tab.php:543
|
1337 |
#: includes/class-mla-settings-view-tab.php:128
|
1347 |
msgid "Description"
|
1348 |
msgstr ""
|
1349 |
|
1350 |
+
#: includes/class-mla-core-options.php:1245 includes/class-mla-data.php:4559
|
1351 |
+
#: includes/class-mla-data.php:4568 includes/class-mla-edit-media.php:485
|
1352 |
+
#: includes/class-mla-edit-media.php:749 includes/class-mla-main.php:2414
|
1353 |
msgid "Uploaded on"
|
1354 |
msgstr ""
|
1355 |
|
1356 |
+
#: includes/class-mla-core-options.php:1265
|
1357 |
msgid "Enable View and Post MIME Type Support"
|
1358 |
msgstr ""
|
1359 |
|
1360 |
+
#: includes/class-mla-core-options.php:1268
|
1361 |
msgid ""
|
1362 |
"Check/uncheck this option to enable/disable Post MIME Type Support, then "
|
1363 |
"click <strong>Save Changes</strong> to record the new setting."
|
1364 |
msgstr ""
|
1365 |
|
1366 |
+
#: includes/class-mla-core-options.php:1277
|
1367 |
msgid "Post MIME Types help."
|
1368 |
msgstr ""
|
1369 |
|
1370 |
+
#: includes/class-mla-core-options.php:1280
|
1371 |
#: includes/class-mla-mime-types.php:1696
|
1372 |
#: includes/class-mla-settings-custom-fields-tab.php:2501
|
1373 |
#: includes/class-mla-settings-documentation-tab.php:1545
|
1374 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:2845
|
1375 |
#: includes/class-mla-settings-shortcodes-tab.php:1984
|
1376 |
msgctxt "table_view_singular"
|
1377 |
msgid "All"
|
1378 |
msgstr ""
|
1379 |
|
1380 |
+
#: includes/class-mla-core-options.php:1281
|
1381 |
#: includes/class-mla-mime-types.php:1697
|
1382 |
#: includes/class-mla-settings-custom-fields-tab.php:2502
|
1383 |
#: includes/class-mla-settings-documentation-tab.php:1546
|
1384 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:2846
|
1385 |
#: includes/class-mla-settings-shortcodes-tab.php:1985
|
1386 |
msgctxt "table_view_plural"
|
1387 |
msgid "All"
|
1388 |
msgstr ""
|
1389 |
|
1390 |
+
#: includes/class-mla-core-options.php:1286
|
1391 |
+
#: includes/class-mla-core-options.php:1340
|
1392 |
+
#: includes/class-mla-core-options.php:1349
|
1393 |
+
#: includes/class-mla-core-options.php:1358
|
1394 |
+
#: includes/class-mla-core-options.php:1367
|
1395 |
msgctxt "post_mime_types_description"
|
1396 |
msgid "Built-in view"
|
1397 |
msgstr ""
|
1398 |
|
1399 |
+
#: includes/class-mla-core-options.php:1289
|
1400 |
msgctxt "table_view_singular"
|
1401 |
msgid "Image"
|
1402 |
msgstr ""
|
1403 |
|
1404 |
+
#: includes/class-mla-core-options.php:1290
|
1405 |
msgctxt "table_view_plural"
|
1406 |
msgid "Images"
|
1407 |
msgstr ""
|
1408 |
|
1409 |
+
#: includes/class-mla-core-options.php:1295
|
1410 |
msgctxt "post_mime_types_description"
|
1411 |
msgid "All image subtypes"
|
1412 |
msgstr ""
|
1413 |
|
1414 |
+
#: includes/class-mla-core-options.php:1298
|
1415 |
msgctxt "table_view_singular"
|
1416 |
msgid "Audio"
|
1417 |
msgstr ""
|
1418 |
|
1419 |
+
#: includes/class-mla-core-options.php:1299
|
1420 |
msgctxt "table_view_plural"
|
1421 |
msgid "Audio"
|
1422 |
msgstr ""
|
1423 |
|
1424 |
+
#: includes/class-mla-core-options.php:1304
|
1425 |
msgctxt "post_mime_types_description"
|
1426 |
msgid "All audio subtypes"
|
1427 |
msgstr ""
|
1428 |
|
1429 |
+
#: includes/class-mla-core-options.php:1307
|
1430 |
msgctxt "table_view_singular"
|
1431 |
msgid "Video"
|
1432 |
msgstr ""
|
1433 |
|
1434 |
+
#: includes/class-mla-core-options.php:1308
|
1435 |
msgctxt "table_view_plural"
|
1436 |
msgid "Video"
|
1437 |
msgstr ""
|
1438 |
|
1439 |
+
#: includes/class-mla-core-options.php:1313
|
1440 |
msgctxt "post_mime_types_description"
|
1441 |
msgid "All video subtypes"
|
1442 |
msgstr ""
|
1443 |
|
1444 |
+
#: includes/class-mla-core-options.php:1316
|
1445 |
msgctxt "table_view_singular"
|
1446 |
msgid "Text"
|
1447 |
msgstr ""
|
1448 |
|
1449 |
+
#: includes/class-mla-core-options.php:1317
|
1450 |
msgctxt "table_view_plural"
|
1451 |
msgid "Text"
|
1452 |
msgstr ""
|
1453 |
|
1454 |
+
#: includes/class-mla-core-options.php:1322
|
1455 |
msgctxt "post_mime_types_description"
|
1456 |
msgid "All text subtypes"
|
1457 |
msgstr ""
|
1458 |
|
1459 |
+
#: includes/class-mla-core-options.php:1325
|
1460 |
msgctxt "table_view_singular"
|
1461 |
msgid "Application"
|
1462 |
msgstr ""
|
1463 |
|
1464 |
+
#: includes/class-mla-core-options.php:1326
|
1465 |
msgctxt "table_view_plural"
|
1466 |
msgid "Applications"
|
1467 |
msgstr ""
|
1468 |
|
1469 |
+
#: includes/class-mla-core-options.php:1331
|
1470 |
msgctxt "post_mime_types_description"
|
1471 |
msgid "All application subtypes"
|
1472 |
msgstr ""
|
1473 |
|
1474 |
+
#: includes/class-mla-core-options.php:1335
|
1475 |
msgctxt "table_view_plural"
|
1476 |
msgid "Unattached"
|
1477 |
msgstr ""
|
1478 |
|
1479 |
+
#: includes/class-mla-core-options.php:1343
|
1480 |
msgctxt "table_view_singular"
|
1481 |
msgid "Attached"
|
1482 |
msgstr ""
|
1483 |
|
1484 |
+
#: includes/class-mla-core-options.php:1344
|
1485 |
msgctxt "table_view_plural"
|
1486 |
msgid "Attached"
|
1487 |
msgstr ""
|
1488 |
|
1489 |
+
#: includes/class-mla-core-options.php:1352
|
1490 |
msgctxt "table_view_singular"
|
1491 |
msgid "Mine"
|
1492 |
msgstr ""
|
1493 |
|
1494 |
+
#: includes/class-mla-core-options.php:1353
|
1495 |
msgctxt "table_view_plural"
|
1496 |
msgid "Mine"
|
1497 |
msgstr ""
|
1498 |
|
1499 |
+
#: includes/class-mla-core-options.php:1361
|
1500 |
msgctxt "table_view_singular"
|
1501 |
msgid "Trash"
|
1502 |
msgstr ""
|
1503 |
|
1504 |
+
#: includes/class-mla-core-options.php:1362
|
1505 |
msgctxt "table_view_plural"
|
1506 |
msgid "Trash"
|
1507 |
msgstr ""
|
1508 |
|
1509 |
+
#: includes/class-mla-core-options.php:1373
|
1510 |
msgid "Enable Upload MIME Type Support"
|
1511 |
msgstr ""
|
1512 |
|
1513 |
+
#: includes/class-mla-core-options.php:1376
|
1514 |
msgid ""
|
1515 |
"Check/uncheck this option to enable/disable Upload MIME Type Support, then "
|
1516 |
"click <strong>Save Changes</strong> to record the new setting."
|
1517 |
msgstr ""
|
1518 |
|
1519 |
+
#: includes/class-mla-core-options.php:1385
|
1520 |
msgid "Upload MIME Types help."
|
1521 |
msgstr ""
|
1522 |
|
1523 |
+
#: includes/class-mla-core-options.php:1390
|
1524 |
msgid "Enable MLA File Type Icons Support"
|
1525 |
msgstr ""
|
1526 |
|
1527 |
+
#: includes/class-mla-core-options.php:1393
|
1528 |
msgid ""
|
1529 |
"Check/uncheck this option to enable/disable MLA File Type Icons Support, "
|
1530 |
"then click <strong>Save Changes</strong> to record the new setting."
|
1531 |
msgstr ""
|
1532 |
|
1533 |
+
#: includes/class-mla-core-options.php:1397
|
1534 |
msgid "Always Use MLA MIME Type"
|
1535 |
msgstr ""
|
1536 |
|
1537 |
+
#: includes/class-mla-core-options.php:1400
|
1538 |
msgid ""
|
1539 |
"Check this option to override WordPress MIME Type security checks, then "
|
1540 |
"click <strong>Save Changes</strong> to record the new setting."
|
1541 |
msgstr ""
|
1542 |
|
1543 |
+
#: includes/class-mla-core-options.php:1404
|
1544 |
msgid "Display Limit"
|
1545 |
msgstr ""
|
1546 |
|
1547 |
+
#: includes/class-mla-core-options.php:1408
|
1548 |
msgid ""
|
1549 |
"Enter the maximum number of debug log characters to display; enter zero or "
|
1550 |
"leave blank for no limit."
|
1551 |
msgstr ""
|
1552 |
|
1553 |
+
#: includes/class-mla-core-options.php:1412
|
1554 |
msgid "Debug File"
|
1555 |
msgstr ""
|
1556 |
|
1557 |
+
#: includes/class-mla-core-options.php:1416
|
1558 |
msgid ""
|
1559 |
"Enter the name of an alternate, MLA-specific debug log file; leave blank to "
|
1560 |
"use the PHP error_log.<br> The WP_CONTENT_DIR value (below) will "
|
1562 |
"\"."
|
1563 |
msgstr ""
|
1564 |
|
1565 |
+
#: includes/class-mla-core-options.php:1420
|
1566 |
msgid "Replace PHP error_log file"
|
1567 |
msgstr ""
|
1568 |
|
1569 |
+
#: includes/class-mla-core-options.php:1423
|
1570 |
msgid ""
|
1571 |
"Check this option to replace the PHP error_log file with the MLA Debug File."
|
1572 |
"<br> allows capture of PHP messages in the MLA Debug File."
|
1573 |
msgstr ""
|
1574 |
|
1575 |
+
#: includes/class-mla-core-options.php:1427
|
1576 |
msgid "PHP Reporting"
|
1577 |
msgstr ""
|
1578 |
|
1579 |
+
#: includes/class-mla-core-options.php:1431
|
1580 |
msgid ""
|
1581 |
"Enter a numeric error_reporting value, e.g., 0x7FFF or 32767; leave blank to "
|
1582 |
"use the existing PHP error_reporting value."
|
1583 |
msgstr ""
|
1584 |
|
1585 |
+
#: includes/class-mla-core-options.php:1435
|
1586 |
msgid "MLA Reporting"
|
1587 |
msgstr ""
|
1588 |
|
1589 |
+
#: includes/class-mla-core-options.php:1439
|
1590 |
msgid ""
|
1591 |
"Enter a numeric MLA_DEBUG_LEVEL value, e.g., 0x0003 or 3; leave blank to use "
|
1592 |
"the existing MLA_DEBUG_LEVEL value."
|
1593 |
msgstr ""
|
1594 |
|
1595 |
+
#: includes/class-mla-core-options.php:1443
|
1596 |
msgid "Add Tax. Columns"
|
1597 |
msgstr ""
|
1598 |
|
1599 |
+
#: includes/class-mla-core-options.php:1446
|
1600 |
msgid ""
|
1601 |
+
"Check this option to add Parent, Term ID and Term-Taxonomy ID columns to the "
|
1602 |
"taxonomy edit admin submenu tables."
|
1603 |
msgstr ""
|
1604 |
|
1614 |
msgid "%1$s: mla_load_template file \"%2$s\" bad source type \"%3$s\"."
|
1615 |
msgstr ""
|
1616 |
|
1617 |
+
#: includes/class-mla-core.php:1371
|
1618 |
#, php-format
|
1619 |
msgid "%1$s: Bad specification part \"%2$s\""
|
1620 |
msgstr ""
|
1621 |
|
1622 |
+
#: includes/class-mla-core.php:1377
|
1623 |
#, php-format
|
1624 |
msgid "%1$s: Bad specification option \"%2$s\""
|
1625 |
msgstr ""
|
1626 |
|
1627 |
+
#: includes/class-mla-core.php:1381
|
1628 |
#, php-format
|
1629 |
msgid "%1$s: Bad specification prefix \"%2$s\""
|
1630 |
msgstr ""
|
1631 |
|
1632 |
+
#: includes/class-mla-core.php:1482
|
1633 |
msgid "Most Used"
|
1634 |
msgstr ""
|
1635 |
|
1636 |
+
#: includes/class-mla-core.php:1511
|
1637 |
#, php-format
|
1638 |
msgid "+ %s"
|
1639 |
msgstr ""
|
1640 |
|
1641 |
+
#: includes/class-mla-core.php:1517 includes/class-mla-edit-media.php:362
|
1642 |
+
#: includes/class-mla-edit-media.php:418 includes/class-mla-main.php:2077
|
1643 |
+
#: includes/class-mla-main.php:2273 includes/class-mla-main.php:2339
|
1644 |
#: includes/class-mla-media-modal.php:648
|
1645 |
#: includes/mla-media-modal-js-template.php:26
|
1646 |
#: includes/mla-media-modal-js-template.php:73
|
1727 |
#: includes/class-mla-data-query.php:294
|
1728 |
#: includes/class-mla-settings-custom-fields-tab.php:1250
|
1729 |
#: includes/class-mla-settings-documentation-tab.php:536
|
1730 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:1385
|
1731 |
#: includes/class-mla-settings-shortcodes-tab.php:978
|
1732 |
msgctxt "list_table_column"
|
1733 |
msgid "Name"
|
1777 |
#: includes/class-mla-mime-types.php:708 includes/class-mla-mime-types.php:787
|
1778 |
#: includes/class-mla-settings-custom-fields-tab.php:1260
|
1779 |
#: includes/class-mla-settings-documentation-tab.php:539
|
1780 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:1397
|
1781 |
#: includes/class-mla-settings-shortcodes-tab.php:981
|
1782 |
msgctxt "list_table_column"
|
1783 |
msgid "Description"
|
1825 |
msgid " %1$s: %2$s non-array \"%3$s\""
|
1826 |
msgstr ""
|
1827 |
|
1828 |
+
#: includes/class-mla-data-query.php:1381
|
1829 |
#, php-format
|
1830 |
msgctxt "error_log"
|
1831 |
msgid " %1$s: _execute_list_table_query $wp_filter = \"%2$s\"."
|
1832 |
msgstr ""
|
1833 |
|
1834 |
+
#: includes/class-mla-data-query.php:1397
|
1835 |
#, php-format
|
1836 |
msgctxt "error_log"
|
1837 |
msgid " %1$s: _execute_list_table_query WP_Query = \"%2$s\"."
|
1838 |
msgstr ""
|
1839 |
|
1840 |
+
#: includes/class-mla-data-query.php:1399
|
1841 |
#, php-format
|
1842 |
msgctxt "error_log"
|
1843 |
msgid " %1$s: _execute_list_table_query SQL_request = \"%2$s\"."
|
1844 |
msgstr ""
|
1845 |
|
1846 |
+
#: includes/class-mla-data-query.php:1913
|
1847 |
#, php-format
|
1848 |
msgctxt "error_log"
|
1849 |
msgid " %1$s: mla_query_posts_search_filter = \"%2$s\"."
|
1850 |
msgstr ""
|
1851 |
|
1852 |
+
#: includes/class-mla-data-query.php:2004
|
1853 |
#, php-format
|
1854 |
msgctxt "error_log"
|
1855 |
msgid " %1$s: mla_query_posts_where_filter = \"%2$s\"."
|
1856 |
msgstr ""
|
1857 |
|
1858 |
+
#: includes/class-mla-data-query.php:2076
|
1859 |
#, php-format
|
1860 |
msgctxt "error_log"
|
1861 |
msgid " %1$s: mla_query_posts_join_filter = \"%2$s\"."
|
1862 |
msgstr ""
|
1863 |
|
1864 |
+
#: includes/class-mla-data-query.php:2171
|
1865 |
#, php-format
|
1866 |
msgctxt "error_log"
|
1867 |
msgid " %1$s: mla_query_posts_orderby_filter = \"%2$s\"."
|
1868 |
msgstr ""
|
1869 |
|
1870 |
+
#: includes/class-mla-data-query.php:2257
|
1871 |
#, php-format
|
1872 |
msgctxt "error_log"
|
1873 |
msgid " %1$s: mla_query_posts_clauses_filter = \"%2$s\"."
|
1874 |
msgstr ""
|
1875 |
|
1876 |
+
#: includes/class-mla-data-query.php:2276
|
1877 |
#, php-format
|
1878 |
msgctxt "error_log"
|
1879 |
msgid " %1$s: mla_query_posts_clauses_request_filter = \"%2$s\"."
|
1955 |
msgid "%1$s: _evaluate_template_node unknown type \"%2$s\"."
|
1956 |
msgstr ""
|
1957 |
|
1958 |
+
#: includes/class-mla-data.php:1676
|
1959 |
#, php-format
|
1960 |
msgctxt "error_log"
|
1961 |
msgid ""
|
1963 |
"\"."
|
1964 |
msgstr ""
|
1965 |
|
1966 |
+
#: includes/class-mla-data.php:1823
|
1967 |
#, php-format
|
1968 |
msgctxt "error_log"
|
1969 |
msgid "%1$s: mla_get_attachment_by_id(%2$d) not found."
|
1970 |
msgstr ""
|
1971 |
|
1972 |
+
#: includes/class-mla-data.php:1829
|
1973 |
#, php-format
|
1974 |
msgctxt "error_log"
|
1975 |
msgid "%1$s: mla_get_attachment_by_id(%2$d) wrong post_type \"%3$s\"."
|
1976 |
msgstr ""
|
1977 |
|
1978 |
+
#: includes/class-mla-data.php:2179
|
1979 |
msgctxt "error_log"
|
1980 |
msgid "mla_parse_xml_string xml_parse_into_struct failed."
|
1981 |
msgstr ""
|
1982 |
|
1983 |
+
#: includes/class-mla-data.php:2183
|
1984 |
msgctxt "error_log"
|
1985 |
msgid "mla_parse_xml_string set option failed."
|
1986 |
msgstr ""
|
1987 |
|
1988 |
+
#: includes/class-mla-data.php:3840
|
1989 |
msgid "Auto"
|
1990 |
msgstr ""
|
1991 |
|
1992 |
+
#: includes/class-mla-data.php:3843
|
1993 |
msgid "Manual"
|
1994 |
msgstr ""
|
1995 |
|
1996 |
+
#: includes/class-mla-data.php:3846
|
1997 |
msgid "Bracket"
|
1998 |
msgstr ""
|
1999 |
|
2000 |
+
#: includes/class-mla-data.php:3849
|
2001 |
msgid "Other"
|
2002 |
msgstr ""
|
2003 |
|
2004 |
+
#: includes/class-mla-data.php:3856
|
2005 |
#: includes/class-mla-settings-custom-fields-tab.php:841
|
2006 |
#: includes/class-mla-settings-custom-fields-tab.php:1563
|
2007 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:981
|
2008 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:1729
|
2009 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:2555
|
2010 |
#: includes/class-mla-settings-view-tab.php:401
|
2011 |
#: includes/class-mla-settings-view-tab.php:802
|
2012 |
#: includes/class-mla-settings-view-tab.php:818
|
2014 |
msgid "Yes"
|
2015 |
msgstr ""
|
2016 |
|
2017 |
+
#: includes/class-mla-data.php:3858
|
2018 |
#: includes/class-mla-settings-custom-fields-tab.php:842
|
2019 |
#: includes/class-mla-settings-custom-fields-tab.php:1565
|
2020 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:982
|
2021 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:1731
|
2022 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:2555
|
2023 |
#: includes/class-mla-settings-view-tab.php:400
|
2024 |
#: includes/class-mla-settings-view-tab.php:804
|
2025 |
#: includes/class-mla-settings-view-tab.php:820
|
2027 |
msgid "No"
|
2028 |
msgstr ""
|
2029 |
|
2030 |
+
#: includes/class-mla-data.php:4105 includes/class-mla-data.php:4229
|
2031 |
#, php-format
|
2032 |
msgid "Deleting %1$s"
|
2033 |
msgstr ""
|
2034 |
|
2035 |
+
#: includes/class-mla-data.php:4108
|
2036 |
#, php-format
|
2037 |
msgid "%1$s: meta:%2$s not found"
|
2038 |
msgstr ""
|
2039 |
|
2040 |
+
#: includes/class-mla-data.php:4117 includes/class-mla-data.php:4240
|
2041 |
+
#: includes/class-mla-data.php:4252
|
2042 |
#, php-format
|
2043 |
msgid "Adding %1$s = %2$s"
|
2044 |
msgstr ""
|
2045 |
|
2046 |
+
#: includes/class-mla-data.php:4121
|
2047 |
#, php-format
|
2048 |
msgid "%1$s: Adding meta:%2$s; not found"
|
2049 |
msgstr ""
|
2050 |
|
2051 |
+
#: includes/class-mla-data.php:4128
|
2052 |
#, php-format
|
2053 |
msgid "Deleting Null meta:%1$s"
|
2054 |
msgstr ""
|
2055 |
|
2056 |
+
#: includes/class-mla-data.php:4138 includes/class-mla-data.php:4321
|
2057 |
+
#: includes/class-mla-data.php:4408 includes/class-mla-data.php:4432
|
2058 |
+
#: includes/class-mla-data.php:4475 includes/class-mla-data.php:4488
|
2059 |
+
#: includes/class-mla-data.php:4497 includes/class-mla-data.php:4508
|
2060 |
+
#: includes/class-mla-data.php:4519 includes/class-mla-data.php:4532
|
2061 |
+
#: includes/class-mla-data.php:4541 includes/class-mla-data.php:4550
|
2062 |
+
#: includes/class-mla-data.php:4559 includes/class-mla-data.php:4568
|
2063 |
#: includes/class-mla-mime-types.php:1300
|
2064 |
#: includes/class-mla-mime-types.php:2412
|
2065 |
#, php-format
|
2066 |
msgid "Changing %1$s from \"%2$s\" to \"%3$s\""
|
2067 |
msgstr ""
|
2068 |
|
2069 |
+
#: includes/class-mla-data.php:4143
|
2070 |
#, php-format
|
2071 |
msgid "%1$s: Changing meta:%2$s; not found"
|
2072 |
msgstr ""
|
2073 |
|
2074 |
+
#: includes/class-mla-data.php:4276
|
2075 |
#, php-format
|
2076 |
msgid "Deleting old %1$s values"
|
2077 |
msgstr ""
|
2078 |
|
2079 |
+
#: includes/class-mla-data.php:4306
|
2080 |
#, php-format
|
2081 |
msgid "Changing %1$s from \"%2$s\" to \"%3$s\"; %4$d updates"
|
2082 |
msgstr ""
|
2083 |
|
2084 |
+
#: includes/class-mla-data.php:4383
|
2085 |
msgid "Could not retrieve Attachment."
|
2086 |
msgstr ""
|
2087 |
|
2088 |
+
#: includes/class-mla-data.php:4429
|
2089 |
#, php-format
|
2090 |
msgid "%1$s: Could not change Name/Slug \"%2$s\"; name already exists"
|
2091 |
msgstr ""
|
2092 |
|
2093 |
+
#: includes/class-mla-data.php:4459
|
2094 |
#, php-format
|
2095 |
msgid "Deleting ALT Text, was \"%1$s\""
|
2096 |
msgstr ""
|
2097 |
|
2098 |
+
#: includes/class-mla-data.php:4462
|
2099 |
#, php-format
|
2100 |
msgid "%1$s: Could not delete ALT Text, remains \"%2$s\""
|
2101 |
msgstr ""
|
2102 |
|
2103 |
+
#: includes/class-mla-data.php:4478
|
2104 |
#, php-format
|
2105 |
msgid "%1$s: Could not change ALT Text from \"%2$s\" to \"%3$s\""
|
2106 |
msgstr ""
|
2107 |
|
2108 |
+
#: includes/class-mla-data.php:4508 includes/class-mla-list-table.php:1131
|
2109 |
#: includes/class-mla-list-table.php:1134
|
2110 |
#: includes/class-mla-list-table.php:1137
|
2111 |
+
#: includes/class-mla-list-table.php:1205 includes/class-mla-objects.php:158
|
2112 |
+
#: includes/class-mla-options.php:2148
|
2113 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:558
|
2114 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:951
|
2115 |
msgid "Parent"
|
2116 |
msgstr ""
|
2117 |
|
2118 |
+
#: includes/class-mla-data.php:4519 includes/class-mla-edit-media.php:889
|
2119 |
+
#: includes/class-mla-edit-media.php:1100 includes/class-mla-main.php:2417
|
2120 |
#: includes/class-mla-settings-view-tab.php:126
|
2121 |
#: includes/class-mla-settings-view-tab.php:389
|
2122 |
msgid "Menu Order"
|
2123 |
msgstr ""
|
2124 |
|
2125 |
+
#: includes/class-mla-data.php:4532 includes/class-mla-edit-media.php:449
|
2126 |
#: includes/class-mla-list-table.php:1585
|
2127 |
+
#: includes/class-mla-list-table.php:1588 includes/class-mla-main.php:2216
|
2128 |
+
#: includes/class-mla-main.php:2376
|
2129 |
msgid "Author"
|
2130 |
msgstr ""
|
2131 |
|
2132 |
+
#: includes/class-mla-data.php:4541 includes/class-mla-edit-media.php:474
|
2133 |
+
#: includes/class-mla-main.php:2429
|
2134 |
msgid "Comments"
|
2135 |
msgstr ""
|
2136 |
|
2137 |
+
#: includes/class-mla-data.php:4550 includes/class-mla-edit-media.php:475
|
2138 |
+
#: includes/class-mla-main.php:2430
|
2139 |
msgid "Pings"
|
2140 |
msgstr ""
|
2141 |
|
2142 |
+
#: includes/class-mla-data.php:4598
|
2143 |
#, php-format
|
2144 |
msgid "You cannot assign \"%1$s\" terms"
|
2145 |
msgstr ""
|
2146 |
|
2147 |
+
#: includes/class-mla-data.php:4611
|
2148 |
msgctxt "tag delimiter"
|
2149 |
msgid ","
|
2150 |
msgstr ""
|
2151 |
|
2152 |
+
#: includes/class-mla-data.php:4650
|
2153 |
msgid "Adding"
|
2154 |
msgstr ""
|
2155 |
|
2156 |
+
#: includes/class-mla-data.php:4655
|
2157 |
msgid "Removing"
|
2158 |
msgstr ""
|
2159 |
|
2160 |
+
#: includes/class-mla-data.php:4664
|
2161 |
msgid "Replacing"
|
2162 |
msgstr ""
|
2163 |
|
2164 |
+
#: includes/class-mla-data.php:4672
|
2165 |
msgid "Ignoring"
|
2166 |
msgstr ""
|
2167 |
|
2168 |
+
#: includes/class-mla-data.php:4689
|
2169 |
#, php-format
|
2170 |
msgid "%1$s \"%2$s\" terms"
|
2171 |
msgstr ""
|
2172 |
|
2173 |
+
#: includes/class-mla-data.php:4701 includes/class-mla-main.php:1403
|
2174 |
#, php-format
|
2175 |
msgid "Item %1$d, no changes detected."
|
2176 |
msgstr ""
|
2177 |
|
2178 |
+
#: includes/class-mla-data.php:4734
|
2179 |
#, php-format
|
2180 |
msgid "Item %1$d updated."
|
2181 |
msgstr ""
|
2182 |
|
2183 |
+
#: includes/class-mla-data.php:4752
|
2184 |
#, php-format
|
2185 |
msgid "%1$s: Item %2$d update failed."
|
2186 |
msgstr ""
|
2187 |
|
2188 |
#: includes/class-mla-edit-media.php:131 includes/class-mla-edit-media.php:185
|
2189 |
#: includes/class-mla-edit-media.php:238 includes/class-mla-main.php:470
|
2190 |
+
#: includes/class-mla-main.php:1158 includes/class-mla-main.php:1948
|
2191 |
+
#: includes/class-mla-media-modal.php:268 includes/class-mla-options.php:1654
|
2192 |
#: includes/class-mla-polylang-support.php:379
|
2193 |
#: includes/class-mla-settings-custom-fields-tab.php:57
|
2194 |
#: includes/class-mla-settings-custom-fields-tab.php:90
|
2195 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:80
|
2196 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:114
|
2197 |
#: includes/class-mla-settings-upload-tab.php:46
|
2198 |
#: includes/class-mla-settings-view-tab.php:46
|
2199 |
#: includes/class-mla-thumbnail-generation.php:99
|
2223 |
msgid "An ajax.done error has occurred. Please reload the page and try again."
|
2224 |
msgstr ""
|
2225 |
|
2226 |
+
#: includes/class-mla-edit-media.php:242 includes/class-mla-main.php:2157
|
2227 |
#, php-format
|
2228 |
msgid "Uploaded on: %s"
|
2229 |
msgstr ""
|
2232 |
msgid "Last modified"
|
2233 |
msgstr ""
|
2234 |
|
2235 |
+
#: includes/class-mla-edit-media.php:321 includes/class-mla-main.php:2071
|
2236 |
+
#: includes/class-mla-main.php:2210 includes/class-mla-media-modal.php:618
|
2237 |
#: includes/class-mla-mime-types.php:825 includes/class-mla-mime-types.php:1466
|
2238 |
#: includes/class-mla-mime-types.php:2645
|
2239 |
#: includes/class-mla-settings-custom-fields-tab.php:578
|
2241 |
#: includes/class-mla-settings-custom-fields-tab.php:2079
|
2242 |
#: includes/class-mla-settings-documentation-tab.php:337
|
2243 |
#: includes/class-mla-settings-documentation-tab.php:1278
|
2244 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:718
|
2245 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:887
|
2246 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:2386
|
2247 |
#: includes/class-mla-settings-shortcodes-tab.php:524
|
2248 |
#: includes/class-mla-settings-shortcodes-tab.php:1643
|
2249 |
#: includes/class-mla-settings-upload-tab.php:322
|
2254 |
msgstr ""
|
2255 |
|
2256 |
#: includes/class-mla-edit-media.php:341 includes/class-mla-edit-media.php:397
|
2257 |
+
#: includes/class-mla-main.php:2252 includes/class-mla-main.php:2318
|
2258 |
msgid "+ Add New Term"
|
2259 |
msgstr ""
|
2260 |
|
2261 |
#: includes/class-mla-edit-media.php:342 includes/class-mla-edit-media.php:398
|
2262 |
+
#: includes/class-mla-main.php:2253 includes/class-mla-main.php:2319
|
2263 |
msgid "Add New"
|
2264 |
msgstr ""
|
2265 |
|
2266 |
#: includes/class-mla-edit-media.php:360 includes/class-mla-edit-media.php:416
|
2267 |
+
#: includes/class-mla-main.php:2271 includes/class-mla-main.php:2337
|
2268 |
msgid "? Search"
|
2269 |
msgstr ""
|
2270 |
|
2271 |
#: includes/class-mla-edit-media.php:363 includes/class-mla-edit-media.php:419
|
2272 |
+
#: includes/class-mla-edit-media.php:428 includes/class-mla-main.php:2274
|
2273 |
+
#: includes/class-mla-main.php:2340 includes/class-mla-main.php:2349
|
2274 |
msgid "Add"
|
2275 |
msgstr ""
|
2276 |
|
2277 |
#: includes/class-mla-edit-media.php:364 includes/class-mla-edit-media.php:420
|
2278 |
+
#: includes/class-mla-edit-media.php:429 includes/class-mla-main.php:2275
|
2279 |
+
#: includes/class-mla-main.php:2341 includes/class-mla-main.php:2350
|
2280 |
msgid "Remove"
|
2281 |
msgstr ""
|
2282 |
|
2283 |
#: includes/class-mla-edit-media.php:365 includes/class-mla-edit-media.php:421
|
2284 |
+
#: includes/class-mla-edit-media.php:430 includes/class-mla-main.php:2276
|
2285 |
+
#: includes/class-mla-main.php:2342 includes/class-mla-main.php:2351
|
2286 |
#: includes/class-mla-settings-custom-fields-tab.php:502
|
2287 |
#: includes/class-mla-settings-custom-fields-tab.php:812
|
2288 |
#: includes/class-mla-settings-custom-fields-tab.php:1549
|
2289 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:552
|
2290 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:948
|
2291 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:1670
|
2292 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:2536
|
2293 |
msgid "Replace"
|
2294 |
msgstr ""
|
2295 |
|
2299 |
"menu for more information."
|
2300 |
msgstr ""
|
2301 |
|
2302 |
+
#: includes/class-mla-edit-media.php:470 includes/class-mla-main.php:2423
|
2303 |
#: includes/class-mla-settings.php:1391
|
2304 |
msgid "Reset"
|
2305 |
msgstr ""
|
2306 |
|
2307 |
+
#: includes/class-mla-edit-media.php:476 includes/class-mla-main.php:2431
|
2308 |
+
#: includes/class-mla-main.php:2487
|
2309 |
#: includes/class-mla-settings-custom-fields-tab.php:840
|
2310 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:980
|
2311 |
#: includes/class-mla-settings-upload-tab.php:120
|
2312 |
#: includes/class-mla-settings-upload-tab.php:554
|
2313 |
#: includes/class-mla-settings-view-tab.php:399
|
2314 |
msgid "No Change"
|
2315 |
msgstr ""
|
2316 |
|
2317 |
+
#: includes/class-mla-edit-media.php:477 includes/class-mla-main.php:2432
|
2318 |
msgid "Allow"
|
2319 |
msgstr ""
|
2320 |
|
2321 |
+
#: includes/class-mla-edit-media.php:478 includes/class-mla-main.php:2433
|
2322 |
msgid "Do not allow"
|
2323 |
msgstr ""
|
2324 |
|
2325 |
#: includes/class-mla-edit-media.php:486 includes/class-mla-list-table.php:1131
|
2326 |
+
#: includes/class-mla-list-table.php:1202 includes/class-mla-main.php:2415
|
2327 |
msgid "Parent ID"
|
2328 |
msgstr ""
|
2329 |
|
2330 |
+
#: includes/class-mla-edit-media.php:487 includes/class-mla-edit-media.php:1080
|
2331 |
+
#: includes/class-mla-main.php:2416
|
2332 |
#: includes/class-mla-settings-upload-tab.php:1469
|
2333 |
msgid "Select"
|
2334 |
msgstr ""
|
2349 |
msgid "IPTC/EXIF mapping is disabled."
|
2350 |
msgstr ""
|
2351 |
|
2352 |
+
#: includes/class-mla-edit-media.php:688 includes/class-mla-main.php:2141
|
2353 |
msgid "Month"
|
2354 |
msgstr ""
|
2355 |
|
2356 |
+
#: includes/class-mla-edit-media.php:694 includes/class-mla-main.php:2147
|
2357 |
#, php-format
|
2358 |
msgid "%1$s-%2$s"
|
2359 |
msgstr ""
|
2360 |
|
2361 |
+
#: includes/class-mla-edit-media.php:698 includes/class-mla-main.php:2151
|
2362 |
msgid "Day"
|
2363 |
msgstr ""
|
2364 |
|
2365 |
+
#: includes/class-mla-edit-media.php:699 includes/class-mla-main.php:2152
|
2366 |
msgid "Year"
|
2367 |
msgstr ""
|
2368 |
|
2369 |
+
#: includes/class-mla-edit-media.php:700 includes/class-mla-main.php:2153
|
2370 |
msgid "Hour"
|
2371 |
msgstr ""
|
2372 |
|
2373 |
+
#: includes/class-mla-edit-media.php:701 includes/class-mla-main.php:2154
|
2374 |
msgid "Minute"
|
2375 |
msgstr ""
|
2376 |
|
2377 |
+
#: includes/class-mla-edit-media.php:705 includes/class-mla-main.php:2159
|
2378 |
#, php-format
|
2379 |
msgid "%1$s %2$s, %3$s @ %4$s:%5$s"
|
2380 |
msgstr ""
|
2383 |
msgid "OK"
|
2384 |
msgstr ""
|
2385 |
|
2386 |
+
#: includes/class-mla-edit-media.php:729 includes/class-mla-main.php:2094
|
2387 |
+
#: includes/class-mla-main.php:2422
|
2388 |
#: includes/class-mla-polylang-support.php:2083
|
2389 |
#: includes/class-mla-settings-custom-fields-tab.php:530
|
2390 |
#: includes/class-mla-settings-custom-fields-tab.php:761
|
2391 |
#: includes/class-mla-settings-custom-fields-tab.php:843
|
2392 |
#: includes/class-mla-settings-documentation-tab.php:210
|
2393 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:591
|
2394 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:899
|
2395 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:983
|
2396 |
#: includes/class-mla-settings-shortcodes-tab.php:426
|
2397 |
#: includes/class-mla-settings-shortcodes-tab.php:497
|
2398 |
#: includes/class-mla-settings-upload-tab.php:202
|
2419 |
#: includes/class-mla-polylang-support.php:378
|
2420 |
#: includes/class-mla-settings-custom-fields-tab.php:1392
|
2421 |
#: includes/class-mla-settings-custom-fields-tab.php:1739
|
2422 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:1529
|
2423 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:1905
|
2424 |
#: includes/class-mla-settings-shortcodes-tab.php:1096
|
2425 |
#: includes/class-mla-settings-upload-tab.php:928
|
2426 |
#: includes/class-mla-settings-upload-tab.php:1213
|
2442 |
msgstr ""
|
2443 |
|
2444 |
#: includes/class-mla-edit-media.php:785 includes/class-mla-main.php:1852
|
2445 |
+
#: includes/class-mla-main.php:2438
|
2446 |
msgid "Map Custom Field metadata"
|
2447 |
msgstr ""
|
2448 |
|
2451 |
msgstr ""
|
2452 |
|
2453 |
#: includes/class-mla-edit-media.php:789 includes/class-mla-main.php:1855
|
2454 |
+
#: includes/class-mla-main.php:2436
|
2455 |
msgid "Map IPTC/EXIF metadata"
|
2456 |
msgstr ""
|
2457 |
|
2458 |
+
#: includes/class-mla-edit-media.php:885 includes/class-mla-edit-media.php:1081
|
2459 |
msgid "Parent Info"
|
2460 |
msgstr ""
|
2461 |
|
2462 |
+
#: includes/class-mla-edit-media.php:895 includes/class-mla-edit-media.php:1124
|
2463 |
msgid "Attachment Metadata"
|
2464 |
msgstr ""
|
2465 |
|
2466 |
+
#: includes/class-mla-edit-media.php:901 includes/class-mla-edit-media.php:1143
|
2467 |
+
msgid "Attachment File Metadata"
|
2468 |
+
msgstr ""
|
2469 |
+
|
2470 |
+
#: includes/class-mla-edit-media.php:971 includes/class-mla-edit-media.php:1013
|
2471 |
#: includes/class-mla-main.php:709 includes/class-mla-settings.php:586
|
2472 |
#, php-format
|
2473 |
msgctxt "error_log"
|
2474 |
msgid "%1$s: %2$s discarding \"%3$s\"; no title/order"
|
2475 |
msgstr ""
|
2476 |
|
2477 |
+
#: includes/class-mla-edit-media.php:1079
|
2478 |
msgid "Post Parent"
|
2479 |
msgstr ""
|
2480 |
|
2481 |
+
#: includes/class-mla-edit-media.php:1080 includes/class-mla-main.php:2076
|
2482 |
msgid "Select Parent"
|
2483 |
msgstr ""
|
2484 |
|
2493 |
|
2494 |
#: includes/class-mla-list-table.php:500
|
2495 |
#: includes/class-mla-settings-custom-fields-tab.php:1037
|
2496 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:1168
|
2497 |
#: includes/class-mla-settings-upload-tab.php:653
|
2498 |
#: includes/class-mla-settings-view-tab.php:496
|
2499 |
msgid "List View"
|
2517 |
#: includes/class-mla-list-table.php:648
|
2518 |
#: includes/class-mla-settings-custom-fields-tab.php:1340
|
2519 |
#: includes/class-mla-settings-documentation-tab.php:620
|
2520 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:1477
|
2521 |
#: includes/class-mla-settings-shortcodes-tab.php:1051
|
2522 |
#: includes/class-mla-settings-upload-tab.php:864
|
2523 |
#: includes/class-mla-settings-upload-tab.php:1417
|
2536 |
|
2537 |
#: includes/class-mla-list-table.php:820
|
2538 |
#: includes/class-mla-settings-custom-fields-tab.php:1392
|
2539 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:1529
|
2540 |
#: includes/class-mla-settings-shortcodes-tab.php:1096
|
2541 |
#: includes/class-mla-settings-upload-tab.php:928
|
2542 |
#: includes/class-mla-settings-view-tab.php:723
|
2545 |
|
2546 |
#: includes/class-mla-list-table.php:821
|
2547 |
#: includes/class-mla-settings-custom-fields-tab.php:1395
|
2548 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:1532
|
2549 |
#: includes/class-mla-settings-upload-tab.php:930
|
2550 |
#: includes/class-mla-settings-view-tab.php:725
|
2551 |
msgid "Edit this item inline"
|
2552 |
msgstr ""
|
2553 |
|
2554 |
+
#: includes/class-mla-list-table.php:821 includes/class-mla-main.php:2406
|
2555 |
#: includes/class-mla-options.php:1244
|
2556 |
#: includes/class-mla-settings-custom-fields-tab.php:493
|
2557 |
#: includes/class-mla-settings-custom-fields-tab.php:803
|
2558 |
#: includes/class-mla-settings-custom-fields-tab.php:1395
|
2559 |
#: includes/class-mla-settings-custom-fields-tab.php:1505
|
2560 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:927
|
2561 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:1532
|
2562 |
#: includes/class-mla-settings-upload-tab.php:930
|
2563 |
#: includes/class-mla-settings-view-tab.php:725
|
2564 |
msgid "Quick Edit"
|
2574 |
|
2575 |
#: includes/class-mla-list-table.php:832
|
2576 |
#: includes/class-mla-settings-custom-fields-tab.php:1403
|
2577 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:1542
|
2578 |
#: includes/class-mla-settings-shortcodes-tab.php:1102
|
2579 |
#: includes/class-mla-settings-upload-tab.php:934
|
2580 |
#: includes/class-mla-settings-view-tab.php:731
|
2585 |
#: includes/class-mla-list-table.php:1977
|
2586 |
#: includes/class-mla-settings-custom-fields-tab.php:1403
|
2587 |
#: includes/class-mla-settings-custom-fields-tab.php:1740
|
2588 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:1542
|
2589 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:1906
|
2590 |
#: includes/class-mla-settings-shortcodes-tab.php:1102
|
2591 |
#: includes/class-mla-settings-upload-tab.php:934
|
2592 |
#: includes/class-mla-settings-view-tab.php:731
|
2655 |
|
2656 |
#: includes/class-mla-list-table.php:2071
|
2657 |
#: includes/class-mla-settings-custom-fields-tab.php:1803
|
2658 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:1969
|
2659 |
#: includes/class-mla-settings-shortcodes-tab.php:1361
|
2660 |
msgid "Filter"
|
2661 |
msgstr ""
|
2682 |
#: includes/class-mla-main.php:460
|
2683 |
#: includes/class-mla-settings-custom-fields-tab.php:55
|
2684 |
#: includes/class-mla-settings-custom-fields-tab.php:88
|
2685 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:78
|
2686 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:112
|
2687 |
#: includes/class-mla-settings-upload-tab.php:44
|
2688 |
#: includes/class-mla-settings-view-tab.php:44
|
2689 |
msgid "Remove From Bulk Edit"
|
2693 |
msgid "Bulk Edit items"
|
2694 |
msgstr ""
|
2695 |
|
2696 |
+
#: includes/class-mla-main.php:463 includes/class-mla-main.php:2439
|
2697 |
#: includes/class-mla-settings-custom-fields-tab.php:61
|
2698 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:84
|
2699 |
msgid "Waiting"
|
2700 |
msgstr ""
|
2701 |
|
2702 |
+
#: includes/class-mla-main.php:464 includes/class-mla-main.php:2441
|
2703 |
#: includes/class-mla-settings-custom-fields-tab.php:63
|
2704 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:86
|
2705 |
msgid "Complete"
|
2706 |
msgstr ""
|
2707 |
|
2708 |
#: includes/class-mla-main.php:465
|
2709 |
#: includes/class-mla-settings-custom-fields-tab.php:64
|
2710 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:87
|
2711 |
msgid "Unchanged"
|
2712 |
msgstr ""
|
2713 |
|
2714 |
#: includes/class-mla-main.php:466
|
2715 |
#: includes/class-mla-settings-custom-fields-tab.php:65
|
2716 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:88
|
2717 |
msgid "Succeeded"
|
2718 |
msgstr ""
|
2719 |
|
2720 |
#: includes/class-mla-main.php:467
|
2721 |
#: includes/class-mla-settings-custom-fields-tab.php:66
|
2722 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:89
|
2723 |
msgid "Failed"
|
2724 |
msgstr ""
|
2725 |
|
2734 |
msgstr[0] ""
|
2735 |
msgstr[1] ""
|
2736 |
|
2737 |
+
#: includes/class-mla-main.php:611 includes/class-mla-main.php:2626
|
2738 |
#, php-format
|
2739 |
msgid "Item %1$d moved to Trash."
|
2740 |
msgstr ""
|
2786 |
#: includes/class-mla-main.php:1462
|
2787 |
#: includes/class-mla-settings-custom-fields-tab.php:635
|
2788 |
#: includes/class-mla-settings-documentation-tab.php:287
|
2789 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:775
|
2790 |
#: includes/class-mla-settings-shortcodes-tab.php:586
|
2791 |
#: includes/class-mla-settings-upload-tab.php:421
|
2792 |
#: includes/class-mla-settings-view-tab.php:267
|
2822 |
#: includes/class-mla-main.php:1688
|
2823 |
#: includes/class-mla-settings-custom-fields-tab.php:663
|
2824 |
#: includes/class-mla-settings-documentation-tab.php:321
|
2825 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:803
|
2826 |
#: includes/class-mla-settings-shortcodes-tab.php:613
|
2827 |
#: includes/class-mla-settings-upload-tab.php:459
|
2828 |
#: includes/class-mla-settings-view-tab.php:304
|
2842 |
msgid "search results for"
|
2843 |
msgstr ""
|
2844 |
|
2845 |
+
#: includes/class-mla-main.php:1858 includes/class-mla-main.php:2098
|
2846 |
+
#: includes/class-mla-main.php:2424
|
2847 |
#: includes/class-mla-settings-custom-fields-tab.php:532
|
2848 |
#: includes/class-mla-settings-custom-fields-tab.php:844
|
2849 |
#: includes/class-mla-settings-documentation-tab.php:664
|
2850 |
#: includes/class-mla-settings-documentation-tab.php:863
|
2851 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:593
|
2852 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:984
|
2853 |
#: includes/class-mla-settings-shortcodes-tab.php:500
|
2854 |
#: includes/class-mla-settings-upload-tab.php:201
|
2855 |
#: includes/class-mla-settings-upload-tab.php:551
|
2858 |
msgid "Update"
|
2859 |
msgstr ""
|
2860 |
|
2861 |
+
#: includes/class-mla-main.php:2033
|
2862 |
msgid "All Post Types"
|
2863 |
msgstr ""
|
2864 |
|
2865 |
+
#: includes/class-mla-main.php:2079
|
2866 |
msgid "For"
|
2867 |
msgstr ""
|
2868 |
|
2869 |
+
#: includes/class-mla-main.php:2089
|
2870 |
+
#: includes/class-mla-shortcode-support.php:1244
|
2871 |
msgid "Unattached"
|
2872 |
msgstr ""
|
2873 |
|
2874 |
+
#: includes/class-mla-main.php:2425 includes/class-mla-options.php:1258
|
2875 |
#: includes/class-mla-settings-custom-fields-tab.php:496
|
2876 |
#: includes/class-mla-settings-custom-fields-tab.php:806
|
2877 |
#: includes/class-mla-settings-custom-fields-tab.php:1509
|
2878 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:928
|
2879 |
#: includes/class-mla-settings-upload-tab.php:552
|
2880 |
#: includes/class-mla-settings-view-tab.php:398
|
2881 |
msgid "Bulk Edit"
|
2882 |
msgstr ""
|
2883 |
|
2884 |
+
#: includes/class-mla-main.php:2440
|
2885 |
msgid "In-process"
|
2886 |
msgstr ""
|
2887 |
|
2888 |
+
#: includes/class-mla-main.php:2539
|
2889 |
msgid "You are not allowed to delete this item."
|
2890 |
msgstr ""
|
2891 |
|
2892 |
+
#: includes/class-mla-main.php:2547
|
2893 |
#, php-format
|
2894 |
msgid "%1$s: Item %2$d could NOT be deleted."
|
2895 |
msgstr ""
|
2896 |
|
2897 |
+
#: includes/class-mla-main.php:2554
|
2898 |
#, php-format
|
2899 |
msgid "Item %1$d permanently deleted."
|
2900 |
msgstr ""
|
2901 |
|
2902 |
+
#: includes/class-mla-main.php:2571
|
2903 |
msgid "You are not allowed to move this item out of the Trash."
|
2904 |
msgstr ""
|
2905 |
|
2906 |
+
#: includes/class-mla-main.php:2579
|
2907 |
#, php-format
|
2908 |
msgid "%1$s: Item %2$d could NOT be restored from Trash."
|
2909 |
msgstr ""
|
2910 |
|
2911 |
+
#: includes/class-mla-main.php:2594
|
2912 |
#, php-format
|
2913 |
msgid "Item %1$d restored from Trash."
|
2914 |
msgstr ""
|
2915 |
|
2916 |
+
#: includes/class-mla-main.php:2611
|
2917 |
msgid "You are not allowed to move this item to the Trash."
|
2918 |
msgstr ""
|
2919 |
|
2920 |
+
#: includes/class-mla-main.php:2619
|
2921 |
#, php-format
|
2922 |
msgid "%1$s: Item %2$d could NOT be moved to Trash."
|
2923 |
msgstr ""
|
3024 |
|
3025 |
#: includes/class-mla-mime-types.php:630
|
3026 |
#: includes/class-mla-settings-custom-fields-tab.php:1255
|
3027 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:1391
|
3028 |
msgctxt "list_table_column"
|
3029 |
msgid "Status"
|
3030 |
msgstr ""
|
3195 |
msgstr ""
|
3196 |
|
3197 |
#: includes/class-mla-mime-types.php:1716
|
3198 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:2857
|
3199 |
msgctxt "table_view_singular"
|
3200 |
msgid "Custom"
|
3201 |
msgstr ""
|
3202 |
|
3203 |
#: includes/class-mla-mime-types.php:1717
|
3204 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:2858
|
3205 |
msgctxt "table_view_plural"
|
3206 |
msgid "Custom"
|
3207 |
msgstr ""
|
3363 |
msgid "Attachments"
|
3364 |
msgstr ""
|
3365 |
|
3366 |
+
#: includes/class-mla-objects.php:159
|
3367 |
msgid "Term ID"
|
3368 |
msgstr ""
|
3369 |
|
3370 |
+
#: includes/class-mla-objects.php:160
|
3371 |
msgid "Term-Tax ID"
|
3372 |
msgstr ""
|
3373 |
|
3374 |
+
#: includes/class-mla-objects.php:266
|
3375 |
#, php-format
|
3376 |
msgctxt "error_log"
|
3377 |
msgid ""
|
3378 |
"%1$s: mla_taxonomy_column_filter( \"%2$s\" ) - get_term failed: \"%3$s\""
|
3379 |
msgstr ""
|
3380 |
|
3381 |
+
#: includes/class-mla-objects.php:290
|
3382 |
msgid "click to search"
|
3383 |
msgstr ""
|
3384 |
|
3385 |
+
#: includes/class-mla-objects.php:322
|
3386 |
msgid "Shortcode(s), HTML and/or Plain Text"
|
3387 |
msgstr ""
|
3388 |
|
3389 |
+
#: includes/class-mla-objects.php:330
|
3390 |
msgid "MLA Text"
|
3391 |
msgstr ""
|
3392 |
|
3393 |
+
#: includes/class-mla-objects.php:374
|
3394 |
msgid "Automatically add paragraphs"
|
3395 |
msgstr ""
|
3396 |
|
3397 |
+
#: includes/class-mla-objects.php:375
|
3398 |
msgid "Add .textwidget div tags"
|
3399 |
msgstr ""
|
3400 |
|
3505 |
#: includes/class-mla-options.php:469
|
3506 |
#: includes/class-mla-settings-custom-fields-tab.php:472
|
3507 |
#: includes/class-mla-settings-custom-fields-tab.php:790
|
3508 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:525
|
3509 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:929
|
3510 |
#: includes/class-mla-settings-shortcodes-tab.php:422
|
3511 |
#: includes/class-mla-settings-shortcodes-tab.php:493
|
3512 |
#: includes/mla-main-search-box-template.php:49
|
3527 |
msgstr ""
|
3528 |
|
3529 |
#: includes/class-mla-options.php:1001 includes/class-mla-options.php:1047
|
3530 |
+
#: includes/class-mla-options.php:1886 includes/class-mla-options.php:1917
|
3531 |
+
#: includes/class-mla-options.php:1922
|
3532 |
#: includes/class-mla-settings-upload-tab.php:126
|
3533 |
msgid "None (select a value)"
|
3534 |
msgstr ""
|
3541 |
msgid "Template (see below)"
|
3542 |
msgstr ""
|
3543 |
|
3544 |
+
#: includes/class-mla-options.php:1133 includes/class-mla-options.php:2204
|
3545 |
#, php-format
|
3546 |
msgid "%1$s: New field %2$s already exists."
|
3547 |
msgstr ""
|
3548 |
|
3549 |
+
#: includes/class-mla-options.php:1138 includes/class-mla-options.php:2209
|
3550 |
#, php-format
|
3551 |
msgid "Adding new field %1$s."
|
3552 |
msgstr ""
|
3553 |
|
3554 |
+
#: includes/class-mla-options.php:1146 includes/class-mla-options.php:2217
|
3555 |
#, php-format
|
3556 |
msgid "Adding new rule for %1$s."
|
3557 |
msgstr ""
|
3558 |
|
3559 |
+
#: includes/class-mla-options.php:1172 includes/class-mla-options.php:2074
|
3560 |
+
#: includes/class-mla-options.php:2243
|
3561 |
#, php-format
|
3562 |
msgid "Deleting rule for %1$s."
|
3563 |
msgstr ""
|
3564 |
|
3565 |
#: includes/class-mla-options.php:1195 includes/class-mla-options.php:1216
|
3566 |
#: includes/class-mla-options.php:1266 includes/class-mla-options.php:1273
|
3567 |
+
#: includes/class-mla-options.php:1990 includes/class-mla-options.php:1997
|
3568 |
+
#: includes/class-mla-options.php:2004 includes/class-mla-options.php:2099
|
3569 |
+
#: includes/class-mla-options.php:2106 includes/class-mla-options.php:2141
|
3570 |
+
#: includes/class-mla-options.php:2148 includes/class-mla-options.php:2253
|
3571 |
+
#: includes/class-mla-options.php:2260 includes/class-mla-options.php:2295
|
3572 |
+
#: includes/class-mla-options.php:2302
|
3573 |
#, php-format
|
3574 |
msgid "%1$s changing %2$s from %3$s to %4$s."
|
3575 |
msgstr ""
|
3580 |
msgid "Data Source"
|
3581 |
msgstr ""
|
3582 |
|
3583 |
+
#: includes/class-mla-options.php:1201 includes/class-mla-options.php:2024
|
3584 |
+
#: includes/class-mla-options.php:2126 includes/class-mla-options.php:2280
|
3585 |
msgid "Replace to Keep"
|
3586 |
msgstr ""
|
3587 |
|
3588 |
+
#: includes/class-mla-options.php:1204 includes/class-mla-options.php:2027
|
3589 |
+
#: includes/class-mla-options.php:2129 includes/class-mla-options.php:2283
|
3590 |
msgid "Keep to Replace"
|
3591 |
msgstr ""
|
3592 |
|
3593 |
#: includes/class-mla-options.php:1209 includes/class-mla-options.php:1230
|
3594 |
#: includes/class-mla-options.php:1244 includes/class-mla-options.php:1258
|
3595 |
+
#: includes/class-mla-options.php:1287 includes/class-mla-options.php:2018
|
3596 |
+
#: includes/class-mla-options.php:2032 includes/class-mla-options.php:2120
|
3597 |
+
#: includes/class-mla-options.php:2134 includes/class-mla-options.php:2274
|
3598 |
+
#: includes/class-mla-options.php:2288 includes/class-mla-options.php:2316
|
3599 |
#, php-format
|
3600 |
msgid "%1$s changing %2$s value from %3$s."
|
3601 |
msgstr ""
|
3602 |
|
3603 |
+
#: includes/class-mla-options.php:1209 includes/class-mla-options.php:2032
|
3604 |
+
#: includes/class-mla-options.php:2134 includes/class-mla-options.php:2288
|
3605 |
#: includes/class-mla-settings-custom-fields-tab.php:498
|
3606 |
#: includes/class-mla-settings-custom-fields-tab.php:808
|
3607 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:548
|
3608 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:944
|
3609 |
msgid "Existing Text"
|
3610 |
msgstr ""
|
3611 |
|
3612 |
+
#: includes/class-mla-options.php:1216 includes/class-mla-options.php:2295
|
3613 |
#: includes/class-mla-settings-custom-fields-tab.php:503
|
3614 |
#: includes/class-mla-settings-custom-fields-tab.php:813
|
3615 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:563
|
3616 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:952
|
3617 |
msgid "Format"
|
3618 |
msgstr ""
|
3619 |
|
3620 |
#: includes/class-mla-options.php:1222 includes/class-mla-options.php:1236
|
3621 |
#: includes/class-mla-options.php:1250 includes/class-mla-options.php:1279
|
3622 |
+
#: includes/class-mla-options.php:2308
|
3623 |
msgid "unchecked to checked"
|
3624 |
msgstr ""
|
3625 |
|
3626 |
#: includes/class-mla-options.php:1225 includes/class-mla-options.php:1239
|
3627 |
#: includes/class-mla-options.php:1253 includes/class-mla-options.php:1282
|
3628 |
+
#: includes/class-mla-options.php:2311
|
3629 |
msgid "checked to unchecked"
|
3630 |
msgstr ""
|
3631 |
|
3640 |
msgid "Metavalue name"
|
3641 |
msgstr ""
|
3642 |
|
3643 |
+
#: includes/class-mla-options.php:1273 includes/class-mla-options.php:2302
|
3644 |
#: includes/class-mla-settings-custom-fields-tab.php:510
|
3645 |
#: includes/class-mla-settings-custom-fields-tab.php:820
|
3646 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:570
|
3647 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:959
|
3648 |
msgid "Option"
|
3649 |
msgstr ""
|
3650 |
|
3651 |
+
#: includes/class-mla-options.php:1287 includes/class-mla-options.php:2316
|
3652 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:582
|
3653 |
msgid "Delete NULL values"
|
3654 |
msgstr ""
|
3655 |
|
3656 |
+
#: includes/class-mla-options.php:1978
|
3657 |
#, php-format
|
3658 |
msgid "%1$s: No old values for %2$s."
|
3659 |
msgstr ""
|
3660 |
|
3661 |
+
#: includes/class-mla-options.php:1990
|
3662 |
msgid "Field Title"
|
3663 |
msgstr ""
|
3664 |
|
3665 |
+
#: includes/class-mla-options.php:1997 includes/class-mla-options.php:2099
|
3666 |
+
#: includes/class-mla-options.php:2253
|
3667 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:537
|
3668 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:933
|
3669 |
msgid "IPTC Value"
|
3670 |
msgstr ""
|
3671 |
|
3672 |
+
#: includes/class-mla-options.php:2004 includes/class-mla-options.php:2106
|
3673 |
+
#: includes/class-mla-options.php:2260
|
3674 |
msgid "EXIF Value"
|
3675 |
msgstr ""
|
3676 |
|
3677 |
+
#: includes/class-mla-options.php:2010 includes/class-mla-options.php:2112
|
3678 |
+
#: includes/class-mla-options.php:2266
|
3679 |
msgid "EXIF to IPTC"
|
3680 |
msgstr ""
|
3681 |
|
3682 |
+
#: includes/class-mla-options.php:2013 includes/class-mla-options.php:2115
|
3683 |
+
#: includes/class-mla-options.php:2269
|
3684 |
msgid "IPTC to EXIF"
|
3685 |
msgstr ""
|
3686 |
|
3687 |
+
#: includes/class-mla-options.php:2018 includes/class-mla-options.php:2120
|
3688 |
+
#: includes/class-mla-options.php:2274
|
3689 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:543
|
3690 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:939
|
3691 |
msgid "Priority"
|
3692 |
msgstr ""
|
3693 |
|
3694 |
+
#: includes/class-mla-options.php:2141
|
3695 |
msgid "Delimiter(s)"
|
3696 |
msgstr ""
|
3697 |
|
3885 |
#: includes/class-mla-polylang-support.php:2602
|
3886 |
#: includes/class-mla-settings-custom-fields-tab.php:686
|
3887 |
#: includes/class-mla-settings-custom-fields-tab.php:787
|
3888 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:826
|
3889 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:924
|
3890 |
#: includes/class-mla-settings-shortcodes-tab.php:733
|
3891 |
#: includes/class-mla-settings-upload-tab.php:485
|
3892 |
#: includes/class-mla-settings-upload-tab.php:531
|
3929 |
|
3930 |
#: includes/class-mla-settings-custom-fields-tab.php:54
|
3931 |
#: includes/class-mla-settings-custom-fields-tab.php:87
|
3932 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:77
|
3933 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:111
|
3934 |
#: includes/class-mla-settings-upload-tab.php:43
|
3935 |
#: includes/class-mla-settings-view-tab.php:43
|
3936 |
msgid "Error while making the changes."
|
3938 |
|
3939 |
#: includes/class-mla-settings-custom-fields-tab.php:56
|
3940 |
#: includes/class-mla-settings-custom-fields-tab.php:89
|
3941 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:79
|
3942 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:113
|
3943 |
#: includes/class-mla-settings-upload-tab.php:45
|
3944 |
#: includes/class-mla-settings-view-tab.php:45
|
3945 |
msgid "no slug"
|
3946 |
msgstr ""
|
3947 |
|
3948 |
#: includes/class-mla-settings-custom-fields-tab.php:62
|
3949 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:85
|
3950 |
msgid "Running"
|
3951 |
msgstr ""
|
3952 |
|
3953 |
#: includes/class-mla-settings-custom-fields-tab.php:67
|
3954 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:90
|
3955 |
msgid "Skipped"
|
3956 |
msgstr ""
|
3957 |
|
3958 |
#: includes/class-mla-settings-custom-fields-tab.php:68
|
3959 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:91
|
3960 |
msgid "Reprocessed"
|
3961 |
msgstr ""
|
3962 |
|
3963 |
#: includes/class-mla-settings-custom-fields-tab.php:69
|
3964 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:92
|
3965 |
msgid "PAUSED"
|
3966 |
msgstr ""
|
3967 |
|
3974 |
msgstr ""
|
3975 |
|
3976 |
#: includes/class-mla-settings-custom-fields-tab.php:169
|
3977 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:195
|
3978 |
msgid "No custom field mapping rules to process."
|
3979 |
msgstr ""
|
3980 |
|
3981 |
#: includes/class-mla-settings-custom-fields-tab.php:202
|
3982 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:237
|
3983 |
#, php-format
|
3984 |
msgid "%1$s mapping completed; %2$d attachment(s) examined, %3$d updated."
|
3985 |
msgstr ""
|
3986 |
|
3987 |
#: includes/class-mla-settings-custom-fields-tab.php:202
|
3988 |
#: includes/class-mla-settings-custom-fields-tab.php:205
|
3989 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:237
|
3990 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:240
|
3991 |
msgid "Custom field"
|
3992 |
msgstr ""
|
3993 |
|
3994 |
#: includes/class-mla-settings-custom-fields-tab.php:205
|
3995 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:240
|
3996 |
#, php-format
|
3997 |
msgid ""
|
3998 |
"%1$s mapping completed; %2$d attachment(s) examined, no changes detected."
|
3999 |
msgstr ""
|
4000 |
|
4001 |
#: includes/class-mla-settings-custom-fields-tab.php:252
|
4002 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:290
|
4003 |
msgid ": No custom field name selected/entered"
|
4004 |
msgstr ""
|
4005 |
|
4006 |
#: includes/class-mla-settings-custom-fields-tab.php:256
|
4007 |
#: includes/class-mla-settings-custom-fields-tab.php:323
|
4008 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:294
|
4009 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:363
|
4010 |
msgid ": Rule already exists for the new name"
|
4011 |
msgstr ""
|
4012 |
|
4013 |
#: includes/class-mla-settings-custom-fields-tab.php:274
|
4014 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:311
|
4015 |
msgid "Rule added"
|
4016 |
msgstr ""
|
4017 |
|
4018 |
#: includes/class-mla-settings-custom-fields-tab.php:277
|
4019 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:314
|
4020 |
msgid ": Rule addition failed"
|
4021 |
msgstr ""
|
4022 |
|
4023 |
#: includes/class-mla-settings-custom-fields-tab.php:327
|
4024 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:367
|
4025 |
msgid ": Invalid rule name must be changed"
|
4026 |
msgstr ""
|
4027 |
|
4028 |
#: includes/class-mla-settings-custom-fields-tab.php:350
|
4029 |
#: includes/class-mla-settings-custom-fields-tab.php:442
|
4030 |
#: includes/class-mla-settings-custom-fields-tab.php:998
|
4031 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:397
|
4032 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:402
|
4033 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:492
|
4034 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:1129
|
4035 |
msgid ": Rule update failed"
|
4036 |
msgstr ""
|
4037 |
|
4038 |
#: includes/class-mla-settings-custom-fields-tab.php:355
|
4039 |
#: includes/class-mla-settings-custom-fields-tab.php:445
|
4040 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:407
|
4041 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:495
|
4042 |
msgid "Rule updated"
|
4043 |
msgstr ""
|
4044 |
|
4045 |
#: includes/class-mla-settings-custom-fields-tab.php:379
|
4046 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:431
|
4047 |
#, php-format
|
4048 |
msgid "Custom Field Rule \"%1$s\" deleted."
|
4049 |
msgstr ""
|
4050 |
|
4051 |
#: includes/class-mla-settings-custom-fields-tab.php:466
|
4052 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:516
|
4053 |
msgid "Edit Rule"
|
4054 |
msgstr ""
|
4055 |
|
4056 |
#: includes/class-mla-settings-custom-fields-tab.php:475
|
4057 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:528
|
4058 |
msgid ""
|
4059 |
"This is the name of the custom field to which the rule applies.<br>Only one "
|
4060 |
"rule is allowed for each custom field."
|
4061 |
msgstr ""
|
4062 |
|
4063 |
#: includes/class-mla-settings-custom-fields-tab.php:476
|
4064 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:529
|
4065 |
msgid "Change Name"
|
4066 |
msgstr ""
|
4067 |
|
4068 |
#: includes/class-mla-settings-custom-fields-tab.php:477
|
4069 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:530
|
4070 |
msgid "Cancel Name Change"
|
4071 |
msgstr ""
|
4072 |
|
4073 |
#: includes/class-mla-settings-custom-fields-tab.php:478
|
4074 |
#: includes/class-mla-settings-custom-fields-tab.php:792
|
4075 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:531
|
4076 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:931
|
4077 |
msgid "Enter new field"
|
4078 |
msgstr ""
|
4079 |
|
4080 |
#: includes/class-mla-settings-custom-fields-tab.php:479
|
4081 |
#: includes/class-mla-settings-custom-fields-tab.php:793
|
4082 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:532
|
4083 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:932
|
4084 |
msgid "Cancel new field"
|
4085 |
msgstr ""
|
4086 |
|
4116 |
#: includes/class-mla-settings-custom-fields-tab.php:500
|
4117 |
#: includes/class-mla-settings-custom-fields-tab.php:810
|
4118 |
#: includes/class-mla-settings-custom-fields-tab.php:1547
|
4119 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:550
|
4120 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:946
|
4121 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:1668
|
4122 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:2536
|
4123 |
#: includes/class-mla-thumbnail-generation.php:650
|
4124 |
msgid "Keep"
|
4125 |
msgstr ""
|
4126 |
|
4127 |
#: includes/class-mla-settings-custom-fields-tab.php:505
|
4128 |
#: includes/class-mla-settings-custom-fields-tab.php:815
|
4129 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:565
|
4130 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:954
|
4131 |
msgid "Native"
|
4132 |
msgstr ""
|
4133 |
|
4134 |
#: includes/class-mla-settings-custom-fields-tab.php:507
|
4135 |
#: includes/class-mla-settings-custom-fields-tab.php:817
|
4136 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:567
|
4137 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:956
|
4138 |
msgid "Commas"
|
4139 |
msgstr ""
|
4140 |
|
4141 |
#: includes/class-mla-settings-custom-fields-tab.php:509
|
4142 |
#: includes/class-mla-settings-custom-fields-tab.php:819
|
4143 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:569
|
4144 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:958
|
4145 |
msgid "Raw"
|
4146 |
msgstr ""
|
4147 |
|
4148 |
#: includes/class-mla-settings-custom-fields-tab.php:512
|
4149 |
#: includes/class-mla-settings-custom-fields-tab.php:822
|
4150 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:572
|
4151 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:961
|
4152 |
msgid "Text"
|
4153 |
msgstr ""
|
4154 |
|
4155 |
#: includes/class-mla-settings-custom-fields-tab.php:514
|
4156 |
#: includes/class-mla-settings-custom-fields-tab.php:824
|
4157 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:574
|
4158 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:963
|
4159 |
msgid "Single"
|
4160 |
msgstr ""
|
4161 |
|
4162 |
#: includes/class-mla-settings-custom-fields-tab.php:516
|
4163 |
#: includes/class-mla-settings-custom-fields-tab.php:826
|
4164 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:576
|
4165 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:965
|
4166 |
msgid "Export"
|
4167 |
msgstr ""
|
4168 |
|
4169 |
#: includes/class-mla-settings-custom-fields-tab.php:518
|
4170 |
#: includes/class-mla-settings-custom-fields-tab.php:828
|
4171 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:578
|
4172 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:967
|
4173 |
msgid "Array"
|
4174 |
msgstr ""
|
4175 |
|
4176 |
#: includes/class-mla-settings-custom-fields-tab.php:520
|
4177 |
#: includes/class-mla-settings-custom-fields-tab.php:830
|
4178 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:580
|
4179 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:969
|
4180 |
msgid "Multi"
|
4181 |
msgstr ""
|
4182 |
|
4183 |
#: includes/class-mla-settings-custom-fields-tab.php:522
|
4184 |
#: includes/class-mla-settings-custom-fields-tab.php:832
|
4185 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:971
|
4186 |
msgid "Delete NULL Values"
|
4187 |
msgstr ""
|
4188 |
|
4189 |
#: includes/class-mla-settings-custom-fields-tab.php:523
|
4190 |
#: includes/class-mla-settings-custom-fields-tab.php:833
|
4191 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:583
|
4192 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:972
|
4193 |
msgid "Do not store empty custom field values"
|
4194 |
msgstr ""
|
4195 |
|
4198 |
#: includes/class-mla-settings-custom-fields-tab.php:1531
|
4199 |
#: includes/class-mla-settings-custom-fields-tab.php:1762
|
4200 |
#: includes/class-mla-settings-documentation-tab.php:1226
|
4201 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:587
|
4202 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:975
|
4203 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:1684
|
4204 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:1928
|
4205 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:2539
|
4206 |
#: includes/class-mla-settings-upload-tab.php:555
|
4207 |
#: includes/class-mla-settings-upload-tab.php:1041
|
4208 |
msgid "Active"
|
4213 |
#: includes/class-mla-settings-custom-fields-tab.php:1533
|
4214 |
#: includes/class-mla-settings-custom-fields-tab.php:1765
|
4215 |
#: includes/class-mla-settings-documentation-tab.php:1228
|
4216 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:589
|
4217 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:977
|
4218 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:1686
|
4219 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:1931
|
4220 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:2539
|
4221 |
#: includes/class-mla-settings-upload-tab.php:197
|
4222 |
#: includes/class-mla-settings-upload-tab.php:541
|
4223 |
#: includes/class-mla-settings-upload-tab.php:1039
|
4225 |
msgstr ""
|
4226 |
|
4227 |
#: includes/class-mla-settings-custom-fields-tab.php:560
|
4228 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:700
|
4229 |
#, php-format
|
4230 |
msgid "Custom Field Rule \"%1$s\": %2$s"
|
4231 |
msgstr ""
|
4237 |
#: includes/class-mla-settings-custom-fields-tab.php:611
|
4238 |
#: includes/class-mla-settings-custom-fields-tab.php:639
|
4239 |
#: includes/class-mla-settings-documentation-tab.php:277
|
4240 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:751
|
4241 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:779
|
4242 |
#: includes/class-mla-settings-shortcodes-tab.php:574
|
4243 |
#: includes/class-mla-settings-upload-tab.php:410
|
4244 |
#: includes/class-mla-settings-view-tab.php:257
|
4255 |
msgstr ""
|
4256 |
|
4257 |
#: includes/class-mla-settings-custom-fields-tab.php:755
|
4258 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:893
|
4259 |
msgid "DO NOT DO THE FOLLOWING (they will cause mapping to fail)"
|
4260 |
msgstr ""
|
4261 |
|
4262 |
#: includes/class-mla-settings-custom-fields-tab.php:756
|
4263 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:894
|
4264 |
msgid "Close the window"
|
4265 |
msgstr ""
|
4266 |
|
4267 |
#: includes/class-mla-settings-custom-fields-tab.php:757
|
4268 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:895
|
4269 |
msgid "Reload the page"
|
4270 |
msgstr ""
|
4271 |
|
4272 |
#: includes/class-mla-settings-custom-fields-tab.php:758
|
4273 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:896
|
4274 |
msgid "Click the browser’s Stop, Back or forward buttons"
|
4275 |
msgstr ""
|
4276 |
|
4277 |
#: includes/class-mla-settings-custom-fields-tab.php:759
|
4278 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:897
|
4279 |
msgid "Progress"
|
4280 |
msgstr ""
|
4281 |
|
4282 |
#: includes/class-mla-settings-custom-fields-tab.php:760
|
4283 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:898
|
4284 |
msgid "Pause"
|
4285 |
msgstr ""
|
4286 |
|
4287 |
#: includes/class-mla-settings-custom-fields-tab.php:762
|
4288 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:900
|
4289 |
msgid "Resume"
|
4290 |
msgstr ""
|
4291 |
|
4292 |
#: includes/class-mla-settings-custom-fields-tab.php:763
|
4293 |
#: includes/class-mla-settings-documentation-tab.php:152
|
4294 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:901
|
4295 |
#: includes/class-mla-settings-shortcodes-tab.php:497
|
4296 |
#: includes/class-mla-template-support.php:160
|
4297 |
#: includes/class-mla-template-support.php:166
|
4316 |
msgstr ""
|
4317 |
|
4318 |
#: includes/class-mla-settings-custom-fields-tab.php:776
|
4319 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:914
|
4320 |
msgid ""
|
4321 |
"You can find more information about using the controls in this tab to define "
|
4322 |
"mapping rules and apply them by clicking the \"Help\" control in the upper-"
|
4324 |
msgstr ""
|
4325 |
|
4326 |
#: includes/class-mla-settings-custom-fields-tab.php:781
|
4327 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:919
|
4328 |
#: includes/class-mla-settings-shortcodes-tab.php:731
|
4329 |
msgid "Search results for"
|
4330 |
msgstr ""
|
4331 |
|
4332 |
#: includes/class-mla-settings-custom-fields-tab.php:783
|
4333 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:920
|
4334 |
msgid "Search Rules Text"
|
4335 |
msgstr ""
|
4336 |
|
4337 |
#: includes/class-mla-settings-custom-fields-tab.php:785
|
4338 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:922
|
4339 |
msgid "Search Rules"
|
4340 |
msgstr ""
|
4341 |
|
4342 |
#: includes/class-mla-settings-custom-fields-tab.php:788
|
4343 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:925
|
4344 |
msgid "Execute All Rules"
|
4345 |
msgstr ""
|
4346 |
|
4347 |
#: includes/class-mla-settings-custom-fields-tab.php:789
|
4348 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:926
|
4349 |
msgid "Add New Custom Field Rule"
|
4350 |
msgstr ""
|
4351 |
|
4352 |
#: includes/class-mla-settings-custom-fields-tab.php:839
|
4353 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:978
|
4354 |
msgid "Add Rule"
|
4355 |
msgstr ""
|
4356 |
|
4357 |
#: includes/class-mla-settings-custom-fields-tab.php:910
|
4358 |
#: includes/class-mla-settings-custom-fields-tab.php:932
|
4359 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:1058
|
4360 |
msgid "Nothing to execute"
|
4361 |
msgstr ""
|
4362 |
|
4363 |
#: includes/class-mla-settings-custom-fields-tab.php:972
|
4364 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:1099
|
4365 |
msgid "Rule not found"
|
4366 |
msgstr ""
|
4367 |
|
4368 |
#: includes/class-mla-settings-custom-fields-tab.php:975
|
4369 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:1095
|
4370 |
msgid "Rule ID not found"
|
4371 |
msgstr ""
|
4372 |
|
4373 |
#: includes/class-mla-settings-custom-fields-tab.php:1251
|
4374 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:1386
|
4375 |
msgctxt "list_table_column"
|
4376 |
msgid "Bad Name"
|
4377 |
msgstr ""
|
4387 |
msgstr ""
|
4388 |
|
4389 |
#: includes/class-mla-settings-custom-fields-tab.php:1256
|
4390 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:1390
|
4391 |
msgctxt "list_table_column"
|
4392 |
msgid "Existing Text"
|
4393 |
msgstr ""
|
4394 |
|
4395 |
#: includes/class-mla-settings-custom-fields-tab.php:1257
|
4396 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:1394
|
4397 |
msgctxt "list_table_column"
|
4398 |
msgid "Delete NULL"
|
4399 |
msgstr ""
|
4400 |
|
4401 |
#: includes/class-mla-settings-custom-fields-tab.php:1258
|
4402 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:1395
|
4403 |
msgctxt "list_table_column"
|
4404 |
msgid "Format"
|
4405 |
msgstr ""
|
4406 |
|
4407 |
#: includes/class-mla-settings-custom-fields-tab.php:1259
|
4408 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:1396
|
4409 |
msgctxt "list_table_column"
|
4410 |
msgid "Option"
|
4411 |
msgstr ""
|
4412 |
|
4413 |
#: includes/class-mla-settings-custom-fields-tab.php:1398
|
4414 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:1535
|
4415 |
msgid "Map All Attachments"
|
4416 |
msgstr ""
|
4417 |
|
4418 |
#: includes/class-mla-settings-custom-fields-tab.php:1398
|
4419 |
#: includes/class-mla-settings-custom-fields-tab.php:1741
|
4420 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:1535
|
4421 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:1907
|
4422 |
msgid "Execute"
|
4423 |
msgstr ""
|
4424 |
|
4428 |
|
4429 |
#: includes/class-mla-settings-custom-fields-tab.php:1400
|
4430 |
#: includes/class-mla-settings-custom-fields-tab.php:1742
|
4431 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:1538
|
4432 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:1908
|
4433 |
msgid "Purge Values"
|
4434 |
msgstr ""
|
4435 |
|
4436 |
#: includes/class-mla-settings-custom-fields-tab.php:1759
|
4437 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:1925
|
4438 |
#: includes/class-mla-settings-shortcodes-tab.php:1317
|
4439 |
msgid "Any Status"
|
4440 |
msgstr ""
|
4470 |
msgstr ""
|
4471 |
|
4472 |
#: includes/class-mla-settings-custom-fields-tab.php:2517
|
4473 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:2861
|
4474 |
msgctxt "table_view_singular"
|
4475 |
msgid "Read Only"
|
4476 |
msgstr ""
|
4477 |
|
4478 |
#: includes/class-mla-settings-custom-fields-tab.php:2518
|
4479 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:2862
|
4480 |
msgctxt "table_view_plural"
|
4481 |
msgid "Read Only"
|
4482 |
msgstr ""
|
4668 |
msgid "Uninstalled"
|
4669 |
msgstr ""
|
4670 |
|
4671 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:164
|
4672 |
msgid "IPTC/EXIF mapping settings updated."
|
4673 |
msgstr ""
|
4674 |
|
4675 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:166
|
4676 |
msgid "IPTC/EXIF no mapping changes detected."
|
4677 |
msgstr ""
|
4678 |
|
4679 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:228
|
4680 |
msgid "updated."
|
4681 |
msgstr ""
|
4682 |
|
4683 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:536
|
4684 |
msgid "Notes for the IPTC/EXIF tab submenu table."
|
4685 |
msgstr ""
|
4686 |
|
4687 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:539
|
4688 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:935
|
4689 |
msgid "EXIF/Template Value"
|
4690 |
msgstr ""
|
4691 |
|
4692 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:542
|
4693 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:938
|
4694 |
msgid "EXIF element name or Content Template"
|
4695 |
msgstr ""
|
4696 |
|
4697 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:542
|
4698 |
msgid " (starting with \"template:\")"
|
4699 |
msgstr ""
|
4700 |
|
4701 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:545
|
4702 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:941
|
4703 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:1652
|
4704 |
msgid "IPTC"
|
4705 |
msgstr ""
|
4706 |
|
4707 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:547
|
4708 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:943
|
4709 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:1655
|
4710 |
msgid "EXIF"
|
4711 |
msgstr ""
|
4712 |
|
4713 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:555
|
4714 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:949
|
4715 |
msgid "Delimiters"
|
4716 |
msgstr ""
|
4717 |
|
4718 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:610
|
4719 |
msgid "Standard field mapping"
|
4720 |
msgstr ""
|
4721 |
|
4722 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:613
|
4723 |
msgid "Taxonomy term mapping"
|
4724 |
msgstr ""
|
4725 |
|
4726 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:636
|
4727 |
msgid "Custom field mapping"
|
4728 |
msgstr ""
|
4729 |
|
4730 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:737
|
4731 |
msgid "Edit IPTC EXIF Rule cancelled."
|
4732 |
msgstr ""
|
4733 |
|
4734 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:823
|
4735 |
msgid "IPTC/EXIF Mapping Support is disabled"
|
4736 |
msgstr ""
|
4737 |
|
4738 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:892
|
4739 |
msgid "IPTC & EXIF Mapping Progress"
|
4740 |
msgstr ""
|
4741 |
|
4742 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:910
|
4743 |
msgid "IPTC & EXIF Processing Options"
|
4744 |
msgstr ""
|
4745 |
|
4746 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:912
|
4747 |
msgid ""
|
4748 |
"In this tab you can define the rules for mapping IPTC (International Press "
|
4749 |
"Telecommunications Council) and EXIF (EXchangeable Image File) metadata to "
|
4750 |
"WordPress standard attachment fields, taxonomy terms and custom fields."
|
4751 |
msgstr ""
|
4752 |
|
4753 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:1387
|
4754 |
msgctxt "list_table_column"
|
4755 |
msgid "IPTC Value"
|
4756 |
msgstr ""
|
4757 |
|
4758 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:1388
|
4759 |
msgctxt "list_table_column"
|
4760 |
msgid "EXIF/Template Value"
|
4761 |
msgstr ""
|
4762 |
|
4763 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:1389
|
4764 |
msgctxt "list_table_column"
|
4765 |
msgid "Priority "
|
4766 |
msgstr ""
|
4767 |
|
4768 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:1392
|
4769 |
msgctxt "list_table_column"
|
4770 |
msgid "Delimiter(s)"
|
4771 |
msgstr ""
|
4772 |
|
4773 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:1393
|
4774 |
msgctxt "list_table_column"
|
4775 |
msgid "Parent"
|
4776 |
msgstr ""
|
4777 |
|
4778 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:1538
|
4779 |
msgid "Purge IPTC EXIF values"
|
4780 |
msgstr ""
|
4781 |
|
4782 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:2849
|
4783 |
msgctxt "table_view_singular"
|
4784 |
msgid "Standard"
|
4785 |
msgstr ""
|
4786 |
|
4787 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:2850
|
4788 |
msgctxt "table_view_plural"
|
4789 |
msgid "Standard"
|
4790 |
msgstr ""
|
4791 |
|
4792 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:2853
|
4793 |
msgctxt "table_view_singular"
|
4794 |
msgid "Taxonomy"
|
4795 |
msgstr ""
|
4796 |
|
4797 |
+
#: includes/class-mla-settings-iptc-exif-tab.php:2854
|
4798 |
msgctxt "table_view_plural"
|
4799 |
msgid "Taxonomy"
|
4800 |
msgstr ""
|
5722 |
msgid "Settings imported; %1$s updated, %2$s unchanged."
|
5723 |
msgstr ""
|
5724 |
|
5725 |
+
#: includes/class-mla-shortcode-support.php:523
|
5726 |
+
#: includes/class-mla-shortcode-support.php:2024
|
5727 |
+
#: includes/class-mla-shortcode-support.php:4416
|
5728 |
+
#: includes/class-mla-shortcode-support.php:4722
|
5729 |
msgid "Previous"
|
5730 |
msgstr ""
|
5731 |
|
5732 |
+
#: includes/class-mla-shortcode-support.php:524
|
5733 |
+
#: includes/class-mla-shortcode-support.php:2025
|
5734 |
+
#: includes/class-mla-shortcode-support.php:4463
|
5735 |
+
#: includes/class-mla-shortcode-support.php:4728
|
5736 |
msgid "Next"
|
5737 |
msgstr ""
|
5738 |
|
5739 |
+
#: includes/class-mla-shortcode-support.php:600
|
5740 |
+
#: includes/class-mla-shortcode-support.php:606
|
5741 |
+
#: includes/class-mla-shortcode-support.php:2171
|
5742 |
+
#: includes/class-mla-shortcode-support.php:2178
|
5743 |
+
#: includes/class-mla-shortcode-support.php:3650
|
5744 |
+
#: includes/class-mla-shortcode-support.php:3657
|
5745 |
#: includes/class-mla-template-support.php:598
|
5746 |
msgid "not found"
|
5747 |
msgstr ""
|
5748 |
|
5749 |
+
#: includes/class-mla-shortcode-support.php:637
|
5750 |
+
#: includes/class-mla-shortcode-support.php:2163
|
5751 |
+
#: includes/class-mla-shortcode-support.php:3642
|
5752 |
msgid "mla_debug REQUEST"
|
5753 |
msgstr ""
|
5754 |
|
5755 |
+
#: includes/class-mla-shortcode-support.php:641
|
5756 |
+
#: includes/class-mla-shortcode-support.php:643
|
5757 |
msgid "mla_debug attributes_errors"
|
5758 |
msgstr ""
|
5759 |
|
5760 |
+
#: includes/class-mla-shortcode-support.php:649
|
5761 |
+
#: includes/class-mla-shortcode-support.php:2164
|
5762 |
+
#: includes/class-mla-shortcode-support.php:3643
|
5763 |
+
#: includes/class-mla-shortcode-support.php:6446
|
5764 |
msgid "mla_debug attributes"
|
5765 |
msgstr ""
|
5766 |
|
5767 |
+
#: includes/class-mla-shortcode-support.php:650
|
5768 |
+
#: includes/class-mla-shortcode-support.php:2165
|
5769 |
+
#: includes/class-mla-shortcode-support.php:3644
|
5770 |
+
#: includes/class-mla-shortcode-support.php:6447
|
5771 |
msgid "mla_debug arguments"
|
5772 |
msgstr ""
|
5773 |
|
5774 |
+
#: includes/class-mla-shortcode-support.php:753
|
5775 |
msgid "mla_debug empty gallery"
|
5776 |
msgstr ""
|
5777 |
|
5778 |
+
#: includes/class-mla-shortcode-support.php:784
|
5779 |
msgid ""
|
5780 |
"<strong>Photonic-enhanced [mla_gallery]</strong> type must be "
|
5781 |
"<strong>default</strong>, query = "
|
5782 |
msgstr ""
|
5783 |
|
5784 |
+
#: includes/class-mla-shortcode-support.php:1268
|
5785 |
msgid "unknown"
|
5786 |
msgstr ""
|
5787 |
|
5788 |
+
#: includes/class-mla-shortcode-support.php:2302
|
5789 |
msgid "mla_debug empty cloud"
|
5790 |
msgstr ""
|
5791 |
|
5792 |
+
#: includes/class-mla-shortcode-support.php:2421
|
5793 |
msgid "mla_debug adding ANY terms"
|
5794 |
msgstr ""
|
5795 |
|
5796 |
+
#: includes/class-mla-shortcode-support.php:2459
|
5797 |
msgid "mla_debug adding NO terms"
|
5798 |
msgstr ""
|
5799 |
|
5800 |
+
#: includes/class-mla-shortcode-support.php:2497
|
5801 |
msgid "mla_debug adding IGNORE terms"
|
5802 |
msgstr ""
|
5803 |
|
5804 |
+
#: includes/class-mla-shortcode-support.php:3780
|
5805 |
msgid "mla_debug empty list"
|
5806 |
msgstr ""
|
5807 |
|
5808 |
+
#: includes/class-mla-shortcode-support.php:3803
|
5809 |
msgid "no-terms"
|
5810 |
msgstr ""
|
5811 |
|
5812 |
+
#: includes/class-mla-shortcode-support.php:5269
|
5813 |
+
#: includes/class-mla-shortcode-support.php:5339
|
|
|
5814 |
#: includes/class-mla-shortcode-support.php:5804
|
5815 |
+
#: includes/class-mla-shortcode-support.php:5820
|
5816 |
#: includes/class-mla-shortcode-support.php:5843
|
5817 |
+
#: includes/class-mla-shortcode-support.php:5859
|
5818 |
msgid "Invalid mla_gallery"
|
5819 |
msgstr ""
|
5820 |
|
5821 |
+
#: includes/class-mla-shortcode-support.php:6176
|
5822 |
+
#: includes/class-mla-shortcode-support.php:6531
|
5823 |
msgid "mla_debug query"
|
5824 |
msgstr ""
|
5825 |
|
5826 |
+
#: includes/class-mla-shortcode-support.php:6177
|
5827 |
msgid "mla_debug request"
|
5828 |
msgstr ""
|
5829 |
|
5830 |
+
#: includes/class-mla-shortcode-support.php:6178
|
5831 |
msgid "mla_debug query_vars"
|
5832 |
msgstr ""
|
5833 |
|
5834 |
+
#: includes/class-mla-shortcode-support.php:6179
|
5835 |
msgid "mla_debug post_count"
|
5836 |
msgstr ""
|
5837 |
|
5838 |
+
#: includes/class-mla-shortcode-support.php:6180
|
5839 |
msgid "mla_debug found_posts"
|
5840 |
msgstr ""
|
5841 |
|
5842 |
+
#: includes/class-mla-shortcode-support.php:6206
|
5843 |
msgid "mla_debug JOIN filter"
|
5844 |
msgstr ""
|
5845 |
|
5846 |
+
#: includes/class-mla-shortcode-support.php:6247
|
5847 |
msgid "mla_debug modified JOIN filter"
|
5848 |
msgstr ""
|
5849 |
|
5850 |
+
#: includes/class-mla-shortcode-support.php:6272
|
5851 |
msgid "mla_debug WHERE filter"
|
5852 |
msgstr ""
|
5853 |
|
5854 |
+
#: includes/class-mla-shortcode-support.php:6309
|
5855 |
msgid "mla_debug modified WHERE filter"
|
5856 |
msgstr ""
|
5857 |
|
5858 |
+
#: includes/class-mla-shortcode-support.php:6332
|
5859 |
msgid "mla_debug ORDER BY filter, incoming"
|
5860 |
msgstr ""
|
5861 |
|
5862 |
+
#: includes/class-mla-shortcode-support.php:6332
|
5863 |
msgid "Replacement ORDER BY clause"
|
5864 |
msgstr ""
|
5865 |
|
5866 |
+
#: includes/class-mla-shortcode-support.php:6373
|
5867 |
msgid "mla_debug posts_clauses filter"
|
5868 |
msgstr ""
|
5869 |
|
5870 |
+
#: includes/class-mla-shortcode-support.php:6391
|
5871 |
msgid "mla_debug posts_clauses_request filter"
|
5872 |
msgstr ""
|
5873 |
|
5874 |
+
#: includes/class-mla-shortcode-support.php:6532
|
5875 |
msgid "mla_debug results"
|
5876 |
msgstr ""
|
5877 |
|
5878 |
+
#: includes/class-mla-shortcode-support.php:6764
|
5879 |
msgid "Invalid taxonomy"
|
5880 |
msgstr ""
|
5881 |
|
5882 |
+
#: includes/class-mla-shortcode-support.php:6958
|
5883 |
msgid "mla_debug query arguments"
|
5884 |
msgstr ""
|
5885 |
|
5886 |
+
#: includes/class-mla-shortcode-support.php:6959
|
5887 |
msgid "mla_debug last_query"
|
5888 |
msgstr ""
|
5889 |
|
5890 |
+
#: includes/class-mla-shortcode-support.php:6960
|
5891 |
msgid "mla_debug last_error"
|
5892 |
msgstr ""
|
5893 |
|
5894 |
+
#: includes/class-mla-shortcode-support.php:6961
|
5895 |
msgid "mla_debug num_rows"
|
5896 |
msgstr ""
|
5897 |
|
5898 |
+
#: includes/class-mla-shortcode-support.php:6962
|
5899 |
msgid "mla_debug found_rows"
|
5900 |
msgstr ""
|
5901 |
|
languages/media-library-assistant-en_US.po
CHANGED
@@ -1,8 +1,8 @@
|
|
1 |
msgid ""
|
2 |
msgstr ""
|
3 |
"Project-Id-Version: Media Library Assistant\n"
|
4 |
-
"POT-Creation-Date: 2021-
|
5 |
-
"PO-Revision-Date: 2021-
|
6 |
"Language-Team: David Lingren <david@davidlingren.com>\n"
|
7 |
"MIME-Version: 1.0\n"
|
8 |
"Content-Type: text/plain; charset=UTF-8\n"
|
@@ -424,12 +424,21 @@ msgstr ""
|
|
424 |
|
425 |
msgid ""
|
426 |
"Check this option to add \"Parent Info\", \"Menu Order\", \"Attachment "
|
427 |
-
"Metadata\" and four \"where-used\" meta boxes
|
|
|
428 |
msgstr ""
|
429 |
|
430 |
msgid "You can also use Filters to customize the meta boxes."
|
431 |
msgstr ""
|
432 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
433 |
msgid "Media/Add New Enhancements"
|
434 |
msgstr ""
|
435 |
|
@@ -996,7 +1005,7 @@ msgid "Add Tax. Columns"
|
|
996 |
msgstr ""
|
997 |
|
998 |
msgid ""
|
999 |
-
"Check this option to add Term ID and Term-Taxonomy ID columns to the "
|
1000 |
"taxonomy edit admin submenu tables."
|
1001 |
msgstr ""
|
1002 |
|
@@ -1561,6 +1570,9 @@ msgstr ""
|
|
1561 |
msgid "Attachment Metadata"
|
1562 |
msgstr ""
|
1563 |
|
|
|
|
|
|
|
1564 |
#, php-format
|
1565 |
msgctxt "error_log"
|
1566 |
msgid "%1$s: %2$s discarding \"%3$s\"; no title/order"
|
1 |
msgid ""
|
2 |
msgstr ""
|
3 |
"Project-Id-Version: Media Library Assistant\n"
|
4 |
+
"POT-Creation-Date: 2021-10-17 15:54-0700\n"
|
5 |
+
"PO-Revision-Date: 2021-10-17 15:55-0700\n"
|
6 |
"Language-Team: David Lingren <david@davidlingren.com>\n"
|
7 |
"MIME-Version: 1.0\n"
|
8 |
"Content-Type: text/plain; charset=UTF-8\n"
|
424 |
|
425 |
msgid ""
|
426 |
"Check this option to add \"Parent Info\", \"Menu Order\", \"Attachment "
|
427 |
+
"Metadata\", \"Attachment File Metadata\" and four \"where-used\" meta boxes "
|
428 |
+
"to the Edit Media screen."
|
429 |
msgstr ""
|
430 |
|
431 |
msgid "You can also use Filters to customize the meta boxes."
|
432 |
msgstr ""
|
433 |
|
434 |
+
msgid "Enable File Attachment Metadata meta box"
|
435 |
+
msgstr ""
|
436 |
+
|
437 |
+
msgid ""
|
438 |
+
"Check this option to enable the \"Attachment File Metadata\" meta box on "
|
439 |
+
"the Edit Media screen."
|
440 |
+
msgstr ""
|
441 |
+
|
442 |
msgid "Media/Add New Enhancements"
|
443 |
msgstr ""
|
444 |
|
1005 |
msgstr ""
|
1006 |
|
1007 |
msgid ""
|
1008 |
+
"Check this option to add Parent, Term ID and Term-Taxonomy ID columns to the "
|
1009 |
"taxonomy edit admin submenu tables."
|
1010 |
msgstr ""
|
1011 |
|
1570 |
msgid "Attachment Metadata"
|
1571 |
msgstr ""
|
1572 |
|
1573 |
+
msgid "Attachment File Metadata"
|
1574 |
+
msgstr ""
|
1575 |
+
|
1576 |
#, php-format
|
1577 |
msgctxt "error_log"
|
1578 |
msgid "%1$s: %2$s discarding \"%3$s\"; no title/order"
|
languages/media-library-assistant-en_US.pot
CHANGED
@@ -2,7 +2,7 @@
|
|
2 |
msgid ""
|
3 |
msgstr ""
|
4 |
"Project-Id-Version: Media Library Assistant\n"
|
5 |
-
"POT-Creation-Date: 2021-
|
6 |
"PO-Revision-Date: 2015-08-21 21:38-0800\n"
|
7 |
"Last-Translator: David Lingren <david@fairtradejudaica.org>\n"
|
8 |
"Language-Team: David Lingren <david@davidlingren.com>\n"
|
@@ -425,12 +425,21 @@ msgstr ""
|
|
425 |
|
426 |
msgid ""
|
427 |
"Check this option to add \"Parent Info\", \"Menu Order\", \"Attachment "
|
428 |
-
"Metadata\" and four \"where-used\" meta boxes
|
|
|
429 |
msgstr ""
|
430 |
|
431 |
msgid "You can also use Filters to customize the meta boxes."
|
432 |
msgstr ""
|
433 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
434 |
msgid "Media/Add New Enhancements"
|
435 |
msgstr ""
|
436 |
|
@@ -997,7 +1006,7 @@ msgid "Add Tax. Columns"
|
|
997 |
msgstr ""
|
998 |
|
999 |
msgid ""
|
1000 |
-
"Check this option to add Term ID and Term-Taxonomy ID columns to the "
|
1001 |
"taxonomy edit admin submenu tables."
|
1002 |
msgstr ""
|
1003 |
|
@@ -1562,6 +1571,9 @@ msgstr ""
|
|
1562 |
msgid "Attachment Metadata"
|
1563 |
msgstr ""
|
1564 |
|
|
|
|
|
|
|
1565 |
#, php-format
|
1566 |
msgctxt "error_log"
|
1567 |
msgid "%1$s: %2$s discarding \"%3$s\"; no title/order"
|
2 |
msgid ""
|
3 |
msgstr ""
|
4 |
"Project-Id-Version: Media Library Assistant\n"
|
5 |
+
"POT-Creation-Date: 2021-10-17 15:54-0700\n"
|
6 |
"PO-Revision-Date: 2015-08-21 21:38-0800\n"
|
7 |
"Last-Translator: David Lingren <david@fairtradejudaica.org>\n"
|
8 |
"Language-Team: David Lingren <david@davidlingren.com>\n"
|
425 |
|
426 |
msgid ""
|
427 |
"Check this option to add \"Parent Info\", \"Menu Order\", \"Attachment "
|
428 |
+
"Metadata\", \"Attachment File Metadata\" and four \"where-used\" meta boxes "
|
429 |
+
"to the Edit Media screen."
|
430 |
msgstr ""
|
431 |
|
432 |
msgid "You can also use Filters to customize the meta boxes."
|
433 |
msgstr ""
|
434 |
|
435 |
+
msgid "Enable File Attachment Metadata meta box"
|
436 |
+
msgstr ""
|
437 |
+
|
438 |
+
msgid ""
|
439 |
+
"Check this option to enable the \"Attachment File Metadata\" meta box on "
|
440 |
+
"the Edit Media screen."
|
441 |
+
msgstr ""
|
442 |
+
|
443 |
msgid "Media/Add New Enhancements"
|
444 |
msgstr ""
|
445 |
|
1006 |
msgstr ""
|
1007 |
|
1008 |
msgid ""
|
1009 |
+
"Check this option to add Parent, Term ID and Term-Taxonomy ID columns to the "
|
1010 |
"taxonomy edit admin submenu tables."
|
1011 |
msgstr ""
|
1012 |
|
1571 |
msgid "Attachment Metadata"
|
1572 |
msgstr ""
|
1573 |
|
1574 |
+
msgid "Attachment File Metadata"
|
1575 |
+
msgstr ""
|
1576 |
+
|
1577 |
#, php-format
|
1578 |
msgctxt "error_log"
|
1579 |
msgid "%1$s: %2$s discarding \"%3$s\"; no title/order"
|
readme.txt
CHANGED
@@ -3,9 +3,9 @@ Contributors: dglingren
|
|
3 |
Donate link: http://davidlingren.com/#donate
|
4 |
Tags: media, media library, gallery, images, categories, tags, attachments, IPTC, EXIF, XMP, GPS, PDF, metadata, photos, photographs, photo albums, MIME, mime-type, icon, upload, file extensions, WPML, Polylang
|
5 |
Requires at least: 3.5.0
|
6 |
-
Tested up to: 5.8
|
7 |
Requires PHP: 5.3
|
8 |
-
Stable tag: 2.
|
9 |
License: GPLv2 or later
|
10 |
License URI: http://www.gnu.org/licenses/gpl-2.0.html
|
11 |
|
@@ -187,6 +187,25 @@ All of the MLA source code has been annotated with "DocBlocks", a special type o
|
|
187 |
|
188 |
== Changelog ==
|
189 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
190 |
= 2.97 =
|
191 |
* New: A "Description" element has been added to the "Custom Fields" and "IPTC/EXIF" mapping rule definitions.
|
192 |
* New: For `[mla_tag_cloud]`, the `current_item` and `current_item_class` are managed more or less automatically.
|
@@ -344,8 +363,8 @@ All of the MLA source code has been annotated with "DocBlocks", a special type o
|
|
344 |
|
345 |
== Upgrade Notice ==
|
346 |
|
347 |
-
= 2.
|
348 |
-
|
349 |
|
350 |
== Other Notes ==
|
351 |
|
3 |
Donate link: http://davidlingren.com/#donate
|
4 |
Tags: media, media library, gallery, images, categories, tags, attachments, IPTC, EXIF, XMP, GPS, PDF, metadata, photos, photographs, photo albums, MIME, mime-type, icon, upload, file extensions, WPML, Polylang
|
5 |
Requires at least: 3.5.0
|
6 |
+
Tested up to: 5.8.1
|
7 |
Requires PHP: 5.3
|
8 |
+
Stable tag: 2.98
|
9 |
License: GPLv2 or later
|
10 |
License URI: http://www.gnu.org/licenses/gpl-2.0.html
|
11 |
|
187 |
|
188 |
== Changelog ==
|
189 |
|
190 |
+
= 2.98 =
|
191 |
+
|
192 |
+
* New: A new **"Attachment File Metadata" meta box on the Media/Edit Media screen** displays IPTC, EXIF, XMP, ID3, PDF and/or MSO metadata embedded in the item's file. More information in the pull-down Help menu on that screen.
|
193 |
+
* New: For `[mla_gallery]`, a special `mla_minimum` parameter lets you display an empty gallery unless a minimum number of items is selected.
|
194 |
+
* New: The "MLA Advanced Custom Fields Example" plugin now supports ACF "Select" fields, mapping between the field label and field value on the Media/Assistant submenu table and the Bulk and Quick Areas.
|
195 |
+
* New: The new "MLA Filename Issues Example" plugin creates a custom data source to help identify items with duplicate file names for cleanup consideration.
|
196 |
+
* New: The term Parent column has been added to the Settings/Media Library Assistant Debug tab "Add Tax. Columns" results.
|
197 |
+
* Fix: Custom Field Rules with an "Inactive" status are now excluded from Media/Assistant submenu table columns and the Quick and Bulk Edit areas.
|
198 |
+
* Fix: An inconsistency in counting attachments that caused the Settings/Media Library Assistant IPTC/EXIF tab "Execute" and "Execute All Rules" actions to fail has been corrected.
|
199 |
+
* Fix: An XMP metadata parsing error for empty "rdf:Description" values has been corrected.
|
200 |
+
* Fix: The "MLA Custom Field Search Example" plugin has been updated to use the latest plugin settings class file, so the class can be shared with other example plugins.
|
201 |
+
* Fix: The old "MLA ACF Checkbox Example" plugin has been flagged as obsolete, replaced by the more useful "MLA Advanced Custom Fields Example" plugin.
|
202 |
+
* Fix: For the Media/Assistant Quick Edit Area, users with the 'unfilitered_html' permission can add any HTML tag to a custom field value.
|
203 |
+
* Fix: Incorrect display of counts for `[mla_tag_cloud]` and `[mla_term_list]` terms with more than 1,000 assigned items has been corrected.
|
204 |
+
* Fix: Toolbar cropping in the "Add media" popup window for WordPress versions before 5.8 has been corrected.
|
205 |
+
* Fix: Toolbar cropping in the "Add media" popup window when the Disable Gutenberg (by Jeff Starr) plugin is active has been corrected.
|
206 |
+
* Fix: For the "gallery in" and "MLA Gallery in" reporting, PHP "trigger_error" Warning messages have been converted to MLA debug logging messages.
|
207 |
+
* Fix: For the "MLA Insert Fixit" example plugin, a PHP 8.0+ Deprecation Error has been resolved.
|
208 |
+
|
209 |
= 2.97 =
|
210 |
* New: A "Description" element has been added to the "Custom Fields" and "IPTC/EXIF" mapping rule definitions.
|
211 |
* New: For `[mla_tag_cloud]`, the `current_item` and `current_item_class` are managed more or less automatically.
|
363 |
|
364 |
== Upgrade Notice ==
|
365 |
|
366 |
+
= 2.98 =
|
367 |
+
New "Attachment File Metadata" meta box on the Media/Edit Media screen. Enhanced "MLA Advanced Custom Fields Example" and new "MLA Filename Issues Example" plugins. Five enhancements in all, eleven fixes.
|
368 |
|
369 |
== Other Notes ==
|
370 |
|
tpls/documentation-settings-tab.tpl
CHANGED
@@ -20,6 +20,7 @@ For more information about the example plugins, jump to <a href="#mla_example_pl
|
|
20 |
<li><a href="#size">Size</a></li>
|
21 |
<li><a href="#link">Link</a></li>
|
22 |
<li><a href="#named_transfer">Transfer by Item Name</a></li>
|
|
|
23 |
<li><a href="#include_exclude">Include, Exclude</a></li>
|
24 |
<li><a href="#post_id_ids_post_parent">Post ID, "ids", Post Parent</a></li>
|
25 |
<li><a href="#author_author_name">Author, Author Name</a></li>
|
@@ -721,6 +722,11 @@ Where the query arguments are:
|
|
721 |
</table>
|
722 |
<p>
|
723 |
This alternate approach provides a small measure of security by obscuring the directory structure used to locate the file. It also makes it possible to generate SEO-friendly "pretty links" and use the <a href="https://codex.wordpress.org/Rewrite_API" title="Codex article: Rewrite API" target="_blank">WordPress Rewrite API</a> to translate the pretty links to the Transfer by Item Name syntax. The <a title="Find the Pretty Links Example" href="[+example_url+]&mla-example-search=Search+Plugins&s=%22MLA+Item+Transfer+Pretty+Links%22" class="mla-doc-bold-link">MLA Item Transfer Pretty Links</a> example plugin shows how this can be done.
|
|
|
|
|
|
|
|
|
|
|
724 |
<a name="include_exclude"></a>
|
725 |
</p>
|
726 |
<h4>Include, Exclude</h4>
|
@@ -1170,7 +1176,7 @@ The <code>[mla_gallery]</code> shortcode supports the simple custom field parame
|
|
1170 |
</tr>
|
1171 |
<tr>
|
1172 |
<td class="mla-doc-table-label">meta_compare (string)</td>
|
1173 |
-
<td>Operator to test the 'meta_value'. Possible values are '=', '!=', '>', '>=', '<', '<=', 'LIKE', 'NOT LIKE', 'IN', 'NOT IN', 'BETWEEN', 'NOT BETWEEN', 'NOT EXISTS', 'REGEXP', 'NOT REGEXP' or 'RLIKE'. Default value is '='. </td>
|
1174 |
</tr>
|
1175 |
</table>
|
1176 |
<p>
|
@@ -2095,7 +2101,11 @@ Tag cloud <strong>item-specific substitution parameters</strong> for the Markup
|
|
2095 |
</tr>
|
2096 |
<tr>
|
2097 |
<td class="mla-doc-table-label">count</td>
|
2098 |
-
<td>the number of attachments associated with the term</td>
|
|
|
|
|
|
|
|
|
2099 |
</tr>
|
2100 |
<tr>
|
2101 |
<td class="mla-doc-table-label">scaled_count</td>
|
@@ -3182,7 +3192,11 @@ Term list <strong>item-specific substitution parameters</strong> for the Markup
|
|
3182 |
</tr>
|
3183 |
<tr>
|
3184 |
<td class="mla-doc-table-label">count</td>
|
3185 |
-
<td>the number of attachments associated with the term</td>
|
|
|
|
|
|
|
|
|
3186 |
</tr>
|
3187 |
<tr>
|
3188 |
<td class="mla-doc-table-label">link_url</td>
|
@@ -6244,6 +6258,10 @@ The example code documents each hook with comments in the filter function that i
|
|
6244 |
<td class="mla-doc-hook-definition">modify the rows, columns and content of the "Attachment Metadata" meta box.</td>
|
6245 |
</tr>
|
6246 |
<tr>
|
|
|
|
|
|
|
|
|
6247 |
<td class="mla-doc-hook-label">mla_featured_in_meta_box<br />mla_featured_in_meta_box_html</td>
|
6248 |
<td class="mla-doc-hook-definition">modify the rows, columns and content of the "Featured in" meta box.</td>
|
6249 |
</tr>
|
20 |
<li><a href="#size">Size</a></li>
|
21 |
<li><a href="#link">Link</a></li>
|
22 |
<li><a href="#named_transfer">Transfer by Item Name</a></li>
|
23 |
+
<li><a href="#mla_minimum">Minimum Gallery Size</a></li>
|
24 |
<li><a href="#include_exclude">Include, Exclude</a></li>
|
25 |
<li><a href="#post_id_ids_post_parent">Post ID, "ids", Post Parent</a></li>
|
26 |
<li><a href="#author_author_name">Author, Author Name</a></li>
|
722 |
</table>
|
723 |
<p>
|
724 |
This alternate approach provides a small measure of security by obscuring the directory structure used to locate the file. It also makes it possible to generate SEO-friendly "pretty links" and use the <a href="https://codex.wordpress.org/Rewrite_API" title="Codex article: Rewrite API" target="_blank">WordPress Rewrite API</a> to translate the pretty links to the Transfer by Item Name syntax. The <a title="Find the Pretty Links Example" href="[+example_url+]&mla-example-search=Search+Plugins&s=%22MLA+Item+Transfer+Pretty+Links%22" class="mla-doc-bold-link">MLA Item Transfer Pretty Links</a> example plugin shows how this can be done.
|
725 |
+
<a name="mla_minimum"></a>
|
726 |
+
</p>
|
727 |
+
<h4>Minimum Gallery Size</h4>
|
728 |
+
<p>
|
729 |
+
You can add <code>mla_minimum=(count)</code> to display an empty gallery if the number of items available for display is less than the number specified. For example, to display an empty gallery when just one item is available, code <code>mla_minimum=2</code>.
|
730 |
<a name="include_exclude"></a>
|
731 |
</p>
|
732 |
<h4>Include, Exclude</h4>
|
1176 |
</tr>
|
1177 |
<tr>
|
1178 |
<td class="mla-doc-table-label">meta_compare (string)</td>
|
1179 |
+
<td>Operator to test the 'meta_value'. Possible values are '=', '!=', '>', '>=', '<', '<=', 'LIKE', 'NOT LIKE', 'IN', 'NOT IN', 'BETWEEN', 'NOT BETWEEN', 'EXISTS', 'NOT EXISTS', 'REGEXP', 'NOT REGEXP' or 'RLIKE'. Default value is '='. </td>
|
1180 |
</tr>
|
1181 |
</table>
|
1182 |
<p>
|
2101 |
</tr>
|
2102 |
<tr>
|
2103 |
<td class="mla-doc-table-label">count</td>
|
2104 |
+
<td>the number of attachments associated with the term. This will include attachments assigned to child terms if the <code>pad_counts=true</code> parameter is present.</td>
|
2105 |
+
</tr>
|
2106 |
+
<tr>
|
2107 |
+
<td class="mla-doc-table-label">term_count</td>
|
2108 |
+
<td>the number of attachments explicitly associated with the term; not its children. This is only defined when the <code>pad_counts=true</code> parameter is present.</td>
|
2109 |
</tr>
|
2110 |
<tr>
|
2111 |
<td class="mla-doc-table-label">scaled_count</td>
|
3192 |
</tr>
|
3193 |
<tr>
|
3194 |
<td class="mla-doc-table-label">count</td>
|
3195 |
+
<td>the number of attachments associated with the term. This will include attachments assigned to child terms if the <code>pad_counts=true</code> parameter is present.</td>
|
3196 |
+
</tr>
|
3197 |
+
<tr>
|
3198 |
+
<td class="mla-doc-table-label">term_count</td>
|
3199 |
+
<td>the number of attachments explicitly associated with the term; not its children. This is only defined when the <code>pad_counts=true</code> parameter is present.</td>
|
3200 |
</tr>
|
3201 |
<tr>
|
3202 |
<td class="mla-doc-table-label">link_url</td>
|
6258 |
<td class="mla-doc-hook-definition">modify the rows, columns and content of the "Attachment Metadata" meta box.</td>
|
6259 |
</tr>
|
6260 |
<tr>
|
6261 |
+
<td class="mla-doc-hook-label">mla_file_metadata_meta_box<br />mla_file_metadata_meta_box_html</td>
|
6262 |
+
<td class="mla-doc-hook-definition">modify the rows, columns and content of the "Attachment File Metadata" meta box.</td>
|
6263 |
+
</tr>
|
6264 |
+
<tr>
|
6265 |
<td class="mla-doc-hook-label">mla_featured_in_meta_box<br />mla_featured_in_meta_box_html</td>
|
6266 |
<td class="mla-doc-hook-definition">modify the rows, columns and content of the "Featured in" meta box.</td>
|
6267 |
</tr>
|
tpls/help-for-edit_attachment.tpl
CHANGED
@@ -20,6 +20,9 @@ Supports Parent Info and Menu Order
|
|
20 |
Displays Image Metadata
|
21 |
</li>
|
22 |
<li>
|
|
|
|
|
|
|
23 |
Displays where-used information; Featured in, Inserted in, Gallery in and MLA Gallery in
|
24 |
</li>
|
25 |
</ul>
|
@@ -31,7 +34,15 @@ Displays where-used information; Featured in, Inserted in, Gallery in and MLA Ga
|
|
31 |
<!-- title="Parent Info" order="30" -->
|
32 |
<p>The “Parent Info” field displays the Post ID, type and title of the post or page to which the item is attached. It will display “0 (unattached)” if there is no parent post or page.</p>
|
33 |
<p>You can change the post or page to which the item is attached by changing the Post ID value and clicking the “Update” button. Changing the Post ID value to zero (0) will “unattach” the item.</p>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
34 |
<!-- template="mla-mapping-actions" -->
|
35 |
-
<!-- title="Metadata Mapping" order="
|
36 |
<p>The “Map Custom Field Metadata” and “Map IPTC/EXIF Metadata” links let you create or update attachment values by applying the rules you define on the Media Library Assistant Settings page. The links are located in the “Save” meta box in the upper-right part of the screen, just below the Last Modified date and time.</p>
|
37 |
<p>When you click on one of the two links, all of the mapping rules for that type of metadata will be applied to the attachment you are editing. The updates are immediate; you do not need to click the “Update” button to make them permanent.</p>
|
20 |
Displays Image Metadata
|
21 |
</li>
|
22 |
<li>
|
23 |
+
Displays IPTC, EXIF, XMP, ID3, PDF and/or MSO metadata embedded in the item's file
|
24 |
+
</li>
|
25 |
+
<li>
|
26 |
Displays where-used information; Featured in, Inserted in, Gallery in and MLA Gallery in
|
27 |
</li>
|
28 |
</ul>
|
34 |
<!-- title="Parent Info" order="30" -->
|
35 |
<p>The “Parent Info” field displays the Post ID, type and title of the post or page to which the item is attached. It will display “0 (unattached)” if there is no parent post or page.</p>
|
36 |
<p>You can change the post or page to which the item is attached by changing the Post ID value and clicking the “Update” button. Changing the Post ID value to zero (0) will “unattach” the item.</p>
|
37 |
+
<!-- template="mla-file-metadata" -->
|
38 |
+
<!-- title="Attachment File Metadata" order="40" -->
|
39 |
+
<p>The “Attachment File Metadata” field displays the IPTC, EXIF, XMP, ID3, PDF and/or MSO metadata embedded in the item's file. The key to the left of the "=>" separator shows the syntax you can use to access the value as a substitution parameter.</p>
|
40 |
+
<p><strong>Compound names</strong> are used to access elements within arrays, e.g., <code>xmp:dc.description</code> is used to specify the description element in the XMP "dc" namespace. You can also use a "*" placeholder to denote "all elements at this level" and return an array of lower-level elements. For example, you can code <code>xmp:dc.subject.*</code> to return an array of keywords from the subject element of the XMP "dc" namespace.
|
41 |
+
</p>
|
42 |
+
<p>
|
43 |
+
Because the memory and processing required to populate this meta box can be significant you can disable this meta box with an option in the "Media/Edit Media Enhancements" section of the Settings/Media Library Assistant General tab.
|
44 |
+
</p>
|
45 |
<!-- template="mla-mapping-actions" -->
|
46 |
+
<!-- title="Metadata Mapping" order="50" -->
|
47 |
<p>The “Map Custom Field Metadata” and “Map IPTC/EXIF Metadata” links let you create or update attachment values by applying the rules you define on the Media Library Assistant Settings page. The links are located in the “Save” meta box in the upper-right part of the screen, just below the Last Modified date and time.</p>
|
48 |
<p>When you click on one of the two links, all of the mapping rules for that type of metadata will be applied to the attachment you are editing. The updates are immediate; you do not need to click the “Update” button to make them permanent.</p>
|