t-justify.js 77628cf8bf first comm il y a 3 ans css-text-orientation.js 77628cf8bf first comm il y a 3 ans css-text-spacing.js 77628cf8bf first comm il y a 3 ans css-textshadow.js 77628cf8bf first comm il y a 3 ans css-touch-action.js 77628cf8bf first comm il y a 3 ans css-transitions.js 77628cf8bf first comm il y a 3 ans css-unicode-bidi.js 77628cf8bf first comm il y a 3 ans css-unset-value.js 77628cf8bf first comm il y a 3 ans css-variables.js 77628cf8bf first comm il y a 3 ans css-when-else.js 77628cf8bf first comm il y a 3 ans css-widows-orphans.js 77628cf8bf first comm il y a 3 ans css-width-stretch.js 77628cf8bf first comm il y a 3 ans css-writing-mode.js 77628cf8bf first comm il y a 3 ans css-zoom.js 77628cf8bf first comm il y a 3 ans css3-attr.js 77628cf8bf first comm il y a 3 ans css3-boxsizing.js 77628cf8bf first comm il y a 3 ans css3-colors.js 77628cf8bf first comm il y a 3 ans css3-cursors-grab.js 77628cf8bf first comm il y a 3 ans css3-cursors-newer.js 77628cf8bf first comm il y a 3 ans css3-cursors.js 77628cf8bf first comm il y a 3 ans css3-tabsize.js 77628cf8bf first comm il y a 3 ans currentcolor.js 77628cf8bf first comm il y a 3 ans custom-elements.js 77628cf8bf first comm il y a 3 ans custom-elementsv1.js 77628cf8bf first comm il y a 3 ans customevent.js 77628cf8bf first comm il y a 3 ans datalist.js 77628cf8bf first comm il y a 3 ans dataset.js 77628cf8bf first comm il y a 3 ans datauri.js 77628cf8bf first comm il y a 3 ans date-tolocaledatestring.js 77628cf8bf first comm il y a 3 ans declarative-shadow-dom.js 77628cf8bf first comm il y a 3 ans decorators.js 77628cf8bf first comm il y a 3 ans details.js 77628cf8bf first comm il y a 3 ans deviceorientation.js 77628cf8bf first comm il y a 3 ans devicepixelratio.js 77628cf8bf first comm il y a 3 ans dialog.js 77628cf8bf first comm il y a 3 ans dispatchevent.js 77628cf8bf first comm il y a 3 ans dnssec.js 77628cf8bf first comm il y a 3 ans do-not-track.js 77628cf8bf first comm il y a 3 ans document-currentscript.js 77628cf8bf first comm il y a 3 ans document-evaluate-xpath.js 77628cf8bf first comm il y a 3 ans document-execcommand.js 77628cf8bf first comm il y a 3 ans document-policy.js 77628cf8bf first comm il y a 3 ans document-scrollingelement.js 77628cf8bf first comm il y a 3 ans documenthead.js 77628cf8bf first comm il y a 3 ans dom-manip-convenience.js 77628cf8bf first comm il y a 3 ans dom-range.js 77628cf8bf first comm il y a 3 ans domcontentloaded.js 77628cf8bf first comm il y a 3 ans dommatrix.js 77628cf8bf first comm il y a 3 ans download.js 77628cf8bf first comm il y a 3 ans dragndrop.js 77628cf8bf first comm il y a 3 ans element-closest.js 77628cf8bf first comm il y a 3 ans element-from-point.js 77628cf8bf first comm il y a 3 ans element-scroll-methods.js 77628cf8bf first comm il y a 3 ans eme.js 77628cf8bf first comm il y a 3 ans eot.js 77628cf8bf first comm il y a 3 ans es5.js 77628cf8bf first comm il y a 3 ans es6-class.js 77628cf8bf first comm il y a 3 ans es6-generators.js 77628cf8bf first comm il y a 3 ans es6-module-dynamic-import.js 77628cf8bf first comm il y a 3 ans es6-module.js 77628cf8bf first comm il y a 3 ans es6-number.js 77628cf8bf first comm il y a 3 ans es6-string-includes.js 77628cf8bf first comm il y a 3 ans es6.js 77628cf8bf first comm il y a 3 ans eventsource.js 77628cf8bf first comm il y a 3 ans extended-system-fonts.js 77628cf8bf first comm il y a 3 ans feature-policy.js 77628cf8bf first comm il y a 3 ans fetch.js 77628cf8bf first comm il y a 3 ans fieldset-disabled.js 77628cf8bf first comm il y a 3 ans fileapi.js 77628cf8bf first comm il y a 3 ans filereader.js 77628cf8bf first comm il y a 3 ans filereadersync.js 77628cf8bf first comm il y a 3 ans filesystem.js 77628cf8bf first comm il y a 3 ans flac.js 77628cf8bf first comm il y a 3 ans flexbox-gap.js 77628cf8bf first comm il y a 3 ans flexbox.js 77628cf8bf first comm il y a 3 ans flow-root.js 77628cf8bf first comm il y a 3 ans focusin-focusout-events.js 77628cf8bf first comm il y a 3 ans font-family-system-ui.js 77628cf8bf first comm il y a 3 ans font-feature.js 77628cf8bf first comm il y a 3 ans font-kerning.js 77628cf8bf first comm il y a 3 ans font-loading.js 77628cf8bf first comm il y a 3 ans font-size-adjust.js 77628cf8bf first comm il y a 3 ans font-smooth.js 77628cf8bf first comm il y a 3 ans font-unicode-range.js 77628cf8bf first comm il y a 3 ans font-variant-alternates.js 77628cf8bf first comm il y a 3 ans font-variant-numeric.js 77628cf8bf first comm il y a 3 ans fontface.js 77628cf8bf first comm il y a 3 ans form-attribute.js 77628cf8bf first comm il y a 3 ans form-submit-attributes.js 77628cf8bf first comm il y a 3 ans form-validation.js 77628cf8bf first comm il y a 3 ans forms.js 77628cf8bf first comm il y a 3 ans fullscreen.js 77628cf8bf first comm il y a 3 ans gamepad.js 77628cf8bf first comm il y a 3 ans geolocation.js 77628cf8bf first comm il y a 3 ans getboundingclientrect.js 77628cf8bf first comm il y a 3 ans getcomputedstyle.js 77628cf8bf first comm il y a 3 ans getelementsbyclassname.js 77628cf8bf first comm il y a 3 ans getrandomvalues.js 77628cf8bf first comm il y a 3 ans gyroscope.js 77628cf8bf first comm il y a 3 ans hardwareconcurrency.js 77628cf8bf first comm il y a 3 ans hashchange.js 77628cf8bf first comm il y a 3 ans heif.js 77628cf8bf first comm il y a 3 ans hevc.js 77628cf8bf first comm il y a 3 ans hidden.js 77628cf8bf first comm il y a 3 ans high-resolution-time.js 77628cf8bf first comm il y a 3 ans history.js 77628cf8bf first comm il y a 3 ans html-media-capture.js 77628cf8bf first comm il y a 3 ans html5semantic.js 77628cf8bf first comm il y a 3 ans http-live-streaming.js 77628cf8bf first comm il y a 3 ans http2.js 77628cf8bf first comm il y a 3 ans http3.js 77628cf8bf first comm il y a 3 ans iframe-sandbox.js 77628cf8bf first comm il y a 3 ans iframe-seamless.js 77628cf8bf first comm il y a 3 ans iframe-srcdoc.js 77628cf8bf first comm il y a 3 ans imagecapture.js 77628cf8bf first comm il y a 3 ans ime.js 77628cf8bf first comm il y a 3 ans img-naturalwidth-naturalheight.js 77628cf8bf first comm il y a 3 ans import-maps.js 77628cf8bf first comm il y a 3 ans imports.js 77628cf8bf first comm il y a 3 ans indeterminate-checkbox.js 77628cf8bf first comm il y a 3 ans indexeddb.js 77628cf8bf first comm il y a 3 ans indexeddb2.js 77628cf8bf first comm il y a 3 ans inline-block.js 77628cf8bf first comm il y a 3 ans innertext.js 77628cf8bf first comm il y a 3 ans input-autocomplete-onoff.js 77628cf8bf first comm il y a 3 ans input-color.js 77628cf8bf first comm il y a 3 ans input-datetime.js 77628cf8bf first comm il y a 3 ans input-email-tel-url.js 77628cf8bf first comm il y a 3 ans input-event.js 77628cf8bf first comm il y a 3 ans input-file-accept.js 77628cf8bf first comm il y a 3 ans input-file-directory.js 77628cf8bf first comm il y a 3 ans input-file-multiple.js 77628cf8bf first comm il y a 3 ans input-inputmode.js 77628cf8bf first comm il y a 3 ans input-minlength.js 77628cf8bf first comm il y a 3 ans input-number.js 77628cf8bf first comm il y a 3 ans input-pattern.js 77628cf8bf first comm il y a 3 ans input-placeholder.js 77628cf8bf first comm il y a 3 ans input-range.js 77628cf8bf first comm il y a 3 ans input-search.js 77628cf8bf first comm il y a 3 ans input-selection.js 77628cf8bf first comm il y a 3 ans insert-adjacent.js 77628cf8bf first comm il y a 3 ans insertadjacenthtml.js 77628cf8bf first comm il y a 3 ans internationalization.js 77628cf8bf first comm il y a 3 ans intersectionobserver-v2.js 77628cf8bf first comm il y a 3 ans intersectionobserver.js 77628cf8bf first comm il y a 3 ans intl-pluralrules.js 77628cf8bf first comm il y a 3 ans intrinsic-width.js 77628cf8bf first comm il y a 3 ans jpeg2000.js 77628cf8bf first comm il y a 3 ans jpegxl.js 77628cf8bf first comm il y a 3 ans jpegxr.js 77628cf8bf first comm il y a 3 ans js-regexp-lookbehind.js 77628cf8bf first comm il y a 3 ans json.js 77628cf8bf first comm il y a 3 ans justify-content-space-evenly.js 77628cf8bf first comm il y a 3 ans kerning-pairs-ligatures.js 77628cf8bf first comm il y a 3 ans keyboardevent-charcode.js 77628cf8bf first comm il y a 3 ans keyboardevent-code.js 77628cf8bf first comm il y a 3 ans keyboardevent-getmodifierstate.js 77628cf8bf first comm il y a 3 ans keyboardevent-key.js 77628cf8bf first comm il y a 3 ans keyboardevent-location.js 77628cf8bf first comm il y a 3 ans keyboardevent-which.js 77628cf8bf first comm il y a 3 ans lazyload.js 77628cf8bf first comm il y a 3 ans let.js 77628cf8bf first comm il y a 3 ans link-icon-png.js 77628cf8bf first comm il y a 3 ans link-icon-svg.js 77628cf8bf first comm il y a 3 ans link-rel-dns-prefetch.js 77628cf8bf first comm il y a 3 ans link-rel-modulepreload.js 77628cf8bf first comm il y a 3 ans link-rel-preconnect.js 77628cf8bf first comm il y a 3 ans link-rel-prefetch.js 77628cf8bf first comm il y a 3 ans link-rel-preload.js 77628cf8bf first comm il y a 3 ans link-rel-prerender.js 77628cf8bf first comm il y a 3 ans loading-lazy-attr.js 77628cf8bf first comm il y a 3 ans localecompare.js 77628cf8bf first comm il y a 3 ans magnetometer.js 77628cf8bf first comm il y a 3 ans matchesselector.js 77628cf8bf first comm il y a 3 ans matchmedia.js 77628cf8bf first comm il y a 3 ans mathml.js 77628cf8bf first comm il y a 3 ans maxlength.js 77628cf8bf first comm il y a 3 ans mdn-css-unicode-bidi-isolate-override.js 77628cf8bf first comm il y a 3 ans mdn-css-unicode-bidi-isolate.js 77628cf8bf first comm il y a 3 ans mdn-css-unicode-bidi-plaintext.js 77628cf8bf first comm il y a 3 ans mdn-text-decoration-color.js 77628cf8bf first comm il y a 3 ans mdn-text-decoration-line.js 77628cf8bf first comm il y a 3 ans mdn-text-decoration-shorthand.js 77628cf8bf first comm il y a 3 ans mdn-text-decoration-style.js 77628cf8bf first comm il y a 3 ans media-fragments.js 77628cf8bf first comm il y a 3 ans mediacapture-fromelement.js 77628cf8bf first comm il y a 3 ans mediarecorder.js 77628cf8bf first comm il y a 3 ans mediasource.js 77628cf8bf first comm il y a 3 ans menu.js 77628cf8bf first comm il y a 3 ans meta-theme-color.js 77628cf8bf first comm il y a 3 ans meter.js 77628cf8bf first comm il y a 3 ans midi.js 77628cf8bf first comm il y a 3 ans minmaxwh.js 77628cf8bf first comm il y a 3 ans mp3.js 77628cf8bf first comm il y a 3 ans mpeg-dash.js 77628cf8bf first comm il y a 3 ans mpeg4.js 77628cf8bf first comm il y a 3 ans multibackgrounds.js 77628cf8bf first comm il y a 3 ans multicolumn.js 77628cf8bf first comm il y a 3 ans mutation-events.js 77628cf8bf first comm il y a 3 ans mutationobserver.js 77628cf8bf first comm il y a 3 ans namevalue-storage.js 77628cf8bf first comm il y a 3 ans native-filesystem-api.js 77628cf8bf first comm il y a 3 ans nav-timing.js 77628cf8bf first comm il y a 3 ans netinfo.js 77628cf8bf first comm il y a 3 ans notifications.js 77628cf8bf first comm il y a 3 ans object-entries.js 77628cf8bf first comm il y a 3 ans object-fit.js 77628cf8bf first comm il y a 3 ans object-observe.js 77628cf8bf first comm il y a 3 ans object-values.js 77628cf8bf first comm il y a 3 ans objectrtc.js 77628cf8bf first comm il y a 3 ans offline-apps.js 77628cf8bf first comm il y a 3 ans offscreencanvas.js 77628cf8bf first comm il y a 3 ans ogg-vorbis.js 77628cf8bf first comm il y a 3 ans ogv.js 77628cf8bf first comm il y a 3 ans ol-reversed.js 77628cf8bf first comm il y a 3 ans once-event-listener.js 77628cf8bf first comm il y a 3 ans online-status.js 77628cf8bf first comm il y a 3 ans opus.js 77628cf8bf first comm il y a 3 ans orientation-sensor.js 77628cf8bf first comm il y a 3 ans outline.js 77628cf8bf first comm il y a 3 ans pad-start-end.js 77628cf8bf first comm il y a 3 ans page-transition-events.js 77628cf8bf first comm il y a 3 ans pagevisibility.js 77628cf8bf first comm il y a 3 ans passive-event-listener.js 77628cf8bf first comm il y a 3 ans passwordrules.js 77628cf8bf first comm il y a 3 ans path2d.js 77628cf8bf first comm il y a 3 ans payment-request.js 77628cf8bf first comm il y a 3 ans pdf-viewer.js 77628cf8bf first comm il y a 3 ans permissions-api.js 77628cf8bf first comm il y a 3 ans permissions-policy.js 77628cf8bf first comm il y a 3 ans picture-in-picture.js 77628cf8bf first comm il y a 3 ans picture.js 77628cf8bf first comm il y a 3 ans ping.js 77628cf8bf first comm il y a 3 ans png-alpha.js 77628cf8bf first comm il y a 3 ans pointer-events.js 77628cf8bf first comm il y a 3 ans pointer.js 77628cf8bf first comm il y a 3 ans pointerlock.js 77628cf8bf first comm il y a 3 ans portals.js 77628cf8bf first comm il y a 3 ans prefers-color-scheme.js 77628cf8bf first comm il y a 3 ans prefers-reduced-motion.js 77628cf8bf first comm il y a 3 ans progress.js 77628cf8bf first comm il y a 3 ans promise-finally.js 77628cf8bf first comm il y a 3 ans promises.js 77628cf8bf first comm il y a 3 ans proximity.js 77628cf8bf first comm il y a 3 ans proxy.js 77628cf8bf first comm il y a 3 ans publickeypinning.js 77628cf8bf first comm il y a 3 ans push-api.js 77628cf8bf first comm il y a 3 ans queryselector.js 77628cf8bf first comm il y a 3 ans readonly-attr.js 77628cf8bf first comm il y a 3 ans referrer-policy.js 77628cf8bf first comm il y a 3 ans registerprotocolhandler.js 77628cf8bf first comm il y a 3 ans rel-noopener.js 77628cf8bf first comm il y a 3 ans rel-noreferrer.js 77628cf8bf first comm il y a 3 ans rellist.js 77628cf8bf first comm il y a 3 ans rem.js 77628cf8bf first comm il y a 3 ans requestanimationframe.js 77628cf8bf first comm il y a 3 ans requestidlecallback.js 77628cf8bf first comm il y a 3 ans resizeobserver.js 77628cf8bf first comm il y a 3 ans resource-timing.js 77628cf8bf first comm il y a 3 ans rest-parameters.js 77628cf8bf first comm il y a 3 ans rtcpeerconnection.js 77628cf8bf first comm il y a 3 ans ruby.js 77628cf8bf first comm il y a 3 ans run-in.js 77628cf8bf first comm il y a 3 ans same-site-cookie-attribute.js 77628cf8bf first comm il y a 3 ans screen-orientation.js 77628cf8bf first comm il y a 3 ans script-async.js 77628cf8bf first comm il y a 3 ans script-defer.js 77628cf8bf first comm il y a 3 ans scrollintoview.js 77628cf8bf first comm il y a 3 ans scrollintoviewifneeded.js 77628cf8bf first comm il y a 3 ans sdch.js 77628cf8bf first comm il y a 3 ans selection-api.js 77628cf8bf first comm il y a 3 ans server-timing.js 77628cf8bf first comm il y a 3 ans serviceworkers.js 77628cf8bf first comm il y a 3 ans setimmediate.js 77628cf8bf first comm il y a 3 ans shadowdom.js 77628cf8bf first comm il y a 3 ans shadowdomv1.js 77628cf8bf first comm il y a 3 ans sharedarraybuffer.js 77628cf8bf first comm il y a 3 ans sharedworkers.js 77628cf8bf first comm il y a 3 ans sni.js 77628cf8bf first comm il y a 3 ans spdy.js 77628cf8bf first comm il y a 3 ans speech-recognition.js 77628cf8bf first comm il y a 3 ans speech-synthesis.js 77628cf8bf first comm il y a 3 ans spellcheck-attribute.js 77628cf8bf first comm il y a 3 ans sql-storage.js 77628cf8bf first comm il y a 3 ans srcset.js 77628cf8bf first comm il y a 3 ans stream.js 77628cf8bf first comm il y a 3 ans streams.js 77628cf8bf first comm il y a 3 ans stricttransportsecurity.js 77628cf8bf first comm il y a 3 ans style-scoped.js 77628cf8bf first comm il y a 3 ans subresource-bundling.js 77628cf8bf first comm il y a 3 ans subresource-integrity.js 77628cf8bf first comm il y a 3 ans svg-css.js 77628cf8bf first comm il y a 3 ans svg-filters.js 77628cf8bf first comm il y a 3 ans svg-fonts.js 77628cf8bf first comm il y a 3 ans svg-fragment.js 77628cf8bf first comm il y a 3 ans svg-html.js 77628cf8bf first comm il y a 3 ans svg-html5.js 77628cf8bf first comm il y a 3 ans svg-img.js 77628cf8bf first comm il y a 3 ans svg-smil.js 77628cf8bf first comm il y a 3 ans svg.js 77628cf8bf first comm il y a 3 ans sxg.js 77628cf8bf first comm il y a 3 ans tabindex-attr.js 77628cf8bf first comm il y a 3 ans template-literals.js 77628cf8bf first comm il y a 3 ans template.js 77628cf8bf first comm il y a 3 ans temporal.js 77628cf8bf first comm il y a 3 ans testfeat.js 77628cf8bf first comm il y a 3 ans text-decoration.js 77628cf8bf first comm il y a 3 ans text-emphasis.js 77628cf8bf first comm il y a 3 ans text-overflow.js 77628cf8bf first comm il y a 3 ans text-size-adjust.js 77628cf8bf first comm il y a 3 ans text-stroke.js 77628cf8bf first comm il y a 3 ans textcontent.js 77628cf8bf first comm il y a 3 ans textencoder.js 77628cf8bf first comm il y a 3 ans tls1-1.js 77628cf8bf first comm il y a 3 ans tls1-2.js 77628cf8bf first comm il y a 3 ans tls1-3.js 77628cf8bf first comm il y a 3 ans touch.js 77628cf8bf first comm il y a 3 ans transforms2d.js 77628cf8bf first comm il y a 3 ans transforms3d.js 77628cf8bf first comm il y a 3 ans trusted-types.js 77628cf8bf first comm il y a 3 ans ttf.js 77628cf8bf first comm il y a 3 ans typedarrays.js 77628cf8bf first comm il y a 3 ans u2f.js 77628cf8bf first comm il y a 3 ans unhandledrejection.js 77628cf8bf first comm il y a 3 ans upgradeinsecurerequests.js 77628cf8bf first comm il y a 3 ans url-scroll-to-text-fragment.js 77628cf8bf first comm il y a 3 ans url.js 77628cf8bf first comm il y a 3 ans urlsearchparams.js 77628cf8bf first comm il y a 3 ans use-strict.js 77628cf8bf first comm il y a 3 ans user-select-none.js 77628cf8bf first comm il y a 3 ans user-timing.js 77628cf8bf first comm il y a 3 ans variable-fonts.js 77628cf8bf first comm il y a 3 ans vector-effect.js 77628cf8bf first comm il y a 3 ans vibration.js 77628cf8bf first comm il y a 3 ans video.js 77628cf8bf first comm il y a 3 ans videotracks.js 77628cf8bf first comm il y a 3 ans viewport-unit-variants.js 77628cf8bf first comm il y a 3 ans viewport-units.js 77628cf8bf first comm il y a 3 ans wai-aria.js 77628cf8bf first comm il y a 3 ans wake-lock.js 77628cf8bf first comm il y a 3 ans wasm.js 77628cf8bf first comm il y a 3 ans wav.js 77628cf8bf first comm il y a 3 ans wbr-element.js 77628cf8bf first comm il y a 3 ans web-animation.js 77628cf8bf first comm il y a 3 ans web-app-manifest.js 77628cf8bf first comm il y a 3 ans web-bluetooth.js 77628cf8bf first comm il y a 3 ans web-serial.js 77628cf8bf first comm il y a 3 ans web-share.js 77628cf8bf first comm il y a 3 ans webauthn.js 77628cf8bf first comm il y a 3 ans webcodecs.js 77628cf8bf first comm il y a 3 ans webgl.js 77628cf8bf first comm il y a 3 ans webgl2.js 77628cf8bf first comm il y a 3 ans webgpu.js 77628cf8bf first comm il y a 3 ans webhid.js 77628cf8bf first comm il y a 3 ans webkit-user-drag.js 77628cf8bf first comm il y a 3 ans webm.js 77628cf8bf first comm il y a 3 ans webnfc.js 77628cf8bf first comm il y a 3 ans webp.js 77628cf8bf first comm il y a 3 ans websockets.js 77628cf8bf first comm il y a 3 ans webtransport.js 77628cf8bf first comm il y a 3 ans webusb.js 77628cf8bf first comm il y a 3 ans webvr.js 77628cf8bf first comm il y a 3 ans webvtt.js 77628cf8bf first comm il y a 3 ans webworkers.js 77628cf8bf first comm il y a 3 ans webxr.js 77628cf8bf first comm il y a 3 ans will-change.js 77628cf8bf first comm il y a 3 ans woff.js 77628cf8bf first comm il y a 3 ans woff2.js 77628cf8bf first comm il y a 3 ans word-break.js 77628cf8bf first comm il y a 3 ans wordwrap.js 77628cf8bf first comm il y a 3 ans x-doc-messaging.js 77628cf8bf first comm il y a 3 ans x-frame-options.js 77628cf8bf first comm il y a 3 ans xhr2.js 77628cf8bf first comm il y a 3 ans xhtml.js 77628cf8bf first comm il y a 3 ans xhtmlsmil.js 77628cf8bf first comm il y a 3 ans xml-serializer.js 77628cf8bf first comm il y a 3 ans tum/whitesports - Gogs: Simplico Git Service

Нема описа

class-wp-customize-nav-menu-item-control.php 6.8KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182
  1. <?php
  2. /**
  3. * Customize API: WP_Customize_Nav_Menu_Item_Control class
  4. *
  5. * @package WordPress
  6. * @subpackage Customize
  7. * @since 4.4.0
  8. */
  9. /**
  10. * Customize control to represent the name field for a given menu.
  11. *
  12. * @since 4.3.0
  13. *
  14. * @see WP_Customize_Control
  15. */
  16. class WP_Customize_Nav_Menu_Item_Control extends WP_Customize_Control {
  17. /**
  18. * Control type.
  19. *
  20. * @since 4.3.0
  21. * @var string
  22. */
  23. public $type = 'nav_menu_item';
  24. /**
  25. * The nav menu item setting.
  26. *
  27. * @since 4.3.0
  28. * @var WP_Customize_Nav_Menu_Item_Setting
  29. */
  30. public $setting;
  31. /**
  32. * Constructor.
  33. *
  34. * @since 4.3.0
  35. *
  36. * @see WP_Customize_Control::__construct()
  37. *
  38. * @param WP_Customize_Manager $manager Customizer bootstrap instance.
  39. * @param string $id The control ID.
  40. * @param array $args Optional. Arguments to override class property defaults.
  41. * See WP_Customize_Control::__construct() for information
  42. * on accepted arguments. Default empty array.
  43. */
  44. public function __construct( $manager, $id, $args = array() ) {
  45. parent::__construct( $manager, $id, $args );
  46. }
  47. /**
  48. * Don't render the control's content - it's rendered with a JS template.
  49. *
  50. * @since 4.3.0
  51. */
  52. public function render_content() {}
  53. /**
  54. * JS/Underscore template for the control UI.
  55. *
  56. * @since 4.3.0
  57. */
  58. public function content_template() {
  59. ?>
  60. <div class="menu-item-bar">
  61. <div class="menu-item-handle">
  62. <span class="item-type" aria-hidden="true">{{ data.item_type_label }}</span>
  63. <span class="item-title" aria-hidden="true">
  64. <span class="spinner"></span>
  65. <span class="menu-item-title<# if ( ! data.title && ! data.original_title ) { #> no-title<# } #>">{{ data.title || data.original_title || wp.customize.Menus.data.l10n.untitled }}</span>
  66. </span>
  67. <span class="item-controls">
  68. <button type="button" class="button-link item-edit" aria-expanded="false"><span class="screen-reader-text">
  69. <?php
  70. /* translators: 1: Title of a menu item, 2: Type of a menu item. */
  71. printf( __( 'Edit menu item: %1$s (%2$s)' ), '{{ data.title || wp.customize.Menus.data.l10n.untitled }}', '{{ data.item_type_label }}' );
  72. ?>
  73. </span><span class="toggle-indicator" aria-hidden="true"></span></button>
  74. <button type="button" class="button-link item-delete submitdelete deletion"><span class="screen-reader-text">
  75. <?php
  76. /* translators: 1: Title of a menu item, 2: Type of a menu item. */
  77. printf( __( 'Remove Menu Item: %1$s (%2$s)' ), '{{ data.title || wp.customize.Menus.data.l10n.untitled }}', '{{ data.item_type_label }}' );
  78. ?>
  79. </span></button>
  80. </span>
  81. </div>
  82. </div>
  83. <div class="menu-item-settings" id="menu-item-settings-{{ data.menu_item_id }}">
  84. <# if ( 'custom' === data.item_type ) { #>
  85. <p class="field-url description description-thin">
  86. <label for="edit-menu-item-url-{{ data.menu_item_id }}">
  87. <?php _e( 'URL' ); ?><br />
  88. <input class="widefat code edit-menu-item-url" type="text" id="edit-menu-item-url-{{ data.menu_item_id }}" name="menu-item-url" />
  89. </label>
  90. </p>
  91. <# } #>
  92. <p class="description description-thin">
  93. <label for="edit-menu-item-title-{{ data.menu_item_id }}">
  94. <?php _e( 'Navigation Label' ); ?><br />
  95. <input type="text" id="edit-menu-item-title-{{ data.menu_item_id }}" placeholder="{{ data.original_title }}" class="widefat edit-menu-item-title" name="menu-item-title" />
  96. </label>
  97. </p>
  98. <p class="field-link-target description description-thin">
  99. <label for="edit-menu-item-target-{{ data.menu_item_id }}">
  100. <input type="checkbox" id="edit-menu-item-target-{{ data.menu_item_id }}" class="edit-menu-item-target" value="_blank" name="menu-item-target" />
  101. <?php _e( 'Open link in a new tab' ); ?>
  102. </label>
  103. </p>
  104. <p class="field-title-attribute field-attr-title description description-thin">
  105. <label for="edit-menu-item-attr-title-{{ data.menu_item_id }}">
  106. <?php _e( 'Title Attribute' ); ?><br />
  107. <input type="text" id="edit-menu-item-attr-title-{{ data.menu_item_id }}" class="widefat edit-menu-item-attr-title" name="menu-item-attr-title" />
  108. </label>
  109. </p>
  110. <p class="field-css-classes description description-thin">
  111. <label for="edit-menu-item-classes-{{ data.menu_item_id }}">
  112. <?php _e( 'CSS Classes' ); ?><br />
  113. <input type="text" id="edit-menu-item-classes-{{ data.menu_item_id }}" class="widefat code edit-menu-item-classes" name="menu-item-classes" />
  114. </label>
  115. </p>
  116. <p class="field-xfn description description-thin">
  117. <label for="edit-menu-item-xfn-{{ data.menu_item_id }}">
  118. <?php _e( 'Link Relationship (XFN)' ); ?><br />
  119. <input type="text" id="edit-menu-item-xfn-{{ data.menu_item_id }}" class="widefat code edit-menu-item-xfn" name="menu-item-xfn" />
  120. </label>
  121. </p>
  122. <p class="field-description description description-thin">
  123. <label for="edit-menu-item-description-{{ data.menu_item_id }}">
  124. <?php _e( 'Description' ); ?><br />
  125. <textarea id="edit-menu-item-description-{{ data.menu_item_id }}" class="widefat edit-menu-item-description" rows="3" cols="20" name="menu-item-description">{{ data.description }}</textarea>
  126. <span class="description"><?php _e( 'The description will be displayed in the menu if the current theme supports it.' ); ?></span>
  127. </label>
  128. </p>
  129. <?php
  130. /**
  131. * Fires at the end of the form field template for nav menu items in the customizer.
  132. *
  133. * Additional fields can be rendered here and managed in JavaScript.
  134. *
  135. * @since 5.4.0
  136. */
  137. do_action( 'wp_nav_menu_item_custom_fields_customize_template' );
  138. ?>
  139. <div class="menu-item-actions description-thin submitbox">
  140. <# if ( ( 'post_type' === data.item_type || 'taxonomy' === data.item_type ) && '' !== data.original_title ) { #>
  141. <p class="link-to-original">
  142. <?php
  143. /* translators: Nav menu item original title. %s: Original title. */
  144. printf( __( 'Original: %s' ), '<a class="original-link" href="{{ data.url }}">{{ data.original_title }}</a>' );
  145. ?>
  146. </p>
  147. <# } #>
  148. <button type="button" class="button-link button-link-delete item-delete submitdelete deletion"><?php _e( 'Remove' ); ?></button>
  149. <span class="spinner"></span>
  150. </div>
  151. <input type="hidden" name="menu-item-db-id[{{ data.menu_item_id }}]" class="menu-item-data-db-id" value="{{ data.menu_item_id }}" />
  152. <input type="hidden" name="menu-item-parent-id[{{ data.menu_item_id }}]" class="menu-item-data-parent-id" value="{{ data.parent }}" />
  153. </div><!-- .menu-item-settings-->
  154. <ul class="menu-item-transport"></ul>
  155. <?php
  156. }
  157. /**
  158. * Return parameters for this control.
  159. *
  160. * @since 4.3.0
  161. *
  162. * @return array Exported parameters.
  163. */
  164. public function json() {
  165. $exported = parent::json();
  166. $exported['menu_item_id'] = $this->setting->post_id;
  167. return $exported;
  168. }
  169. }