PATH:
home
/
fengshp
/
www
/
wp-content
/
plugins
/
themify-builder-pro
/
includes
/
dynamic-content
<?php /** * @package Themify Builder Pro * @link https://themify.me/ */ class Tbp_Dynamic_Item_PTBNumber extends Tbp_Dynamic_Item { public static function is_available():bool { return class_exists( 'Themify_Builder_Plugin_Compat_ptb',false ); } public static function get_category():string { return 'ptb'; } public static function get_type():array { return array( 'text', 'textarea', 'wp_editor','slider_range', 'range' ); } public static function get_label():string { return __( 'PTB (Number)', 'tbp' ); } public static function get_value(array $args = array()):?string { $value=''; if(!empty($args['field'])){ $field_name = explode( ':', $args['field'] )[1]; $value = get_post_meta( $args['post_id'] ?? get_the_ID(), "ptb_{$field_name}", true ); $display = $args['display']?? 'from'; if ( is_array( $value ) ) { // range input $value = $value[ $display ]; } if ( isset( $args['decimals'] ) ) { $value = number_format( (float)$value, (int) $args['decimals'], $args['dec_point']?? '.', $args['thousands_sep']?? '' ); } } return $value; } public static function get_options():array { $binding = []; $fields = Themify_Builder_Plugin_Compat_ptb::get_fields_by_type( 'number' ); foreach ( $fields as $field_key => $field_label ) { list( $post_type, $field_id ) = explode( ':', $field_key ); $field_def = ptb_get_field_definition( $field_id, $post_type ); $binding[ $field_key ] = [ ( isset( $field_def['range'] ) ? 'show' : 'hide' ) => 'display' ]; } return array( array( 'label' => 'tbp_f', 'id' => 'field', 'type' => 'select', 'options' => [ '' => '' ] + $fields, 'binding' => $binding, 'bindingContext' => '.tb_field_group', ), array( 'label' => 'disp', 'id' => 'display', 'type' => 'select', 'options' => array( 'from' => __( 'From', 'tbp' ), 'to' => __( 'To', 'tbp' ), ), 'help' => __( 'In Range inputs, select to display the From value or To value.', 'tbp' ), ), array( 'label' => __( 'Decimals', 'tbp' ), 'id' => 'decimals', 'type' => 'number', 'binding' => [ 'empty' => [ 'hide' => [ 'dec_point', 'thousands_sep' ] ], 'not_empty' => [ 'show' => [ 'dec_point', 'thousands_sep' ] ] ], 'bindingContext' => '.tb_field_group', 'help' => __( 'Sets the number of decimal digits.', 'tbp' ) ), array( 'label' => __( 'Decimal Point', 'tbp' ), 'id' => 'dec_point', 'type' => 'text', 'help' => __( 'Sets the separator for the decimal point.', 'tbp' ) ), array( 'label' => __( 'Thousands Separator', 'tbp' ), 'id' => 'thousands_sep', 'type' => 'text', ), ); } }
[+]
..
[-] ProductSalePrice.php
[edit]
[-] PTBGallery.php
[edit]
[-] WCCheckoutURL.php
[edit]
[-] PostDate.php
[edit]
[-] ACFURL.php
[edit]
[-] PostTermsClass.php
[edit]
[-] PostAuthorURL.php
[edit]
[-] ACFWysiwyg.php
[edit]
[-] PostAuthorEmail.php
[edit]
[-] PTBGalleryAsText.php
[edit]
[-] PTBAudioPlaylist.php
[edit]
[-] ProductTitle.php
[edit]
[-] PTBIconAsIcon.php
[edit]
[-] PTBTelephone.php
[edit]
[-] PTBSelectClass.php
[edit]
[-] ProductCartUrl.php
[edit]
[-] PostAuthorMeta.php
[edit]
[-] tbpTermCover.php
[edit]
[-] PTBEmail.php
[edit]
[-] ArchiveTitle.php
[edit]
[-] SiteURL.php
[edit]
[-] PostAuthorBio.php
[edit]
[-] ACFChoice.php
[edit]
[-] PTBDateAsText.php
[edit]
[-] ACFGallery.php
[edit]
[-] PTBRatingAsText.php
[edit]
[-] ACFEmail.php
[edit]
[-] Option.php
[edit]
[-] PostAuthorClass.php
[edit]
[-] PostCommentCount.php
[edit]
[-] ProductAttributes.php
[edit]
[-] PTBRadioButtonClass.php
[edit]
[-] ACFNumber.php
[edit]
[-] PTBAudio.php
[edit]
[-] PTBTextarea.php
[edit]
[-] PostTerms.php
[edit]
[-] ACFDate.php
[edit]
[-] PTBText.php
[edit]
[-] PostFeaturedImage.php
[edit]
[-] PTBAccordion.php
[edit]
[-] ACFoEmbed.php
[edit]
[-] ProductSKU.php
[edit]
[-] Shortcode.php
[edit]
[-] CurrentDate.php
[edit]
[-] PTBFile.php
[edit]
[-] PTBLinkButton.php
[edit]
[-] PTBMap.php
[edit]
[-] PTBRadioButton.php
[edit]
[-] CustomField.php
[edit]
[-] PTBRating.php
[edit]
[-] ACFFile.php
[edit]
[-] PTBCheckboxClass.php
[edit]
[-] FileContent.php
[edit]
[-] PTBVideoPlaylist.php
[edit]
[-] PTBRepeatableText.php
[edit]
[-] ProductDescription.php
[edit]
[-] PTBIcon.php
[edit]
[-] ArchiveDescription.php
[edit]
[-] PostImageAttachments.php
[edit]
[-] ACFMap.php
[edit]
[-] PTBRelations.php
[edit]
[-] PostAuthorName.php
[edit]
[-] PostAuthorAvatar.php
[edit]
[-] PTBVideo.php
[edit]
[-] ACFText.php
[edit]
[-] PTBDate.php
[edit]
[-] ACFImage.php
[edit]
[-] ACFTextarea.php
[edit]
[-] ProductImage.php
[edit]
[-] PTBNumber.php
[edit]
[-] ProductRating.php
[edit]
[-] ProductStock.php
[edit]
[-] PTBImage.php
[edit]
[-] ProductPrice.php
[edit]
[-] SiteDescription.php
[edit]
[-] EventPostDate.php
[edit]
[-] SiteTitle.php
[edit]
[-] ProductGallery.php
[edit]
[-] MediaLibrary.php
[edit]
[-] RandomNumber.php
[edit]
[-] PostExcerpt.php
[edit]
[-] PTBCheckbox.php
[edit]
[-] ProductCatImage.php
[edit]
[-] PostTitle.php
[edit]
[-] PostClass.php
[edit]
[-] PTBProgressBar.php
[edit]
[-] PTBIconAsText.php
[edit]
[-] ACFPageLink.php
[edit]
[-] PostPermalink.php
[edit]
[-] SiteIcon.php
[edit]
[-] PTBAcc.php
[edit]
[-] PTBSelect.php
[edit]