ich habe schon nach lösung gesucht und viele ungelöste oder obsolete themen gefunden.
Benutzerdefinierte WordPress-Galerieoption | Benutzerdefiniertes Feld für die Standardgalerie
Ich möchte jedoch einige benutzerdefinierte Felder (Checkboxen, Cyclebuttons usw.) hinzufügen, um der Galerie-Verknüpfung Attribute hinzuzufügen. Hat jemand ein paar Schnipsel?
BEARBEITEN: Endlich habe ich dieses https://wordpress.org/support/topic/how-to-add-fields-to-gallery-settings gefunden und es tut alles, was ich will. :) rownn
EDIT: Basierend auf dem oberen Link habe ich folgende Zeilen geschrieben.
add_action('print_media_templates', function(){
?>
<script type="text/html" id="tmpl-custom-gallery-setting">
<h3 style="z-index: -1;">___________________________________________________________________________________________</h3>
<h3>Custom Settings</h3>
<label class="setting">
<span><?php _e('Text'); ?></span>
<input type="text" value="" data-setting="ds_text" style="float:left;">
</label>
<label class="setting">
<span><?php _e('Textarea'); ?></span>
<textarea value="" data-setting="ds_textarea" style="float:left;"></textarea>
</label>
<label class="setting">
<span><?php _e('Number'); ?></span>
<input type="number" value="" data-setting="ds_number" style="float:left;" min="1" max="9">
</label>
<label class="setting">
<span><?php _e('Select'); ?></span>
<select data-setting="ds_select">
<option value="option1"> 'Option-1' </option>
<option value="option2"> 'Option-2' </option>
</select>
</label>
<label class="setting">
<span><?php _e('Bool'); ?></span>
<input type="checkbox" data-setting="ds_bool">
</label>
</script>
<script>
jQuery(document).ready(function()
{
_.extend(wp.media.gallery.defaults, {
ds_text: 'no text',
ds_textarea: 'no more text',
ds_number: "3",
ds_select: 'option1',
ds_bool: false,
ds_text1: 'dummdideldei'
});
wp.media.view.Settings.Gallery = wp.media.view.Settings.Gallery.extend({
template: function(view){
return wp.media.template('gallery-settings')(view)
+ wp.media.template('custom-gallery-setting')(view);
}
});
});
</script>
<?php
});
UserInterface Shortcode
Alles funktioniert gut nebenbei: Das Zahlenfeld ist nicht mit einem Shortcode gefüllt. Ich glaube, der Grund dafür ist, dass der HTML-Input-Tag-Typ "Zahl" nur Ganzzahlen für "Wert" akzeptiert. Was muss ich zum Code hinzufügen, um die Zeichenfolge von ds_number in int zu ändern?
Grüße rownn
quelle
Antworten:
Danke für deinen Code. Ich habe dieses Problem weiter untersucht (dies ist kein Problem bei der Formatierung von Ganzzahlen). Die einzige Lösung, die ich für Zahlenfelder gefunden habe, ist, mehr WP JS zu patchen. Hier ist der gesamte Code mit Änderungen, die jeden Eingabetyp unterstützen:
quelle