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

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

جدیدترین اخبار دنیای فناوری ، PHP با نسخه ۷ بروز شد؛ بزرگترین بروزرسانی سال

امسال هفتمین سال است که زبان برنامه نویسی php به عنوان چهارمین زبان محبوب در میان برنامه نویسان انتخاب می شود. این زبان در بیش از ۲۰۰ میلیون وبسایت فعال در اینترنت به کار گرفته شده است و چیزی حدود ۸۱٫۷ درصد از سرور های فعال کنونی در حال اجرای این زبان برای اجرای وبسایت ها هستند.

php این هفته با یک جهش رو به جلو در بروز رسانی خود تغییرات عمده ای را برای برنامه نویس ها فراهم کرده است، از سال ۲۰۰۴ که نسخه ۵ این زبان برنامه نویسی ارائه شده بروز رسانی های این چنینی بی سابقه است.

جدیدترین اخبار دنیای فناوری ، PHP با نسخه ۷ بروز شد؛ بزرگترین بروزرسانی سال

در نسخه PHP 7 شاهد بهبود عملکردی هستیم که تا ۳ برابر سرعت و کارایی بیشتر را نسبت به نسخه PHP 5.6 در اختیار ما قرار خواهد داد. نسخه جدید شامل تغییرات ریز و درشت بسیاری است، کاهش قابل توجه استفاده از حافظه، تعریف نوع بازگشتی اعلان ها و … همچنین در نسخه ۷ PHP شاهد تغییرات عمده ای هستیم راجع به حذف حالت safe mode و magic quotes و …

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

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

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


لینک به پست

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

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

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

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


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

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

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


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

  • مطالب مشابه

    • توسط estedadrap
      سلام
      من میخوام از زمینه دلخواه استفاده کنم تو یه قسمت از کد php اما هرکاری میکنم اررور ; یا , میده
       
      echo do_shortcode(' <div class="buttondl"> <a href="#buy_album" class="popup_link button medium buy_album">Download</a> <div id="buy_album" class="popup"><div class="def-block widget"> اینجا زمینه دلخواه نمایش داده بشه بصورت لینک </div></div></div> '); <a href="<?php $dl = get_post_meta($post->ID, 'dl', true); ?>"></a> میخوام زمینه دلخواه بالا رو داخل کد php قرار بدم
    • توسط estedadrap
      سلام
      خسته نباشید 
      من جهت تکمیل کرد بخش آرتیست یک سایت موزیک میخوام در قسمت ارتیست تعداد کل اهنگ های مرتبط با هر ارتیست رو نشون بدم
      قالبی که استفاده میکنم این قابلیت رو داره که با ایجاد بخش ارتیست برای هر شخض این کار رو انجام بده اما این قابلیت داخل پست تیپ داخل داشبورد گذاشته شده 
      تو عکسی که لینکشو زیر میزارم بهتر متوجه خواهید شد..
      AXE
      و اما... پیگیر شدم و کدش رو با هزار مکافات که داخل یه فایل فانشن تو یه افزونه اختصاصی قالب جا خوش کرده بود رو پیدا کردم
      اما از اونجایی که کدنویسی خیلی پیچیده ای داشت نتونستم به هدفم برسم
      کد رو براتون میزارم ..
      <?php /** * Post Types * * @author Codevz * @link http://codevz.com */ if ( ! defined( 'ABSPATH' ) ) { die( '-1' ); } class Codevz_CPT { public function __construct() { add_action( 'admin_head', array( $this, 'admin_head' ) ); $this->types = array( 'artists' => 'dashicons-admin-users', 'songs' => 'dashicons-format-audio', 'news' => 'dashicons-format-audio', 'playlists' => 'dashicons-playlist-audio', 'podcasts' => 'dashicons-microphone', 'lyrics' => 'dashicons-welcome-write-blog', 'videos' => 'dashicons-video-alt3', 'events' => 'dashicons-calendar', 'gallery' => 'dashicons-format-gallery' ); /* Register post types */ add_action( 'init', array( $this, 'register' ), 0 ); /* Manage CPT columns action */ add_action( 'manage_posts_custom_column', array( $this, 'manage_columns' ), 10, 2 ); /* Manage CPT columns filter */ foreach ( $this->types as $name => $i ) { $columns = array(); add_filter( "manage_edit-".$name."_columns", function () use ( $columns ) { global $typenow; $i = array(); $i['cb'] = 'cb-select-all-1'; $i['cover'] = __( 'Cover', 'cd' ); $i['title'] = __( 'Title', 'cd' ); if ( $typenow !== 'artists' ) { $i['cd_artist'] = __( 'Artist', 'cd' ); } if ( $typenow === 'artists' ) { $i['cd_items'] = __( 'Items', 'cd' ); $i['taxonomy-artist'] = __( 'Under', 'cd' ); } if ( $typenow === 'events' ) { $i['cd_event_date'] = __( 'Start', 'cd' ); $i['cd_end_event_date'] = __( 'End', 'cd' ); $i['cd_venue'] = __( 'Venue', 'cd' ); } if ( $typenow === 'songs' ) { $i['cd_plays'] = __( 'Plays', 'cd' ); $i['cd_downloads'] = __( 'Downloads', 'cd' ); } if ( $typenow === 'songs' ) { $i['cd_plays'] = __( 'Plays', 'cd' ); $i['cd_downloads'] = __( 'Downloads', 'cd' ); } if ( $typenow === 'videos' ) { $i['cd_views'] = __( 'Views', 'cd' ); } $i['cd_likes'] = __( 'Likes', 'cd' ); $i['cd_dislikes'] = __( 'Dislikes', 'cd' ); $i['comments'] = __( 'CM', 'cd' ); $i['author'] = __( 'By', 'cd' ); if ( $typenow === 'post' ) { $i['categories'] = __( 'Categories', 'cd' ); } $i['date'] = __( 'Date', 'cd' ); $columns = $i; return $columns; }); } /* Sortable cols */ $this->sortable = array( 'cd_event_date', 'cd_end_event_date', 'cd_plays', 'cd_likes', 'cd_dislikes', 'cd_downloads', 'cd_views' ); foreach ( $this->types as $name => $i ) { $columns = array(); add_filter( "manage_edit-".$name."_sortable_columns", function () use ( $columns ) { foreach ( $this->sortable as $i ) { $columns[$i] = $i; } return $columns; }); } add_action( 'load-edit.php', array( $this, 'sorting_request' ) ); } public function admin_head() { echo '<style> .vc_license-activation-notice, .eg-update-notice-wrap, .rs-update-notice-wrap { position: absolute; height: 1px !important; left: -10000px !important } .dashicons-format-audio:before, .dashicons-playlist-audio:before, .dashicons-microphone:before, .dashicons-welcome-write-blog:before, .menu-icon-artists .dashicons-admin-users:before, .dashicons-video-alt3:before, .dashicons-format-gallery:before, .dashicons-calendar:before { color: #2ea2cc !important } .wp-has-current-submenu .dashicons-format-audio:before, .wp-has-current-submenu .dashicons-playlist-audio:before, .wp-has-current-submenu .dashicons-microphone:before, .wp-has-current-submenu .dashicons-welcome-write-blog:before, .wp-has-current-submenu .dashicons-admin-users:before, .wp-has-current-submenu .dashicons-video-alt3:before, .wp-has-current-submenu .dashicons-format-gallery:before, .wp-has-current-submenu .dashicons-calendar:before { color: #fff !important } th#artist, th#cd_plays, th#cd_likes, th#cd_dislikes, th#alphabet, th#cd_downloads, th#cd_views, th#items, th#taxonomy-artist, th#categories, th#venue, th#status { width: 8% } th#cd_event_start, th#cd_event_end { width: 10% } th#cover { width: 42px } .cover img, .riv_post_thumbs img { border-radius: 4px; width: 40px; height: 40px } .cd_ico { background-image: none !important; background-color: #2A81CC; text-align: center; border-radius: 2px; padding: 5px; width: inherit !important; height: inherit !important; } .cd_ico:before { color: #fff !important } .wpb_element_title .cdz_ico { width: 22px !important; height: 20px !important } [data-param_type|=posttypes] .edit_form_line, [data-param_type|=checkbox] .edit_form_line { height: 126px; overflow: auto; border: 1px solid #F3F3F3; padding: 2px 0 0 10px } [data-param_type|=posttypes] .vc_checkbox-label, [data-param_type|=checkbox] .vc_checkbox-label { display: block; margin: 6px 0 } </style>'; } public function register() { $this->menu_separator( 26 ); $options = get_option( '_cs_options' ); foreach ( $this->types as $slug => $icon ) { $opt = isset( $options[ $slug . '_settings' ] ) ? $options[ $slug . '_settings' ] : array(); $opt = array( 'slug' => !empty( $opt['slug'] ) ? $opt['slug'] : $slug, 'title' => !empty( $opt['title'] ) ? $opt['title'] : ucfirst( $slug ), 'alphabet_slug' => !empty( $opt['alphabet_slug'] ) ? $opt['alphabet_slug'] : $slug.'/browse', 'alphabet_title'=> !empty( $opt['alphabet_title'] ) ? $opt['alphabet_title'] : 'Alphabet', 'cat_slug' => !empty( $opt['cat_slug'] ) ? $opt['cat_slug'] : $slug.'/cat', 'cat_title' => !empty( $opt['cat_title'] ) ? $opt['cat_title'] : 'Categories' ); register_taxonomy( $slug.'_cat', $slug, array( 'hierarchical' => true, 'labels' => array( 'name' => $opt['cat_title'], 'menu_name' => $opt['cat_title'] ), 'show_ui' => true, 'show_admin_column' => true, 'query_var' => true, 'show_in_rest' => true, 'rewrite' => array( 'slug' => $opt['cat_slug'], 'with_front' => false ), ) ); if ( $slug === 'artists' ) { register_taxonomy( 'artist', 'artists', array( 'hierarchical' => true, 'labels' => array( 'name' => $opt['alphabet_title'], 'menu_name' => $opt['alphabet_title'] ), 'show_ui' => true, 'show_admin_column' => true, 'show_in_rest' => true, 'query_var' => true, 'rewrite' => array( 'slug' => $opt['alphabet_slug'], 'with_front' => false ), ) ); } register_post_type( $slug, array( 'labels' => array( 'name' => $opt['title'], 'menu_name' => $opt['title'] ), 'public' => true, 'menu_icon' => $icon, 'supports' => array( 'title', 'editor', 'thumbnail', 'custom-fields', 'comments', 'author' ), 'has_archive' => true, 'show_in_rest' => true, 'rewrite' => array( 'slug' => $opt['slug'], 'with_front' => false ) ) ); register_taxonomy_for_object_type( 'post_tag', $slug ); } $this->menu_separator( 36 ); } public function sorting_request() { add_filter( 'request', array( $this, 'sorting' ) ); } public function sorting( $vars ) { foreach ( $this->sortable as $i ) { if ( isset( $vars['orderby'] ) && $i === $vars['orderby'] ) { if ( $i == 'cd_event_date' || $i === 'cd_end_event_date' ) { $vars = array_merge( $vars, array( 'meta_query' => array( array( 'key' => $i, 'value' => date('2030/12/28 10:30'), 'compare' => '<' ) ) ) ); } else { $vars = array_merge( $vars, array( 'meta_key' => $i, 'orderby' => 'meta_value_num' ) ); } } } return $vars; } public function manage_columns( $column, $post_id ) { $meta = get_post_meta( $post_id, 'cd_meta', true ); $meta = isset( $meta ) ? $meta : array(); $out = ''; switch( $column ) { case 'cover' : ob_start(); the_post_thumbnail( 'thumbnail' ); $out = ob_get_clean(); break; case 'cd_items' : $out .= $this->get_artist_items( 'post', $post_id ); $out .= $this->get_artist_items( 'songs', $post_id ); $out .= $this->get_artist_items( 'news', $post_id ); $out .= $this->get_artist_items( 'posts', $post_id ); $out .= $this->get_artist_items( 'videos', $post_id ); $out .= $this->get_artist_items( 'podcasts', $post_id ); $out .= $this->get_artist_items( 'playlists', $post_id ); $out .= $this->get_artist_items( 'events', $post_id ); $out .= $this->get_artist_items( 'gallery', $post_id ); $out .= $this->get_artist_items( 'lyrics', $post_id ); $out .= $this->get_artist_items( 'posts', $post_id ); $out .= $this->get_artist_items( 'product', $post_id ); break; case 'cd_event_date' : $out .= date_i18n( "j F, Y", strtotime( isset( $meta['event_date'] ) ? $meta['event_date'] : '' ) ) . '<br />'; $out .= date_i18n( "H:i", strtotime( isset( $meta['event_date'] ) ? $meta['event_date'] : '' ) ); break; case 'cd_end_event_date' : $out .= date_i18n( "j F, Y", strtotime( $meta['end_event_date'] ) ) . '<br />'; $out .= date_i18n( "H:i", strtotime( $meta['end_event_date'] ) ); break; case 'cd_venue' : $out = isset( $meta['venue'] ) ? $meta['venue'] : ''; break; case 'cd_artist' : $out = $this->get_artists( $post_id ); break; case 'cd_plays' : $out = get_post_meta( $post_id, 'cd_plays', true ); $out = !is_array( $out ) ? $out : ''; break; case 'cd_likes' : $out = get_post_meta( $post_id, 'cd_likes', true ); break; case 'cd_dislikes' : $out = get_post_meta( $post_id, 'cd_dislikes', true ); break; case 'cd_downloads' : $out = get_post_meta( $post_id, 'cd_downloads', true ); break; case 'cd_views' : $out = get_post_meta( $post_id, 'cd_views', true ); break; } echo $out ? $out : '_'; } public function menu_separator( $p ) { global $menu; static $id = 0; if ( !is_int( $p ) ) { $mp = 0; foreach( $menu as $mp => $i ) { if ( $i[2] === $p ) { break; } } $p = $mp + 1; } $menuFile = 'separator-custom-' . $id++; $menu[$p] = array( '', 'read', $menuFile, '', 'wp-menu-separator cd_separator' ); ksort( $menu ); } public function get_artist_items( $cpt, $id ) { $query = new WP_Query( array( 'post_type' => $cpt, 'meta_query' => array( array( 'relation' => 'OR' ), array( 'key' => 'cd_meta', 'value' => '"' . $id . '"', 'compare' => 'LIKE' ) ), 'posts_per_page' => -1 ) ); return $query->post_count ? '[' . $query->post_count . '] ' . ucwords( $cpt ) . '<br />' : ''; wp_reset_postdata(); } public function get_artists( $id, $out = '' ) { $meta = get_post_meta( $id, 'cd_meta', true ); $meta = isset( $meta['artist'] ) ? $meta['artist'] : array(); $artists = array(); if ( $meta ) { foreach( $meta as $i ) { if ( get_the_title( $id ) !== get_the_title( $i ) ) { $artists[] = '<a href="' . get_post_permalink( $i ) . '">' . get_the_title( $i ) . '</a>'; } } $out .= implode( '<br />', $artists ); } return $out; } } new Codevz_CPT(); و اما میخوام کد رو داخل این حلقه استفاده کنم .. میدونم که برای خیلی از اساتید این یه مسئله خیلی پیش پا افتاده هست 
      لطفا بررسی کنید
      /* Artists */ if ( $cpt === 'artists' ) { if ( ! empty( $meta['fb'] ) ) { echo '<div id="fb-root"></div> <script>(function(d, s, id) { var js, fjs = d.getElementsByTagName(s)[0]; if (d.getElementById(id)) return; js = d.createElement(s); js.id = id; js.src = "//connect.facebook.net/en_US/sdk.js#xfbml=1&version=v2.5&appId=376512092550885"; fjs.parentNode.insertBefore(js, fjs); }(document, \'script\', \'facebook-jssdk\'));</script>'; echo '<div class="mbt fb-page" data-href="' . $meta['fb'] . '" data-tabs="timeline" data-width="500" data-small-header="false" data-adapt-container-width="true" data-hide-cover="false" data-show-facepile="true"></div>'; } if ( isset( $meta['social'] ) ) { echo '<div class="clr mb">'; $codevz->social( $meta['social'] ); echo '</div>'; } echo '<img class="cd_instagramimge" src="' . esc_url( get_post_meta( get_the_ID(), 'vphoto', true ) ) . '" />'; ?> <?php echo '<br>'; }  
    • توسط a.sa
      با عرض سلام و خسته نباشید 
      دنبال کدی میگردم که خرید کاربران رو بر اساس استان محل زندگیشون محدود کنه (قبلا کاربر ثبت نام کرده)
      و این محدودیت لازم نیست پیچیده بشه
      فرض کنید ما محصولی داریم که میخوایم فقط به استان تهران بفروشیم و به اون محصول ویژگی تهران رو میدیم و میخوایم اگر کاربر مثلا از اصفهان بود وقتی وارد صفحه محصول مربوطه به تهران شد، بجای بخش اضافه کردن به سبد خرید پیامی مثل: "این محصول برای استان شما محدود شده است" مواجه بشه
      کدی که من میخوام کدیه که محصولات رو به دو ویژگی تهران و سایر استان ها تقسیم میکنه یعنی یسری محصولات فقط برای تهران به فروش میرسن و یسری سایر استان ها پس کد ما کلا با دو ویژگی تهران و سایر استان ها کار داره
      پس کدی که میخوایم کدی هست که کاربران رو بر اساس ویژگی محصولات(کلا دو ویژگی تهران، سایر استان ها) و استانی که موقع ثبت نام انتخاب کرده، در خرید محصولات محدود کنه 
      اگر میتونید بنده رو راهنمایی کنید واقعا ممنون میشم 
      اگر کسی از دوستان میتونه این کار رو انجام بده هزینش رو لطفا بگه
    • توسط s.m.a1383
      سلام می خواستم ببینم به جای اینکه محصولات رو توی صفحه اول سایت بگذارم میشه دسته های محصولات رو توی صفحه اول سایت گذاشت؟
      آدرس سایت من:innolabs.ir
      در ضمن از پوسته "هستیا "استفاده میکنم افزونه یا کدی هست که بتونه به جای نمایش محصولات در صفحه اول دسته های محصولات رو نمایش بده در ضمن هر کد یا افزونه ای که گفتید طریقه انجامش رو هم بگید لطفا.
      خیلی ممنون از لطفتون
    • توسط 3pd
      با سلام خدمت دوستان
      ممنون میشم راهنمایی کنید که با چه افزونه ای این امکان وجود داره که بدون ایجاد برگه برای گالری ها ، بتونیم با استفاده از تصویر شاخص چندین گالری رو مثلا در صفحه اصلی سایت نمایش بدیم؟ افزونه ای میخوام باشه که برای گالری ها بشه دسته بندی ایجاد کرد.
      من با استفاده از افزونه ی foogallery، چند گالری ایجاد کردم و طرح شبکه بندی رو هم انجام دادم. با استفاده از ویژوال کامپوزر ردیف ایجاد کردم و از المان شبکه بندی استفاده کردم، در قسمت تنظیمات شبکه بندی نمایش گالری رو انتخاب کردم اما نمیشه انتخاب کرد که کدوم گالری! و صرفا میشه انتخاب کرد که چندتا از جدیدترین ها یا قدیمی ترین ها رو نمایش بده..