• اطلاعیه ها

    • Morteza

      باهم بسازیم: اطلس ووکامرس و وردپرس   14/07/96

      تاپیک ایجاد شده برای بحث در جهت ایجاد یک منبع، ویکی، صفحات توضیحی و یا بخش آموزشی جامع برای وردپرس و متعلقات مختلف آن است. لطفا جهت مشارکت در این بحث، ارائه پیشنهاد و یا انتقاد به تاپیک فوق مراجعه کنید. باهم بسازیم: اطلس ووکامرس و وردپرس
Ali SH

فارسی سازی تاریخ آخرین ویرایش نوشته

11 پست در این موضوع قرار دارد

سلام به همه دوستان

من هرچی گشتم این مطلب رو پیدا نکردم اگر تکراریه ببخشین

می خواستم این کد رو جوری ویرایش کنم که به جای تاریخ میلادی شمسی رو نشون بده (تاریخ آخرین ویرایش پست)

<span class="date"><?php the_modified_time(__('F jS, Y', 'inove')); ?></span>

چه جوری باید این کار رو بکنم :huh:

با تشکر فراوان :)

ویرایش شده در توسط ali110
1

به اشتراک گذاری این پست


لینک به پست

عجب! یعنی توی افزونه جلالی اینو یادشون رفته :P

دو راه داره .

راه اولش اینه باید ببینی توی افزونه جلالی اون فیلتری که به the_date خورده کار میکنه برای این یا یک تابع دیگه بنویسی ویک فیلتر دیگه ، که امیدوارم بنویسن براش .

راه دومش دستی بیای خودت از روی همین تاریخ رو شمسی کنی .

با استفاده از تابع gregorian_to_jalali سه تا آرگومان میگیره . به ترتیب روز و ماه و سال میلادی .

و خروجیش روز و ماه و سال شمسیه .

اگه میتونی خودت انجامش بده اگه نه صبر کن ببینیم مورد اول رو اضافه میکنن یا نه اگه خودم میام اینجا ترتیبشو میدم برات . ^_^

4

به اشتراک گذاری این پست


لینک به پست

یک نمونه نوشتم. البته شاید راه های ساده تری هم باشه :

<?php
$mdate = explode(',', get_the_modified_time('Y,m,d'));
$odate = gregorian_to_jalali($mdate[0],$mdate[1],$mdate[2]);
$rdate = '';
foreach($odate as $dateout){
$rdate .= farsi_num($dateout).'/';
}
echo $rdate;
?>

6

به اشتراک گذاری این پست


لینک به پست

از اولی که سر در نیاوردم اما :

کد بالایی رو باید جای این کد بگذارم؟ آخه اون کدی که من بالا گذاشتم پی اچ پی نداره؟ قضیش چیه اونو حذف کنم اینو بگذارم؟

0

به اشتراک گذاری این پست


لینک به پست

کد شما خط اول این کده و باقی هم تغیراتیه که خواستید این کد را با کد خودتون جابجا کنید داخل تگ span بگذاریدش

2

به اشتراک گذاری این پست


لینک به پست

یک نمونه نوشتم. البته شاید راه های ساده تری هم باشه :

<?php
$mdate = explode(',', get_the_modified_time('Y,m,d'));
$odate = gregorian_to_jalali($mdate[0],$mdate[1],$mdate[2]);
$rdate = '';
foreach($odate as $dateout){
$rdate .= farsi_num($dateout).'/';
}
echo $rdate;
?>

بسیار متشکرم از تابع درستی که دادین

دو تا سوال در موردش دارم:

اول این که : تاریخ به این صورت نوشته میشه الان: ۱۳۹۱/۸/۲۵/

یک اسلش اضافی کنار سال میاد . چگونه باید برش داشت؟

دوم این که: اگر بخوام به جای عدد ، ماه به صورت حروف (مثلا به جای 8 ، بنویسه آبان ماه) باید چه تغییری بدم؟

0

به اشتراک گذاری این پست


لینک به پست

<?php
$mdate = explode(',', get_the_modified_time('Y,m,d'));
$odate = gregorian_to_jalali($mdate[0],$mdate[1],$mdate[2]);
$rdate = '';

$month = array('','فروردین','اردیبهشت','خرداد','تیر','مرداد','شهریور','مهر','آبان','آذر','دی','بهمن','اسفند');
$c = 0 ;
foreach($odate as $dateout)
{
$c++;
if($c == 2)
$rdate .= $month[$dateout];
else
$rdate .= farsi_num($dateout).'/';
}
echo rtim($rdate,'/');
?>

3

به اشتراک گذاری این پست


لینک به پست

ارسال شده در (ویرایش شده)

کدی که دادید رو امتحان کردم . fatal error میده.

ویرایش شده در توسط amir68
1

به اشتراک گذاری این پست


لینک به پست

خطای املایی بود ببخشید ;)

این روزا دستخطم خراب شده


<?php
$mdate = explode(',', get_the_modified_time('Y,m,d'));
$odate = gregorian_to_jalali($mdate[0],$mdate[1],$mdate[2]);
$rdate = '';

$month = array('','فروردین','اردیبهشت','خرداد','تیر','مرداد','شهریور','مهر','آبان','آذر','دی','بهمن','اسفند');
$c = 0 ;
foreach($odate as $dateout)
{
$c++;
if($c == 2)
$rdate .= $month[$dateout].'/';
else
$rdate .= farsi_num($dateout).'/';
}
echo trim($rdate,'/');
?>

4

به اشتراک گذاری این پست


لینک به پست

فداسرتون

الان درست شد

تشکر از شما

2

به اشتراک گذاری این پست


لینک به پست

ارسال شده در (ویرایش شده)

جهت تبدیل تاریخ آخرین بروزرسانی مطلب به تاریخ شمسی، ابتدا کد زیر را در فایل functions.php پوسته خود اضافه کنید :

function mps_the_jmodtime($input,$d='') {
global $id, $post;
if (!empty($input)){
if ($d == "") $d = get_option('time_format');
$m = $post->post_modified;
$timestamp = mps_maketimestamp($m);
$the_time = jdate($d, $timestamp);
return $the_time;
}

}
add_filter('the_modified_time','mps_the_jmodtime',10,4);

سپس کافیست در هر جای پوسته که میخواهید تاریخ آخرین ویرایش نمایان شود کد زیر را اضافه کنید:

<?php the_modified_time('l, j F Y, g:i a'); ?>

منبع

ویرایش شده در توسط Morteza
0

به اشتراک گذاری این پست


لینک به پست

برای ارسال نظر یک حساب کاربری ایجاد کنید یا وارد حساب خود شوید

برای اینکه بتوانید نظر ارسال کنید نیاز دارید که کاربر سایت شوید

ایجاد یک حساب کاربری

برای حساب کاربری جدید در انجمن ما ثبت نام کنید. عضویت خیلی ساده است !


ثبت نام یک حساب کاربری جدید

ورود به حساب کاربری

دارای حساب کاربری هستید؟ از اینجا وارد شوید


ورود به حساب کاربری

  • مطالب مشابه

    • توسط 3ngineer
      سلام دوستان وقت بخیر
      برای نمایش تاریخ در یک خط یک کد پیدا کردم :
      <?php echo jdate('l d F Y'); ?> الان نمیدونم اینو کجا اضافه کنم؟ و اینکه هیچ فراخوانی نیاز نداره؟ یا فایلی؟ 
      (افزونه پارسی دیت هم دارم ولی اون یه تقویم میده که اندازش تقریبا بزرگه.)
    • توسط mehran4ever
      سلام دوستان
      من در خواست بومی سازی و فارسی سازی این افزونه رو داشتم
      https://wordpress.org/plugins/erp/
       
      ممنون میشم کمک کنید
      با تشکر
    • توسط Rustin
      سلام،
      چطور میشه، اعداد پوسته رو فارسی کنم؟ (اعداد نوشته ها مشکلی ندارن، فارسی هستن.)
      برای مثال اعداد صفحه بندی، توی صفحه ی اصلی سایت رو (مثل عکس زیر)

      اینم آدرس سایتم: www.ouroboros.ir
      + من قبل از این گوگل رو سرچ کردم (هم انگلیسی و هم فارسی) ولی روش هایی که پیدا کردم به کارم نیومدن..
      پیشاپیش بابت پاسختون تشکر میکنم.
    • توسط ariyadl
      سلام دوستان
      ما در حال راه‌اندازی یک موتور جستجوگر با وردپرس هستیم. (صرفا داخل مطالب سایت) مثل واژه‌یاب (می‌دونم واژه‌یاب سیستمش اختصاصی هست)
      حالا سوالم اینه که چطوری می‌شه بر اساس تاریخ کاربر در مطالب سایت جستجو کنه؟
      تاریخ ارسال پست منظورم نیست. (تاریخی که خودم تعیین می‌کنم)
      مثلا من موقع ایجاد پست یک فیلدی قرار می‌دم و تاریخ رو می‌زنم 1392 - حالا یوزر وقتی وارد سایت شد و جستجوی پیشرفته رو انتخاب کرد بتونه بر اساس سال جستجو کنه.
      به چه روش می‌شه راه‌اندازی کرد؟
       
      سوال دومم این هست که این فروشگاه‌ها که امکان تعیین محصول بر اساس پارامترهای مختلف دارن، مثلا کالای تلویزیون رو در نظر بگیرید حالا یوزر می‌تونه بر اساس قیمت، برند، سایز و ... تعیین کنه جهت نمایش محصول به چه صورت راه‌اندازی شدن؟ (عکس پیوست شده را لطفا مشاهده کنید)
      الان برای هر بخش دسته‌ای جداگانه ساخته شده یا روش کارش طور دیگه‌ای هست؟
       
      ممنون می‌شم راهنمایی فرمایید.
       

    • توسط absoonoo
      سلام
      یک قالب انگلیسی دارم که از کد زیر برای تاریخ استفاده کرده :
      $cb_date = apply_filters( 'cb_byline_date', '<span class="cb-date"><time class="updated" datetime="' . get_the_time('Y-m-d', $cb_post_id) . '">' . date_i18n( get_option('date_format'), strtotime(get_the_time("Y-m-d", $cb_post_id )) ) . '</time></span>', $cb_post_id ); با فعال کردن wp-jalali  ویا wp-parsidate تاریخ شمسی به درستی در پیشخوان اعمال میشود اما در نمایش تاریخ نوشته تماما تاریخ امروز را نشان میدهد .
      با inspect  وقتی روی تاریخ کلیک میکنم این کد نشان داده میشود و مشخص است تاریخ تغییر یافته اما تاریخ امروز نشان داده میشود :
      <time class="updated" datetime="۱۳۹۵-۰۶-۱۷">۱۳۹۵-۰۶-۳۱</time>