sir1 512 ارسال شده در مهر 99 گزارش بازنشر ارسال شده در مهر 99 (ویرایش شده) با سلام. ما میخاهیم برای افزایش سرعت سایت به جای گراواتار یک عکس پیشفرض نمایش بدیم و اگر کاربر گراواتار داشت آن را نشان دهد. یک کد در سایت تعریف شده که به صورت زیر است ولی این کد فکر کنم بهینه نیست و با گوشی عکس پیشفرض را نمایش نمیدهد. لطفا اگر کد بهتری هست راهنمایی کنید. <img src="<?php echo $grav_url; ?>" alt=""/> ویرایش شده مهر 99 توسط sir1 نقل قول لینک به ارسال
asadiy4n 2807 ارسال شده در مهر 99 گزارش بازنشر ارسال شده در مهر 99 سلام اگر درست متوجه شده باشم https://stackoverflow.com/questions/32755354/check-if-a-user-has-a-gravatar-wordpress 2 نقل قول لینک به ارسال
sir1 512 ارسال شده در مهر 99 مالک گزارش بازنشر ارسال شده در مهر 99 در 10 دقیقه قبل، asadiy4n گفته است : سلام اگر درست متوجه شده باشم https://stackoverflow.com/questions/32755354/check-if-a-user-has-a-gravatar-wordpress در مورد این لینک چیزی متوجه نشدم چون کد نویسی بلد نیستم. مهندس برای آواتار سفارشی خودمون این کدها در ابزارک استفاده شده: if (is_user_logged_in()) { $c_user = wp_get_current_user(); $email = $c_user->user_email; $default = "https://acgih.ir/wp-content/uploads/2020/10/avatar.jpg"; $size = 135; $grav_url = "https://www.gravatar.com/avatar/" . md5(strtolower(trim($email))) . "?d=" . urlencode($default) . "&s=" . $size; و <div class="vip-widget user"> <div class="top"> <a target="_blank" href="https://fa.gravatar.com/"> <img src="<?php echo $grav_url; ?>" alt=""/> </a> نقل قول لینک به ارسال
sir1 512 ارسال شده در آبان 99 مالک گزارش بازنشر ارسال شده در آبان 99 کد ابزارک ما که آواتار و نام کاربران را نشون میده اینه: <ul> <?php foreach ($orders as $order) { ?> <li class="gc-display-block"> <img class="gc-item1 gc-width-40 gc-padding-rl-5" src="<?php echo get_avatar_url($order['id']); ?>" alt="آواتار کاربران"> <span class="gc-item2 gc-padding-10 "><?php echo $order['display_name'] ?></span> </li> <?php } ?> </ul> حالا با این تفاسیر لطفا کد بالا را ویرایش کنید. نقل قول لینک به ارسال
yazdaniwp 1187 ارسال شده در آبان 99 گزارش بازنشر ارسال شده در آبان 99 در در ۱۳۹۹/۸/۱ در 11:59، sir1 گفته است : کد ابزارک ما که آواتار و نام کاربران را نشون میده اینه: <ul> <?php foreach ($orders as $order) { ?> <li class="gc-display-block"> <img class="gc-item1 gc-width-40 gc-padding-rl-5" src="<?php echo get_avatar_url($order['id']); ?>" alt="آواتار کاربران"> <span class="gc-item2 gc-padding-10 "><?php echo $order['display_name'] ?></span> </li> <?php } ?> </ul> حالا با این تفاسیر لطفا کد بالا را ویرایش کنید. سلام. منظورتون از orders، سفارشات ووکامرس هست؟ کدی که این $orders رو دادید به این حلقه رو ننوشتید. نمیشه کمکی کرد واقعا. کد رو کامل قرار بدید تا کمک کنیم. 1 نقل قول لینک به ارسال
sir1 512 ارسال شده در آبان 99 مالک گزارش بازنشر ارسال شده در آبان 99 در 1 دقیقه قبل، yazdaniwp گفته است : سلام. منظورتون از orders، سفارشات ووکامرس هست؟ کدی که این $orders رو دادید به این حلقه رو ننوشتید. نمیشه کمکی کرد واقعا. کد رو کامل قرار بدید تا کمک کنیم. سلام نه مال ابزارک سایت است که لیست کاربران ویژه را نشون میده. کد کامل پیوست شد code.txt نقل قول لینک به ارسال
yazdaniwp 1187 ارسال شده در آبان 99 گزارش بازنشر ارسال شده در آبان 99 در در ۱۳۹۹/۸/۵ در 01:28، sir1 گفته است : سلام نه مال ابزارک سایت است که لیست کاربران ویژه را نشون میده. کد کامل پیوست شد code.txt 8.88 kB · 0 دریافت سلام مجدد. کدتون باید این مدلی باشه: <ul> <?php foreach ( $orders as $order ) : $user = get_userdata( $order['id'] ); $avatar = get_avatar( $user->user_email, $size = '48', $default = bloginfo( 'template_directory' ) . '/img/default-avatar.jpg' ); ?> <li class="gc-display-block"> <img class="gc-item1 gc-width-40 gc-padding-rl-5" src="<?php echo avatar; ?>" alt="آواتار <?php echo $order['display_name'] ?>"> <span class="gc-item2 gc-padding-10 "><?php echo $order['display_name'] ?></span> </li> <?php endforeach; ?> </ul> با این کد، اگه آواتار موجود باشه نمایشش میده و اگه موجود نباشه فایل dafault-avatar.jpg که داخل مسیر public_html/wp-content/themes/img هست رو جایگزین میکنه. 3 نقل قول لینک به ارسال
sir1 512 ارسال شده در آبان 99 مالک گزارش بازنشر ارسال شده در آبان 99 در 6 ساعت قبل، yazdaniwp گفته است : سلام مجدد. کدتون باید این مدلی باشه: <ul> <?php foreach ( $orders as $order ) : $user = get_userdata( $order['id'] ); $avatar = get_avatar( $user->user_email, $size = '48', $default = bloginfo( 'template_directory' ) . '/img/default-avatar.jpg' ); ?> <li class="gc-display-block"> <img class="gc-item1 gc-width-40 gc-padding-rl-5" src="<?php echo avatar; ?>" alt="آواتار <?php echo $order['display_name'] ?>"> <span class="gc-item2 gc-padding-10 "><?php echo $order['display_name'] ?></span> </li> <?php endforeach; ?> </ul> با این کد، اگه آواتار موجود باشه نمایشش میده و اگه موجود نباشه فایل dafault-avatar.jpg که داخل مسیر public_html/wp-content/themes/img هست رو جایگزین میکنه. یک عکس را در public_html/wp-content/themes/img/default-avatar.jpg قرار دادم و کد بالا را جایگزین کردم ولی کار نمیکنه و خروجیش به صورت زیر است در ابزارک سایت: مشکلی که داره اصلا تصویر آواتار را از مسیر بالا نمیخونه بلکه از مسیر https://en.acgih.ir/wp-content/uploads/2020/10/avatar.jpg میخونه. مورد بعد اینکه یکی از دوستانم گفت که مشکل Serve resources from a consistent URL در جی تی متریکس حل نمیشه چون در هر صورت یک درخواست میفرسته به گراواتار. باید بدم به یک کدنویس که کاربران از روی سایت تصویر آپلود کنند که مشکل بالا حل بشه و کلا از گراواتار استفاده نکنیم. نقل قول لینک به ارسال
yazdaniwp 1187 ارسال شده در آبان 99 گزارش بازنشر ارسال شده در آبان 99 در 10 ساعت قبل، sir1 گفته است : یک عکس را در public_html/wp-content/themes/img/default-avatar.jpg قرار دادم و کد بالا را جایگزین کردم ولی کار نمیکنه و خروجیش به صورت زیر است در ابزارک سایت: مشکلی که داره اصلا تصویر آواتار را از مسیر بالا نمیخونه بلکه از مسیر https://en.acgih.ir/wp-content/uploads/2020/10/avatar.jpg میخونه. مورد بعد اینکه یکی از دوستانم گفت که مشکل Serve resources from a consistent URL در جی تی متریکس حل نمیشه چون در هر صورت یک درخواست میفرسته به گراواتار. باید بدم به یک کدنویس که کاربران از روی سایت تصویر آپلود کنند که مشکل بالا حل بشه و کلا از گراواتار استفاده نکنیم. بله اشتباه از سمت من بود. این کد رو جایگزین و تست کنید لطفا: <ul> <?php foreach ( $orders as $order ) : ?> <li class="gc-display-block"> <?php get_avatar( $order['id'], $size = '48', $default = bloginfo( 'template_directory' ) . '/img/default-avatar.jpg' ); ?> <span class="gc-item2 gc-padding-10 "><?php echo $order['display_name'] ?></span> </li> <?php endforeach; ?> </ul> با این توضیح که فایل تصوی پیشفرض رو در مسیر زیر قرار بدید: public_html/wp-content/themes/enfold/img/default-avatar.jpg این کد ریکوئست php میفرسته و مشکلی داخل جی تی متریکس بوجود نمیاره. جی تی متریکس ریکوئستهای بعد از لود صفحه رو بررسی میکنه. 2 نقل قول لینک به ارسال
sir1 512 ارسال شده در آبان 99 مالک گزارش بازنشر ارسال شده در آبان 99 در ۱ ساعت قبل، yazdaniwp گفته است : بله اشتباه از سمت من بود. این کد رو جایگزین و تست کنید لطفا: <ul> <?php foreach ( $orders as $order ) : ?> <li class="gc-display-block"> <?php get_avatar( $order['id'], $size = '48', $default = bloginfo( 'template_directory' ) . '/img/default-avatar.jpg' ); ?> <span class="gc-item2 gc-padding-10 "><?php echo $order['display_name'] ?></span> </li> <?php endforeach; ?> </ul> با این توضیح که فایل تصوی پیشفرض رو در مسیر زیر قرار بدید: public_html/wp-content/themes/enfold/img/default-avatar.jpg این کد ریکوئست php میفرسته و مشکلی داخل جی تی متریکس بوجود نمیاره. جی تی متریکس ریکوئستهای بعد از لود صفحه رو بررسی میکنه. کد بالا را گذاشتم باز عکس پیشفرض را نشون نمیده و به جاش مسیر hrrps://en.acgih.ir/wp-content/themes/enfold را نشان میده عکس در مسیر public_html/wp-content/themes/enfold/img/default-avatar.jpg قرار دادم. این تیکه img/default-avatar.jpg را نمیخونه نقل قول لینک به ارسال
پست های پیشنهاد شده
به گفتگو بپیوندید
هم اکنون می توانید مطلب خود را ارسال نمایید و بعداً ثبت نام کنید. اگر حساب کاربری دارید، برای ارسال با حساب کاربری خود اکنون وارد شوید .