انجمن


فانکشن برای قرار دادن تصویرهای آپلود شده  (۵ نوشته)

  • vafa

    آفلاین
    عضو
    تعداد نوشته‌ها: ۱۲۳
    تشکر شده: ۳۴ بار
    # نوشته شده: ۱۳ سال پیش
    ۵ اردیبهشت ۱۳۸۸ - ۱۳:۴۱

    سلام دوستان
    این Funcetion رو دارم:

    function catch_that_image() {
      global $post, $posts;
      $first_img = '';
      ob_start();
      ob_end_clean();
      $output = preg_match_all('/<img.+src=[\'"]([^\'"]+)[\'"].*>/i', $post->post_content, $matches);
      $first_img = $matches [1] [0];
    
      if(empty($first_img)){ //Defines a default image
        $first_img = "/images/default.jpg";
      }
      return $first_img;
    }

    حالا می خوام براش مشخص کنم که سایز small یا medium رو پیدا کن برام.
    چطور این کارو انجام بدم
    کاری که خودم کردم این بود که:
    در قسمت ادمین همین عملکرد وجود داره که وقتی به آرشیو تصاویر آپلود شده میریم، لیست سایز های مختلف رو بهمون میده.(با توجه به اینکه این سایز ها با مقادیری که در قسمت تنظیمات آپلود تصاویر داده ایم؛ متفاوته)
    در include فایل media.php این تابع رو پیدا کردم ولی بلد نیستم در قالبم از طریق funection یا .. استفاده کنم.

    function image_size_input_fields($post, $checked='') {
    
    		// get a list of the actual pixel dimensions of each possible intermediate version of this image
    		$size_names = array('thumbnail' => __('Thumbnail'), 'medium' => __('Medium'), 'large' => __('Large'), 'full' => __('Full size'));
    
    		foreach ( $size_names as $size => $name) {
    			$downsize = image_downsize($post->ID, $size);
    
    			// is this size selectable?
    			$enabled = ( $downsize[3] || 'full' == $size );
    			$css_id = "image-size-{$size}-{$post->ID}";
    			// if this size is the default but that's not available, don't select it
    			if ( $checked && !$enabled )
    				$checked = '';
    			// if $checked was not specified, default to the first available size that's bigger than a thumbnail
    			if ( !$checked && $enabled && 'thumbnail' != $size )
    				$checked = $size;
    
    			$html = "<div class='image-size-item'><input type='radio' ".( $enabled ? '' : "disabled='disabled'")."name='attachments[$post->ID][image-size]' id='{$css_id}' value='{$size}'".( $checked == $size ? " checked='checked'" : '') ." />";
    
    			$html .= "<label for='{$css_id}'>" . __($name). "</label>";
    			// only show the dimensions if that choice is available
    			if ( $enabled )
    				$html .= " <label for='{$css_id}' class='help'>" . sprintf( __("(%d&nbsp;&times;&nbsp;%d)"), $downsize[1], $downsize[2] ). "</label>";
    
    			$html .= '</div>';
    
    			$out[] = $html;
    		}
    
    		return array(
    			'label' => __('Size'),
    			'input' => 'html',
    			'html'  => join("\n", $out),
    		);
    }

    به ویرایش و حذف نیاز داره.
    متاسفانه php بلد نیستم و لنگ کمک شمام.

  • vafa

    آفلاین
    عضو
    تعداد نوشته‌ها: ۱۲۳
    تشکر شده: ۳۴ بار
    # نوشته شده: ۱۳ سال پیش
    ۶ اردیبهشت ۱۳۸۸ - ۱۴:۴۴

    خب اینا رو فراموش کنید.
    امکان این هست که اسم گذاری تصاویری که موقع آپلود درست میشن رو از حالت imagenam-333x342.jpg به imagename-medium.jpg در بیاریم که بعدا استفاده ازشون در تم ممکن بشه؟

  • گناهکار

    آفلاین
    کلیددار
    تعداد نوشته‌ها: ۳۵۳۵
    تشکر شده: ۲۵۴۴ بار
    # نوشته شده: ۱۳ سال پیش
    ۶ اردیبهشت ۱۳۸۸ - ۱۵:۵۶

    از این افزونه استفاده کنین: http://wordpress.org/extend/plugins/get-image/

  • vafa

    آفلاین
    عضو
    تعداد نوشته‌ها: ۱۲۳
    تشکر شده: ۳۴ بار
    # نوشته شده: ۱۳ سال پیش
    ۶ اردیبهشت ۱۳۸۸ - ۲۱:۳۱

    افزونه؟ :|
    این افزونه یک ایراد داره. اینکه اگه سه تا تصویر رو آپلود کرده باشی، سه تاشو با هم میاره.
    من یه کد دیگه هم داره و به من اجازه میده که دوتا از تصاویر resize شده ام رو crop کنم.
    و از اون استفاده میکنم
    حالا من یه thumbnail دارم و یه تصویر دیگه که اونم همیشه اندازه اش مشخصه و میتونم با استفاده از یک custom filed، دوتا تصویر متفاوت رو قرار بدم:

    if(!get_option("large_crop"))
        add_option("large_crop", "1");
    else
        update_option("large_crop", "1");
  • سزار

    آفلاین
    عضو
    تعداد نوشته‌ها: ۶۷۸
    تشکر شده: ۱۱۸ بار
    # نوشته شده: ۱۳ سال پیش
    ۸ اردیبهشت ۱۳۸۸ - ۱۸:۱۶

    :? از اساتید نمیتونه کسی به ما کمک کنه ؟ ;-]

    خوش باشین @},- ~O)

درباره‌ی این موضوع