當前位置:首頁>WordPress建站>后臺定制>WordPress 限制上傳圖片的最小寬度和高度

WordPress 限制上傳圖片的最小寬度和高度

作為一個開放注冊的WordPress站點,為了保證文章的質(zhì)量,你可能需要限制其他用戶上傳圖片的最小寬度和高度。實現(xiàn)的方法也很簡單,將下面的代碼添加到當前主題的 functions.php 即可:

/**
 * WordPress 限制上傳圖片的最小寬度和高度
 * http://www.ydqwiac.cn/wordpress-minimum-require-for-image-size.html
 */
add_action( 'admin_init', 'block_authors_from_uploading_small_images' );

function block_authors_from_uploading_small_images(){
	//除管理員以外,其他用戶都限制
	if( !current_user_can( 'manage_options') )
		add_filter( 'wp_handle_upload_prefilter', 'block_small_images_upload' ); 
}

function block_small_images_upload( $file ){
	// 檢測文件的類型是否是圖片
	$mimes = array( 'image/jpeg', 'image/png', 'image/gif' );
	// 如果不是圖片,直接返回文件
	if( !in_array( $file['type'], $mimes ) )
		return $file;

	$img = getimagesize( $file['tmp_name'] );
	// 設置最小寬度和高度
	$minimum = array( 'width' => 640, 'height' => 480 );

	if ( $img[0] < $minimum['width'] )
		$file['error'] = 
			'圖片太小了,最小寬度是 ' 
			. $minimum['width'] 
			. 'px,當前上傳的圖片寬度是 ' 
			. $img[0] . 'px';

	elseif ( $img[1] < $minimum['height'] )
		$file['error'] = 
			'圖片太小了,最小高度是 ' 
			. $minimum['height'] 
			. 'px,當前上傳的圖片高度是 ' 
			. $img[1] . 'px';

	return $file;
}

該代碼會對非管理員用戶進行限制,如果上傳的圖片的最小寬度或高度達不到要求,就會限制上傳和進行提示。效果類似于下圖:

0572-wpdaxue_com

參考資料:http://wordpress.stackexchange.com/questions/28359/

聲明:本站所有文章,如無特殊說明或標注,均為本站原創(chuàng)發(fā)布。任何個人或組織,在未征得本站同意時,禁止復制、盜用、采集、發(fā)布本站內(nèi)容到任何網(wǎng)站、書籍等各類媒體平臺。如若本站內(nèi)容侵犯了原著者的合法權益,可聯(lián)系我們進行處理。

給TA打賞
共{{data.count}}人
人已打賞
歡迎關注WordPress大學公眾號 WPDAXUE
后臺定制

WordPress 關閉 XML-RPC 的 pingback 端口

2014-3-14 9:14:01

后臺定制

WordPress 自定義注冊表單插件 Register Plus Redux

2014-3-29 10:28:31

5 條回復 A文章作者 M管理員
  1. 這個很實用

  2. 很實用。有一天我自己的網(wǎng)站打開好慢,檢查后才發(fā)現(xiàn)原來有個編輯上傳了4張每張接近2M的照片在一個文章里

  3. 學習了

  4. 很實用,徹底解決了我的問題

?
個人中心
購物車
優(yōu)惠劵
今日簽到
有新私信 私信列表
搜索

惠安县| 奈曼旗| 宜阳县| 安达市| 江达县| 综艺| 彰武县| 仙居县| 安阳县| 炎陵县| 库车县| 梧州市| 剑河县| 宜君县| 玉门市| 广平县| 石门县| 青川县| 雷州市| 郁南县| 新兴县| 凌源市| 沙田区| 台南市| 玛曲县| 榕江县| 苏州市| 额尔古纳市| 肃宁县| 若羌县| 惠水县| 嘉定区| 英超| 平塘县| 辽源市| 图木舒克市| 中卫市| 揭东县| 泰宁县| 巴楚县| 定远县|