Milad.flight
-
تعداد ارسالها
27 -
تاریخ عضویت
-
آخرین بازدید
نوشتهها ارسال شده توسط Milad.flight
-
-
قالبتون فایل comments.php داره؟
اگر داره باید ببینید حلقه دیدگاه کجا درست می شه
یا توی همون فایله یا callback شده به یک تابع در functions.php
در حلقه نظرات باید وارد کنید
<?php
$comment_user_id = $comment->user_id;
$gupc = get_user_posts_count($comment_user_id);
if($comment_user_id>0 and $gupc>0) {
echo '<a href="'.home_url('/?author='.$comment_user_id).'">';
comment_author();
echo '</a>';
}
else {
comment_author_link();
} ?>اره فایل comment.php رو داره اما قالبم یه فایل دیگه به اسم partial-comment.php داره که توش تعریف شده که نام نویسنده دیدگاه رو نشون بده و فقط تو همین تعریف شده و دیگه تو comment.php تعریف نشده و من فقط میخوام یه کاری کنم که وقتی رو اسم نویسنده کلیک میکنم بره به پروفایل نویسنده دیدگاه الان به صورت پیشفرض وقتی رو اسم نویسنده دیدگاه کلیک کنی میره به آدرس وبلاگ یا سایتی که کاربر تو پروفایلش زده
خب من اینجا کل کد فایل partial-comment.php رو میزارم تا ببینید
<?php
if (!function_exists('bunyad_smartmag_comment')):
/**
* Callback for displaying a comment
*
* @todo eventually move to bunyad templates with auto-generated functions as template containers
*
* @param mixed $comment
* @param array $args
* @param integer $depth
*/
function bunyad_smartmag_comment($comment, $args, $depth)
{
$GLOBALS['comment'] = $comment;
switch ($comment->comment_type):
case 'pingback':
case 'trackback':
?>
<li class="post pingback">
<p><?php _e('Pingback:', 'bunyad'); ?> <?php comment_author_link(); ?><?php edit_comment_link(__('Edit', 'bunyad'), '<span class="edit-link">', '</span>'); ?></p>
<?php
break;
default:
?>
<li <?php comment_class(); ?> id="li-comment-<?php comment_ID(); ?>">
<article id="comment-<?php comment_ID(); ?>" class="comment">
<div class="comment-avatar">
<?php
echo get_avatar($comment, 40);
?>
</div>
<div class="comment-meta">
<span class="comment-author"><?php comment_author_link(); ?></span> <?php _e('on', 'bunyad'); ?>
<a href="<?php comment_link(); ?>" class="comment-time" title="<?php comment_date(); _e(' at ', 'bunyad'); comment_time(); ?>">
<time pubdate datetime="<?php comment_time('c'); ?>"><?php comment_date(); ?> <?php comment_time(); ?></time>
</a>
<?php edit_comment_link(__( 'Edit', 'bunyad' ), '<span class="edit-link"> · ', '</span>' ); ?>
</div> <!-- .comment-meta -->
<div class="comment-content">
<?php comment_text(); ?>
<?php if ($comment->comment_approved == '0'): ?>
<em class="comment-awaiting-moderation"><?php _e('Your comment is awaiting moderation.', 'bunyad'); ?></em>
<?php endif; ?>
<div class="reply">
<?php
comment_reply_link(array_merge($args, array(
'reply_text' => __( 'Reply', 'bunyad') . ' <i class="fa fa-angle-right"></i>',
'depth' => $depth,
'max_depth' => $args['max_depth']
)));
?>
</div><!-- .reply -->
</div>
</article><!-- #comment-N -->
<?php
break;
endswitch;
}
endif;همونطور که میبینید تو کد کلاس
comment-meta
کار نمایش نام نویسنده دیدگاه و تاریخ ارسال دیدگاه رو نشون میده
-
سلام به همه دوستان عزیز
من تو قسمت دیدگاه های سایتم میخواستم وقتی روی نام کسی که دیدگاه رو ارسال کرده کلیک میکنم من رو ببره به صفحه پروفایلش
میشه؟؟
-
بله با تشکر
-
خب من افزونه یوزرپرو رو داشتم اون رو از طریق هاست فایلش رو پاک کردم یک بار وارد سایتم شدم دست شد بعد دوباره فایلی رو که پاک کرده بودم برگردوندم سر جاش درست شد کلا
فقط میخواستم بدونم این اتفاق برای چی پیش افتاده؟
-
سلام خدمت تمامی دوستان
یه سوال داشتم من داشتم چند تا کد سی اس اس دستکاری میکردم و کد های هدر رو درست میکردم که یهو از سایت خارج شدم و دیگه هم نمیتونم وارد پنلم بشم و تا رمز و پسورد رو میزنم و دکمه ورود رو میزنم این ارور رو میده
SyntaxError: JSON.parse: unexpected end of data at line 4 column 1 of the JSON data
باید چیکار کنم مشکل چیه؟؟
-
خب خدارو شکر درست شد واقعا ممنونم از لطف و زحمت همه ی دوستان عزیز
موفق و پیروز باشید
- 1
-
$user_registered = strtotime(the_author_meta('user_registered', $id));
echo parsidate('Y m d',$datetime=$user_registered,$lang='per');بازم جواب نداد
-
جواب نداد خروجی این شد
تاریخ عضویت شما: 2014-09-03 11:49:44۱۳۴۸ ۱۰ ۱۱
در صورتی که باید بشه 1393 6 12
البته خودش تاریخ رو به صورت میلادی به این شکل نشون میده
تاریخ عضویت شما: 2014-09-03 11:49:44
که درسته فقط شمسی نیست
-
ممنون از کمکتون اما من افزونه Sb-login رو نصب کردم و توی کد هاش یه قسمتی این کد رو داره که مربوط به تاریخ عضویت میشه که توی یه ابزارک تاریخ عضویت رو نشون میده کد رو نگاه کنید میفهمید من میخوام شمسیش کنم با کد های شما ور رفتم اما خارج از افزونه جواب میده اما وقتی میخوام توی ویجت افزونه شمسی بشه نمیشه
<div class="nd_logged_in" id="sb_info">
<ul style="list-style: none outside;margin-left: 0px;">
<li><strong><span style="color:#0176AB;"><?php _e('آیدی شما:', 'sb-login'); ?></span> <?php
$id = get_current_user_id();
echo '' . the_author_meta('ID', $id) . '';
?></strong></li>
<li><strong><span style="color:#0176AB;"><?php _e('تاریخ عضویت شما:', 'sb-login'); ?></span> <?php
$id = get_current_user_id();
echo '' . the_author_meta('user_registered', $id) . '';
?></strong></li>
<li><strong><span style="color:#0176AB;"><?php _e('تعداد مطالبی که شما ارسال کردید:', 'sb-login'); ?></span></strong> <?php
$id = get_current_user_id();
echo '<strong>' . count_user_posts( $id ) . '</strong>';
?></li>
<li><strong><span style="color:#0176AB;"><?php _e('تعداد دیدگاه هایی که شما ارسال کردید:', 'sb-login'); ?></span></strong> <?php
global $wpdb, $current_user;
get_currentuserinfo();
$userId = $current_user->ID;
$where = 'WHERE comment_approved = 1 AND user_id = ' . $userId ;
$comment_count = $wpdb->get_var("SELECT COUNT( * ) AS total
FROM {$wpdb->comments}
{$where}");
echo '<strong>' . $comment_count . '</strong>';
?></li>
<li><strong><span style="color:#0176AB;"><?php _e('سطح شما:', 'sb-login'); ?></span> <?php
$id = get_current_user_id();
echo '' . the_author_meta('user_level', $id) . '';
?></strong></li>
</div> -
با سلام و خسته نباشید خدمت تمامی دوستان عزیز
همانطور که میدونید با استفاده از تابع
user_registeredمیشه تاریخ عضویت هر کاربر رو نشان داد اما این تاریخ میلادی هست و من میخوام بدونم چطور میتونم تاریخ عضویت رو به صورت شمسی نشون بدم
درضمن از بسته فارسی ساز استفاده میکنم
با تشکر
-
سلام.دوست عزیز من از این کد استفاده میکنم کاملا درست کار میکنه بدون هیچ اشکالی..فقط از افزونه جلالی استفاده کن..
/*آخرین زمان ورود*/
function your_last_login($login) {
global $user_ID;
$user = get_userdatabylogin($login);
update_usermeta($user->ID, 'last_login', jdate('d M Y ساعت: H:i:s'));
}
add_action('wp_login','your_last_login');
function get_last_login($user_id) {
$last_login = get_user_meta($user_id, 'last_login', true);
$date_format = jdate('d M Y ساعت: H:i:s') . ' ';
$the_last_login = mysql2date($date_format, $last_login, true);
echo $the_last_login;
}برای فراخوانی هم از این استفاده کن:
<?php
global $userdata;
get_currentuserinfo();
echo 'آخرین ورود شما :';
get_last_login($userdata->ID);
?>اگه هم تو ساعت اشکال داشتی این کد رو تو فانکشن قالبت اضافه کن
<?php date_default_timezone_set('Asia/Tehran');?>ممنون دوست عزیز اما نمیدونم چرا به جای این که تاریخ آخرین ورود رو نشون بده 10 ثانیه قبل از زمان ورود رو نشون میده یعنی اگه مثلا اگه دیروز ساعت 10:50 بیرون رفته باشم بعد فردا وارد بشم تاریخ روز رو با 10 ثانیه کمتر نشون میده
-
نه این کدتون هم جواب نداد
-
دوست عزیز اسپم ارسال نکنید و منتظر باشید
همون کد خودتون رو به این صورت استفاده کنید :
function get_last_login($user_id) {
$last_login = get_user_meta($user_id, 'last_login', true);
$date_format = the_time('l, F jS, Y');
$the_last_login = mysql2date($date_format, $last_login, false);
echo $the_last_login;
}بله چشم ببخشید
-
ببینید من متوجه یه چیز دیگه ای شدم
تو این پلاگین 2تا فایل هست
1-logged-in.php
2-sb-login.php
و تو هر 2تا فایل قسمت های مربوط به تاریخ عضویت و زمان آخرین باری که لاگین شده وجود داره
من نمیدونم کدوم رو باید تغییر بدم هر 2تا فایل رو پیوست میکنم شما تغیرات لازمش رو بی زحمت انجام بدید بهم بدید یا این که بگید کدوم رو باید درست کرنم
-
خب به لینکی که دادید رفتم خوندم اما نتونستم درستش کنم
ببینید کد افزونه برای نمایش تاریخ عضویت اینه
</strong></li>
<li><strong><span style="color:#0176AB;"><?php _e('زمان عضویت شما:', 'sb-login'); ?></span> <?php
$id = get_current_user_id();
echo '' . the_author_meta('user_registered', $id) . '';
?>
</strong></li>من اومدم به این شکلش کردم اما کار نکرد
</strong></li>
<li><strong><span style="color:#0176AB;"><?php _e('زمان عضویت شما:', 'sb-login'); ?></span> <?php
$id = get_current_user_id();
echo '' . the_author_meta('user_registered', $id) . '';
?>
parsidate('Y m d',$datetime='user_registered',$lang='per')
</strong></li>باید چیکارش کنم؟
-
خب خداروشکر ممنون از زحمتاتون حل شد درست کارکرد خیلی مممنونم
فقط 2تا سوال
حتما باید افزونه جلالی نصب باشه یا با wp-parsidate کار میکنه؟
و دومین سوالم اینه که تابع user_registered که تاریخ عضوت رو نشون میده به میلادی هست چطور میتونم شمسیش کنم؟؟
ببخشید یکجاش گیر گردم
تو خود افزونه توی php صفحه پروفایلش که تاریخ آخرین لاگین رو نشون میده به اینصورت درست کرده
function nd_update_user_meta( $user_id ) {
update_user_meta( $user_id, 'nd_login_time', current_time('timestamp') );
update_user_meta( $user_id, 'nd_num_comments', wp_count_comments()->approved );
update_user_meta( $user_id, 'nd_num_posts', wp_count_posts('post')->publish );
}خط اول مربوط میشه به تاریخ آخرین لاگین
حالا با کد هایی که شما دادید من چطور خط اولش رو درست کنم تا تو پروفایل افزونه تاریخ درست شده با کد شما رو نشون بده؟؟
شرمنده ها
-
خب خداروشکر ممنون از زحمتاتون حل شد درست کارکرد خیلی مممنونم
فقط 2تا سوال
حتما باید افزونه جلالی نصب باشه یا با wp-parsidate کار میکنه؟
و دومین سوالم اینه که تابع user_registered که تاریخ عضوت رو نشون میده به میلادی هست چطور میتونم شمسیش کنم؟؟
-
ممنون فقط با گذاشتن فاکشن آخری زمان آخرین ورود رو کجا نشون میده؟؟
-
فرقی نداره که با افزونه باشه یا بدون افزونه کلا توی این سایت
http://www.wp-pro.ir/thread2175.html
همین کار رو بدون افزونه کرده که کلا شبیه همین هست اما بازم میلادی هست و شمسی نمیشه
کسی میدونه باید چیکار کرد؟
-
کل کد این هست
function your_last_login($login) {
global $user_ID;
$user = get_userdatabylogin($login);
update_usermeta($user->ID, 'last_login', current_time('jdate'));
}
add_action('wp_login','your_last_login');
function get_last_login($user_id) {
$last_login = get_user_meta($user_id, 'last_login', true);
$date_format = get_option('date_format') . ' ' . get_option('time_format');
$the_last_login = mysql2date($date_format, $last_login, false);
echo $the_last_login;
}
function nd_update_user_meta( $user_id ) {
update_user_meta( $user_id, 'nd_login_time', current_time('timestamp') );
update_user_meta( $user_id, 'nd_num_comments', wp_count_comments()->approved );
update_user_meta( $user_id, 'nd_num_posts', wp_count_posts('post')->publish );
}که فاکشن آخری خط اول تاریخ آخرین ورود کاربر رو نشون میده و خط 2 و 3 پست ها و کامنت هایی که بعد از آخرین ورود کاربر آمده نشون میده
حالا کدی رو که دادید جای کدوم کد بذارم؟؟؟
راستی اون jdate اولی رو خودم گذاشتم درستش mysql هست
راستی کدی رو که دادید گذاشتم بازم میلادی نشون میداد
بله افزونه sb-login هست که فرم لاگین داره و نمایش آخرین ورود کاربر هم تو پروفایلش هست این صفحه افزونه هست
-
کل کد این هست
function your_last_login($login) {
global $user_ID;
$user = get_userdatabylogin($login);
update_usermeta($user->ID, 'last_login', current_time('jdate'));
}
add_action('wp_login','your_last_login');
function get_last_login($user_id) {
$last_login = get_user_meta($user_id, 'last_login', true);
$date_format = get_option('date_format') . ' ' . get_option('time_format');
$the_last_login = mysql2date($date_format, $last_login, false);
echo $the_last_login;
}
function nd_update_user_meta( $user_id ) {
update_user_meta( $user_id, 'nd_login_time', current_time('timestamp') );
update_user_meta( $user_id, 'nd_num_comments', wp_count_comments()->approved );
update_user_meta( $user_id, 'nd_num_posts', wp_count_posts('post')->publish );
}که فاکشن آخری خط اول تاریخ آخرین ورود کاربر رو نشون میده و خط 2 و 3 پست ها و کامنت هایی که بعد از آخرین ورود کاربر آمده نشون میده
حالا کدی رو که دادید جای کدوم کد بذارم؟؟؟
-
از افزونه wp-parsidate استفاده میکنم
من خودم جای mysql2date و mysql
parsidate گذاشتم اما تاریخ روز رو فقط نشون میده نه تاریخ آرین باری که لاگین بوده
-
سلام ببخشید من یه کمک میخواستم
توی سایتم تو پروفایل هر کاربر تاریخ آخرین باری که وارد سایت شده رو نشون میده
اینم کدش هست
function your_last_login($login) {
global $user_ID;
$user = get_userdatabylogin($login);
update_usermeta($user->ID, 'last_login', current_time('mysql'));
}
add_action('wp_login','your_last_login');
function get_last_login($user_id) {
$last_login = get_user_meta($user_id, 'last_login', true);
$date_format = get_option('date_format') . ' ' . get_option('time_format');
$the_last_login = mysql2date($date_format, $last_login, false);
echo $the_last_login;
}
function nd_update_user_meta( $user_id ) {
update_user_meta( $user_id, 'nd_login_time', current_time('timestamp') );
update_user_meta( $user_id, 'nd_num_comments', wp_count_comments()->approved );
update_user_meta( $user_id, 'nd_num_posts', wp_count_posts('post')->publish );
}اما این کد تاریخ رو به صورت میلادی نشون میده
چیکار باید بکنم تا به صورت شمسی نشون بده؟؟؟؟؟؟؟
دوستان به طور خیلی رسمی Help meeeeeee
لینک پروفایل نویسنده دیدگاه
در مشکلات دیگر
ارسال شده در
گذاشتم جواب نداد
به هر حال ممنون از زحمتتون