kavirdarkavir 4 ارسال شده در آذر 98 گزارش بازنشر ارسال شده در آذر 98 (ویرایش شده) سلام و وقت بخیر توی یکی از صفحات قالب وردپرسی نیاز دارم که بتونم موقعی که از توابع تاریخ مربوط به خود ورپرس یا php استفاده میکنم دیگه اون تاریخ ها توسط پارسی دیت فارسی نشن (توی اون صفحه خاص فقط). چیزی که به نظرم رسید این هست که احتمالا باید ابتدای اسکریپت مربوطه یه remove_filter و در انتهای اون دوباره add_filter قرار بدم. (البته اسم این فیلتر رو هم نمیدونم). دوستان بخشی از کد رو هم که میخوام پارسی دیت در اون غیرفعال باشه رو در ادامه میارم. اون بخش هایی که توش تابع date فراخوانی شده مثل date('d/m/Y') ، موقعی که افزونه پارسی دیت غیرفعال هست عملکردی رو که مدنظر هست به درستی داره، منتها در صورت فعال بودن پارسی دیت مشکل ایجاد میشه. <?php if( ! class_exists('acf_field_persian_date_field') ) : class acf_field_persian_date_field extends acf_field { function __construct() { // vars $this->name = 'date_picker_fa'; $this->label = __("Persian Date Picker",'acf-persian-date-field'); $this->category = 'jquery'; $this->defaults = array( 'display_format' => 'd/m/Y', 'return_format' => 'd/m/Y', 'first_day' => 6 ); parent::__construct(); } function render_field( $field ) { // vars $e = ''; $div = array( 'class' => 'acf-date_picker_fa acf-input-wrap', 'data-display_format' => acf_convert_date_to_js($field['display_format']), 'data-first_day' => $field['first_day'], ); $input = array( 'class' => 'input-alt acf-date_picker_fa_db', 'type' => 'hidden', 'name' => $field['name'], 'value' => $field['value'], ); // html $e .= '<div ' . acf_esc_attr($div) . '>'; $e .= '<input ' . acf_esc_attr($input). '/>'; $e .= '<input type="text" value="" class="input acf-persian-date-picker" />'; $e .= '</div>'; // return echo $e; } function render_field_settings( $field ) { // global global $wp_locale; // display_format acf_render_field_setting( $field, array( 'label' => __('Display format','acf'), 'instructions' => __('The format displayed when editing a post','acf'), 'type' => 'radio', 'name' => 'display_format', 'other_choice' => 1, 'choices' => array( 'd/m/Y' => date('d/m/Y'), 'm/d/Y' => date('m/d/Y'), 'F j, Y' => date('F j, Y'), ) )); // return_format acf_render_field_setting( $field, array( 'label' => __('Return format','acf'), 'instructions' => __('The format returned via template functions','acf'), 'type' => 'radio', 'name' => 'return_format', 'other_choice' => 1, 'choices' => array( 'd/m/Y' => date('d/m/Y'), 'm/d/Y' => date('m/d/Y'), 'F j, Y' => date('F j, Y'), 'Ymd' => date('Ymd'), ) )); // first_day /* acf_render_field_setting( $field, array( 'label' => __('Week Starts On','acf'), 'instructions' => '', 'type' => 'select', 'name' => 'first_day', 'choices' => array_values( $wp_locale->weekday ) )); */ } } new acf_field_persian_date_field(); endif; ?> دوستان ممنون میشم بتونید راهنمایی کنید تشکر ویرایش شده آذر 98 توسط kavirdarkavir لینک به ارسال
Morteza 34190 ارسال شده در آذر 98 گزارش بازنشر ارسال شده در آذر 98 سلام من توی کد بالا چیزی بابت date نمیبینم. منظورتون دقیقا کجاست؟ لینک به ارسال
پست های پیشنهاد شده
لطفا برای ارسال دیدگاه وارد شوید
شما بعد از اینکه وارد حساب کاربری خود شدید می توانید دیدگاهی ارسال کنید
ورود به حساب کاربری