• اطلاعیه ها

    • Saeed Fard

      برگزاری چهارمین همایش Coder Conf و کد تخفیف برای کاربران وردپرس پارسی   20/04/97

      کدرکانف هر سال در آخرین پنجشنبه مرداد با بورد‌های مختلفی برگزار می‌گردد،امسال نیز کدرکانف در همین تاریخ با حضور برنامه نویسان مطرح کشور در بورد تخصصی جاوااسکریپت برگزار خواهد شد، یک گردهمایی متفاوت با طعم Javascript. Coderconf هر سال نسبت به سال‌های گذشته با حضور برنامه‌نویسان پر رنگتر می‌شود. ما سعی کردیم هر ساله به این کنفرانس مفهوم عمیق تری ببخشیم تا از آنچه در سال‌های گذشته عرضه شده به روزتر و مفیدتر واقع شویم. امسال فرصتی خواهد بود تا با نگرشی جدید و بهبود مطالب ارائه شده، عمیقتر به این موضوع نگاه کنیم تا بجای تکرار مباحث پیشین گامی هر چند کوچک در مسیر ارتقای دانش فنی برنامه‌نویسان ایرانی برداریم. ما در Coderconf ۴ با تمرکز بر روی Javascript نیت کرده‌ایم این فرصت را در اختیار برنامه نویسان قرار دهیم تا با ظرافت و استانداردهای روز دنیا کار خود را پیش ببرند. به نظر ما امسال زمان آن فرا رسیده‌است تا این زبان را به صورت تخصصی و از ابعاد مختلف به چالش بکشیم.   دبیر علمی همایش میلاد حیدری، کدرکانف ۴ را اینگونه توصیف کرده است :اشتراک گذاری دانش بهترین راه رسیدن به جاودانگی اطلاعات است. هر ساله همایش‌های زیادی برگزار میشه که افراد شرکت‌کننده می‌توانند با افراد مجرب شبکه سازی کنند. امسال در کدرکانف سعی کردیم علاوه بر بخش شبکه سازی بین افراد بیشتر روی انتقال دانش و کیفیت ارائه ها تمرکز داشته باشیم . به قصد یک گردهمایی بلند مدت بین برنامه‌نویسان جاوااسکریپت که با هم تبادل دانش و اطلاعات کنند گردهم آییم.
      بنده به عنوان عضو کوچکی از جامعه برنامه‌نویسان جاوااسکریپت ایران امیدوارم در کدرکانف امسال علاوه بر شبکه سازی، از اطلاعاتی که دوستان در این همایش در اختیارتان قرار می‌دهند استفاده کنید. در سایت همایش میتوانید سخنرانان و موضوع پنل همایش کدرکانف رو مشاهده کنید . علاقه‌مندان به حضور در این همایش می‌توانند با کد تخفیف wpparsi اقدام به ثبت نام در این گردهمایی کنند. سایت همایش :‌http://coderconf.org
      بلیط فروشی همایش :‌https://evand.com/events/coderconf4  
mohsen670

قرار دادن تاریخ شمسی در feed سایت

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

دوستان کسی میدونه چطور میشه تاریخ شمسی رو در فید نشون داد؟

0

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


لینک به پست

کد زیر رو به فانکشن قالب اضافه کنید: (افزونه جلالی نصب باشد!)


function insertjdate_wp_parsi($content) {
global $post;
$jdate = function_exists('jdate') ? jdate("d M Y",strtotime($post->post_date)) : $post->post_date ;
$content = $content . '<hr />' . $jdate;
return $content;
}
add_filter('the_excerpt_rss', 'insertjdate_wp_parsi');

2

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


لینک به پست

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

این کد فقط تاریخ شمسی رو داخل خلاصه پست مینویسه، میخوام کلا تاریخ رو شمسی نشون بده

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

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


لینک به پست

این کد داخل فایل feed-rss2 هست، میخوام با تابع بجای نشان دادن تاریخ اصلی jdate رو در کدی که جناب parsa نوشته نمایش بده.


<?php echo mysql2date('D, d M Y H:i:s +0000', get_lastpostmodified('GMT'), false); ?>

0

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


لینک به پست

این کد فقط تاریخ شمسی رو داخل خلاصه پست مینویسه، میخوام کلا تاریخ رو شمسی نشون بده

اینو تست کنید:


function insertjdate_wp_parsi($content) {
global $post;
$jdate = function_exists('jdate') ? jdate("Y/m/d",strtotime($post->post_date)) : $post->post_date ;
$content = $jdate . '<br />' . $content;
return $content;
}
add_filter('the_excerpt_rss', 'insertjdate_wp_parsi');
add_filter('the_content_rss', 'insertjdate_wp_parsi');

این کد داخل فایل feed-rss2 هست، میخوام با تابع بجای نشان دادن تاریخ اصلی jdate رو در کدی که جناب parsa نوشته نمایش بده.


<?php echo mysql2date('D, d M Y H:i:s +0000', get_lastpostmodified('GMT'), false); ?>

می‌توانید بخش pubDate را به این تغییر بدید


<pubDate><?php echo function_exists('jdate') ? jdate("Y/m/d",get_post_time('Y-m-d H:i:s', true)) : mysql2date('D, d M Y H:i:s +0000', get_post_time('Y-m-d H:i:s', true), false) ;?></pubDate>

هر چند پیشنهاد نمیشه! چون هیچ نرم‌افزاری تاریخ شمسی رو نمی‌شناسه

3

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


لینک به پست

اینو تست کنید:


function insertjdate_wp_parsi($content) {
global $post;
$jdate = function_exists('jdate') ? jdate("Y/m/d",strtotime($post->post_date)) : $post->post_date ;
$content = $jdate . '<br />' . $content;
return $content;
}
add_filter('the_excerpt_rss', 'insertjdate_wp_parsi');
add_filter('the_content_rss', 'insertjdate_wp_parsi');

متاسفانه خروجی این هم مثل کد اول هست...

چطور میشه مقدار


$post->post_date

رو به $jdate تغییر داد و ازش خروجی گرفت؟

0

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


لینک به پست

یک سوال

شما برای چی میخوای خرویج تاریخ شمسی در فید داشته باشی؟

1

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


لینک به پست
یک سوال

شما برای چی میخوای خرویج تاریخ شمسی در فید داشته باشی؟

همینو بگو!

دوست عزیز فرمت تاریخ فید یه فرمت قراردادی از پیش تعیین شده است که به هیچ عنوان نباید تغییر کنه! حالا چه برسه به اینکه شمسی بشه!

سرویس هایی چون گوگل ریدر تاریخ مطالب رو به گمونم از همین فرمت میگیرن .

تنها کاری که میتونین انجام بدین یه فیلتر تعریف کنین تاریخ شمسی مربوط به هر مطلب رو توی قسمت فید زیر مطالبتون بذاره .

1

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


لینک به پست

یک سوال

شما برای چی میخوای خرویج تاریخ شمسی در فید داشته باشی؟

برای یکی از پروژه هایی که دارم انجام میدم نیاز دارم آخرین مطالب دسته ای خاص رو داخل widget های داشبورد نشون بدم، در واقع سایت همایش مجازی هست، برای یک دانشگاه، اون قسمتم اسمش آخرین اخبار همایش هست، ولی تاریخ رو بصورت میلادی نشون میده که مجبورم تیک نمایش تاریخ رو بر دارم و خبر هارو بدون تاریخ نشون بده...

0

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


لینک به پست

همینو بگو!

دوست عزیز فرمت تاریخ فید یه فرمت قراردادی از پیش تعیین شده است که به هیچ عنوان نباید تغییر کنه! حالا چه برسه به اینکه شمسی بشه!

سرویس هایی چون گوگل ریدر تاریخ مطالب رو به گمونم از همین فرمت میگیرن .

تنها کاری که میتونین انجام بدین یه فیلتر تعریف کنین تاریخ شمسی مربوط به هر مطلب رو توی قسمت فید زیر مطالبتون بذاره .

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

بازهم تشکر برای جوابتون، که البته حق هم دارید، تاریخ اصلی نوشته ها نباید عوض بشه.

0

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


لینک به پست

بهتره از کلاسهای تبدیل تاریخ استفاده کنید

البته با همین تابع jdate با همون روش بالا تست کنید شاید بشه

3

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


لینک به پست
توضیح رو دادم، من میخواستم فقط تاریخ شمسی رو بجای تاریخ میلادی نوشته نمایش بده

پس باید از فید بگیرید و بعد تبدیل به timestamp کنید و بعد بصورت شمسی نشونش بدید .

علل حساب فرمت تاریخ فید ها به این صورت هست .


D\, d M Y h:i:s a"

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

http://boplo.ir/php/jcalendar-jalali-time-converter-class/

2

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


لینک به پست

می‌توانید بخش pubDate را به این تغییر بدید


<pubDate><?php echo function_exists('jdate') ? jdate("Y/m/d",get_post_time('Y-m-d H:i:s', true)) : mysql2date('D, d M Y H:i:s +0000', get_post_time('Y-m-d H:i:s', true), false) ;?></pubDate>

سلام. خسته نباشید.

ابتدا ببخشید که تاپیک قدیمی رو بالا میارم. به دلیل اینکه موضوع سوال بنده مرتبط بود تاپیک جدید نزدم.

من بنا به دلایلی، نیاز به تغییر pubDate به صورت تاریخ جلالی دارم. کدی که آقا پارسا دادن رو تست کردم ولی فقط یک تاریخ ثابت رو نشون میده، مثلا ۱۳۹۲/۰۲/۰۵ .

میخواستم اگه امکان داره لطفا بگین این مشکل چطور حل میشه؟

0

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


لینک به پست

سلام. خسته نباشید.

ابتدا ببخشید که تاپیک قدیمی رو بالا میارم. به دلیل اینکه موضوع سوال بنده مرتبط بود تاپیک جدید نزدم.

من بنا به دلایلی، نیاز به تغییر pubDate به صورت تاریخ جلالی دارم. کدی که آقا پارسا دادن رو تست کردم ولی فقط یک تاریخ ثابت رو نشون میده، مثلا ۱۳۹۲/۰۲/۰۵ .

میخواستم اگه امکان داره لطفا بگین این مشکل چطور حل میشه؟

در این حالت باید فایل اصلی feed-rss2 رو تغییر دهید. شما همین رو میخواهید؟

کد اصلاح شده


<pubDate><?php echo function_exists('jdate') ? jdate('D, d M Y H:i:s +0000', strtotime(get_lastpostmodified('GMT'))) : mysql2date('D, d M Y H:i:s +0000', get_lastpostmodified('GMT'), false) ;?></pubDate>

2

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


لینک به پست

سلام.

آقا پارسای عزیز سپاسگذازم. بله. همین رو دقیقا میخوام. نیاز به تغییر همین کد در فایل feed-rss2 دارم. همین کار رو هم انجام میدم.

ولی این هم نشد. من برای اینکه بهتر متوجه موضوع بشیم یک نمونه که هدفم هست رو داخل فایل html گذاشتم:

http://www.1patogh.com/rss.html

د, ۲۶ فروردین ۱۳۹۲ ۱۴:۳۴:۱۳ +۰۰۰۰

مثل بالا، یک تاریخ ثابت رو نمایش میده و تغییر نمیکنه. راستش من کمی با این کد ور رفتم ولی نتونستم. مجدد مشکلش کجا میتونه باشه؟

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

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


لینک به پست


http://www.1patogh.com/feed2js-master/feed2js.php

در این حالت باید فایل اصلی feed-rss2 رو تغییر دهید. شما همین رو میخواهید؟
2

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


لینک به پست

سلام.

بله. من هم فایل اصلی رو تغییر دادم، الان عدد تاریخ فارسی شده ولی تاریخ شمسی پست نمایش داده نشده.

این feed2js-master/feed2js.php مبدل فید به js هست. آیا به نظر شما تاریخ اصلی رو از خود وردپرس نمیگیره؟ من برای اینکه فید رو داخل فایل html به نمایش بگذارم از این روش استفاده کردم.

محتویات فایل feed2js.php (بصورت خلاصه شده. فقط بخش مربوط به تاریخ)



<?php
// convert to local time via conversion to GMT + offset

// adjust local server time to GMT and then adjust time according to user
// entered offset.

// let's see what kind of timestamps we can pull...
if ($item['date_timestamp'] != "") {
$ts = $item['date_timestamp'];
} elseif ($item['published'] != "") {
$ts = strtotime($item['published']);
} elseif ($item['issued'] != "") {
$ts = strtotime($item['issued']);
} elseif ( $item['dc']['date'] != "") {
$ts = strtotime($item['dc']['date']);
} else {
$ts = time();
}

$pretty_date = date($date_format, $ts - $tz_offset + $tz * 3600);

}

$str.= "document.write('<span class=\"rss-date\">$pretty_date</span><br />');\n";
}



?>

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

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


لینک به پست

<pubDate><?php echo function_exists('jdate') ? jdate('D, d M Y H:i:s +0000', strtotime(get_lastpostmodified('GMT'))) : mysql2date('D, d M Y H:i:s +0000', get_lastpostmodified('GMT'), false) ;?></pubDate>

این کد بالا تاریخ شمسی فعلی رو نمایش میده و تاریخ پست رو نمایش نمیده. جسارتا از نظر من این قسمت اشتباست:

jdate('D, d M Y H:i:s +0000', strtotime(get_lastpostmodified('GMT')))

چون کد اصلی اینطوری تاریخ رو از وردپرس میگیره و از strtotime استفاده نمیکنه.

mysql2date('D, d M Y H:i:s +0000', get_lastpostmodified('GMT'), false)

آیا میشه کد بالا رو در ابتدای jdate تلفیق کنید و درواقع اولش بیاد؟ فکر کنم اونطوری حل بشه. چون دیگه تاریخ رو از خود mysql وردپرس میگیره و شمسی میکنه.

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

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


لینک به پست

<pubDate><?php echo function_exists('jdate') ? jdate('D, d M Y H:i:s +0000', strtotime(get_lastpostmodified('GMT'))) : mysql2date('D, d M Y H:i:s +0000', get_lastpostmodified('GMT'), false) ;?></pubDate>

این کد بالا تاریخ شمسی فعلی رو نمایش میده و تاریخ پست رو نمایش نمیده. جسارتا از نظر من این قسمت اشتباست:

jdate('D, d M Y H:i:s +0000', strtotime(get_lastpostmodified('GMT')))

چون کد اصلی اینطوری تاریخ رو از وردپرس میگیره و از strtotime استفاده نمیکنه.

mysql2date('D, d M Y H:i:s +0000', get_lastpostmodified('GMT'), false)

آیا میشه کد بالا رو در ابتدای jdate تلفیق کنید و درواقع اولش بیاد؟ فکر کنم اونطوری حل بشه. چون دیگه تاریخ رو از خود mysql وردپرس میگیره و شمسی میکنه.

تست کنید


<pubDate><?php echo function_exists('jdate') ? jdate('d M Y H:i:s', strtotime( get_post_time('Y-m-d H:i:s', true))) : mysql2date('D, d M Y H:i:s +0000', get_post_time('Y-m-d H:i:s', true) , false) ;?></pubDate>

2

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


لینک به پست

تست کنید


<pubDate><?php echo function_exists('jdate') ? jdate('d M Y H:i:s', strtotime( get_post_time('Y-m-d H:i:s', true))) : mysql2date('D, d M Y H:i:s +0000', get_post_time('Y-m-d H:i:s', true) , false) ;?></pubDate>

بله. همین درست بود. الان درست شد!! دقیقا همون چیزی که بهش نیاز داشتم. واقعا عالی شد. نمیدونم به چه شکلی تشکر کنم.

نمونه: http://www.1patogh.com/rss.html

از اینکه کمکم کردید بینهایت سپاسگذارم.

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

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


لینک به پست

سلام.

ببخشید که مجدد مزاحم شدم. توسط کمک آقا پارسا اون موردی که بود حل شده و rss در بخش خروجی که مد نظر بود درست نمایش داده می‌شه.

فقط یک موردی هست که براش مشکل به وجود اومده. در سایت وردپرسی بنده توسط تابع خود وردپرس fetch_feed لیست آخرین مطالب یک سایت وردپرسی رو به نمایش میگذارم. برای درج تاریخ هم از اون کدی که آقا پارسا ارائه دادن استفاده میکنم:

<?php printf( jdate("Y/m/d",strtotime( $item->get_date('Y/m/d') ))); ?>

ولی منتها یه مشکلی هست که با تغییر pubDateی که در این تاپیک بحثش شد این کد بالایی اشتباه میکنه و به جای تاریخ پست، تاریخ فعلی (امروز) رو نمایش میده. برای نمونه شکل زیر:

bdfckk06nt6urwhqb98.jpg

میخواستم ببینم آیا امکانش هست به جای استفاده از strtotime( $item->get_date از یه کد دیگه برای نمایش تاریخ پست استفاده کرد؟ مثلا همون کدی که آقا پارسا لطف کرده بودند (کد زیر) رو طوری بشه درست که تاریخ پست رو نشون بده؟ راستش من خیلی تلاش کردم و خیلی توابع رو تعویض کردم و امتحان کردم ولی نتونستم... :(

<?php echo function_exists('jdate') ? jdate(' - Y/m/d', strtotime( get_post_time('Y-m-d H:i:s', true))) : mysql2date('D, d M Y H:i:s +0000', get_post_time('Y-m-d H:i:s', true) , false) ;?>

post-2077-0-99232200-1367162798_thumb.jp

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

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


لینک به پست

سلام.

ببخشید که مجدد مزاحم شدم. توسط کمک آقا پارسا اون موردی که بود حل شده و rss در بخش خروجی که مد نظر بود درست نمایش داده می‌شه.

فقط یک موردی هست که براش مشکل به وجود اومده. در سایت وردپرسی بنده توسط تابع خود وردپرس fetch_feed لیست آخرین مطالب یک سایت وردپرسی رو به نمایش میگذارم. برای درج تاریخ هم از اون کدی که آقا پارسا ارائه دادن استفاده میکنم:

<?php printf( jdate("Y/m/d",strtotime( $item->get_date('Y/m/d') ))); ?>

ولی منتها یه مشکلی هست که با تغییر pubDateی که در این تاپیک بحثش شد این کد بالایی اشتباه میکنه و به جای تاریخ پست، تاریخ فعلی (امروز) رو نمایش میده. برای نمونه شکل زیر:

bdfckk06nt6urwhqb98.jpg

میخواستم ببینم آیا امکانش هست به جای استفاده از strtotime( $item->get_date از یه کد دیگه برای نمایش تاریخ پست استفاده کرد؟ مثلا همون کدی که آقا پارسا لطف کرده بودند (کد زیر) رو طوری بشه درست که تاریخ پست رو نشون بده؟ راستش من خیلی تلاش کردم و خیلی توابع رو تعویض کردم و امتحان کردم ولی نتونستم... :(

<?php echo function_exists('jdate') ? jdate(' - Y/m/d', strtotime( get_post_time('Y-m-d H:i:s', true))) : mysql2date('D, d M Y H:i:s +0000', get_post_time('Y-m-d H:i:s', true) , false) ;?>

وقتی شمسی هست دیگر نیاز به تبدیل ندارد

همون رو چاپ کنید

$item->get_date('Y/m/d')

برای حالت میلادی

2

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


لینک به پست

وقتی شمسی هست دیگر نیاز به تبدیل ندارد

همون رو چاپ کنید

$item->get_date('Y/m/d')

برای حالت میلادی

http://forum.wp-pars...__20#entry57012

حرفتون کاملا درسته آقا پارسا. ولی با تغییر pubDate (همونی که درخواستشو داشتم و شما لطف کرده بودین) تابع $item->get_date تاریخ پست نمایش داده نمیشه و به جاش تاریخ امروز نمایش داده میشه. مثلا همه رو میزنه (۱۳۹۲/۰۲/۰۸)

الان من توسط همون کدی که اشاره کردید اینجا سمت چپ چاپش میکنم http://www.1patogh.com ولی تاریخ روز رو نمایش میده.

این کد پایین رو هم وقتی در سایدبار خروجی میگیرم تاریخ امروز رو نشون میده. میخواستم مشکل این رو برطرف کنم؟

<?php echo function_exists('jdate') ? jdate(' - Y/m/d', strtotime( get_post_time('Y-m-d H:i:s', true))) : mysql2date('D, d M Y H:i:s +0000', get_post_time('Y-m-d H:i:s', true) , false) ;?>

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

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


لینک به پست

این تابع get_date حتما باید فرمت تاریخ رو داشته باشه. و تاریخ شمسی هم که فرمت پذیر نیست

اگر سایت مقصد وردپرس هست از تاپیکی که دادم استفاده کنید

یک سوال: شما میخواهید آخرین مطالب سایت خودتون رو نمایش بدهید؟

2

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


لینک به پست

سلام.

خیر. برای همین سایت نیست. در واقع این رو نمونه گذاشتم روی سایت نمایش بدم. سایت مقصد متفاوت است.

سایت مقصد دو نوع است: 1. اچ تی ام ال 2. وردپرس . الان با کمک شما در صفحه قبل (با تغییر pubDate) تاریخ در صفحه html حل شده است. (نمونه: http://www.1patogh.com/rss.html'>http://www.1patogh.com/rss.html)

ولی اون تاریخ در وردپرس الان تاریخ پست رو نمایش نمیده و تاریخ امروز رو نمایش میده. (نمونه: http://www.1patogh.com سمت راست تاریخ پستها رو نوشته: (۱۳۹۲/۰۲/۰۹))

راستش من میخواستم از get_date استفاده نکنم و به جاش از یه تابع دیگه مثلا get_post_time استفاده کنم. یعنی طوری که در هر دو مورد بالا تاریخ درست نمایش داده بشه. آقا پارسا به نظر شما راهی نیست؟

0

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


لینک به پست

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

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

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

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


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

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

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


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