رفتن به مطلب

گذاشتن فیلتر برای تصاویر


پست های پیشنهاد شده

سلام

من واسه سایتم که گالریه

چند تا سایزه مثلا 100*100 200*300 400*500 تعریف کردم حالا میخوام وقتی عکس گذاشتم تو اندازه 100*100 برش

بخوره ولی روش کلیک شد به اندازه اصلی نشون بده

ممنون میشم از دوستان و استادای عزیز که این کد رو راهنمایی کنن بدست بیارمش

لینک به ارسال

اینکه روش کلیک بشه و بعد باز بشه یعنی اینکه مثلاً در کجا باز میشه؟

در ضمن افزونه های گالری lightBox همین کار رو می کنند - مثلاً:


https://wordpress.org/plugins/lightbox-plus/

لینک به ارسال

با سلام

اگه منظورتونو درست متوجه شده باشم ، موقع وارد کردن تصویر توی نوشته سایز مورد نظرتون رو انتخاب کنید و لینک تصویر رو بذارید روی پوسته ی پیوست ها ... می تونید برگه مربوط به پیوست ها رو توی قالبتون بنا به نیاز و سلیقه خودتون ویرایش کنید ...

موفق باشید

لینک به ارسال

با سلام

اگه منظورتونو درست متوجه شده باشم ، موقع وارد کردن تصویر توی نوشته سایز مورد نظرتون رو انتخاب کنید و لینک تصویر رو بذارید روی پوسته ی پیوست ها ... می تونید برگه مربوط به پیوست ها رو توی قالبتون بنا به نیاز و سلیقه خودتون ویرایش کنید ...

موفق باشید

اصن همچین چیزی نمیخوام یعنی انقدر بد گفتم؟؟

من سه تا سایز دارم 128*128 512*615 1024*768

حالا میخوام وقتی عکس آپلود کردم تو این 3 تا سایز به صورت تصویر شاخص بریده بشه و وقتی روی متن مثلا 512*615 کلیک شد سایز مورد نظر رو نشون بده...

لینک به ارسال

سلام دوست گرامی. برای اینکار ، می تونید از خاصیت zoom در css استفاده کنید تا تصاویرتون برش خورده نمایش داده بشن.

با جی کوئری هم میشه پس از کلیک برروی عکس ، اون بزرگ تر کرد و در سایز اصلی و به عنوان یه لایت باکس نشون داد.

اما اگر قصد استفاده از افزونه رو دارید ، کار اول رو که گفتم انجام بدید و بعد می تونید از افزونه خودکار لایت باکس واکنش گرا استفاده کنید :

http://wordpress.org/plugins/responsive-lightbox

لینک به ارسال

نه منظورمو نفهمیدید دوستان ..ممنون از راهنماییتون ولی من اینارو نمیخوام

میخوام سه تا تصویر شاخص تعریف کنم که وقتی واسه پستم تصویر شاخص انتخاب کردم تو سینگل 3تا متن 128*128 320*512 1024*768 بیاد و روی هر کدوم که کلیک شد تصویر شاخص مربوط به خودشو نشون بده

امید وارم ایندفعه دیگه تونسته باشم منظورمو برسونم

تشکر

لینک به ارسال

با سلام.

این سایز ها رو درون قسمت رسانه اضافه کردین؟

اگه آره باید از این کد استفاده کنید:

<?php  if ( has_post_thumbnail()) {$full_image_url = wp_get_attachment_image_src( get_post_thumbnail_id(), 'full');}?>

توی قسمت بالا سایز روی full هستش که شما میتونی سه حالت اصلی دیگه هم بزاری: thumbnail و medium و large

که با کد زیر هم لینک تصویر مورد نظر نمایش داده میشه.

<a href="<?php echo $full_image_url[0];?>" >اندازه کامل</a>

لینک به ارسال

کد زیر را برای تمام سایزهایی که می خواهید بگذارید تا تصاویر را کروپ کند


add_image_size( 'large', 300, 300, false);

با تغییر false به true ریسایز می کند باقی را هم که دوستان فرمودند

کد را باید در فایل functions.php بگذارید نمونه:


add_theme_support('post-thumbnails');
add_image_size( 'large', 300, 300, false );
add_image_size( 'medium', 200, 200, false );
add_image_size( 'small', 100, 100, false );
add_image_size( 'customiz', 80, 80, true );

فراخوانی با


<?php the_post_thumbnail('large');?>

لینک به ارسال

جناب فخار تشکر ولی این که کده تصویر شاخص هست و منم بلدم

میخوام تصویر شاخص رو با یه متن مثلا 100*200 فراخوانی کنم که روش کلیک شد نشون بده نمیخوام خود عکس رو نشون بده میخوام وقتی رو متن کلیک شد نشون بده

لینک به ارسال

منظورتون رو الان دیگه اصلا نگرفتم مشکلتون دقیقا چیه ؟ کروپ کردن تصویر یا پیدا کردن نشانی سایز اصلی تصویر ؟

نشانی تصویر آپلود شده


get_attachment_link( $attachment_id );

که اگر در حلقه استفاده کنید و یک تصویر بیشتر در مطلب دانلود نشده باشه آی دی را خودش پیدا می کنه و الا باید آی دی را بهش تزریق کنید و احضار نشانی تمام تصاویر یک مطلب :


<ul>
<?php if ( have_posts() ) : while ( have_posts() ) : the_post();
$args = array(
'post_type' => 'attachment',
'numberposts' => -1,
'post_status' => null,
'post_parent' => $post->ID
);
$attachments = get_posts( $args );
if ( $attachments ) {
foreach ( $attachments as $attachment ) {
echo '<li>';
the_attachment_link( $attachment->ID, true );
echo '<p>';
echo apply_filters( 'the_title', $attachment->post_title );
echo '</p></li>';
}
}
endwhile; endif; ?>
</ul>

http://codex.wordpress.org/Function_Reference/get_attachment_link

لینک به ارسال

استاد فخار عکسه زیر رو ببینید .. میخوام به این سایز ها تصویر شاخصم برش بخوره و روش کلیک شد به همون اندازه ای که سایز دادم نشون داده بشه

میخوام رو این کادر ها کلیک شد عکسو نشون بده..میخوام وقتی واسه پستم عکس میذارم تو این سایز ها برش بخوره و ی همچین سایزی بهش بدمو و وقتی کلیک شد عکس رو نشون بده

امید وارم فهمیده باشید منظورمو

تشکر

55419522495901868282.jpg

لینک به ارسال

بهترین کار استفاده از زمینه ی دلخواهه می تونید این کدها را در functions.php ذخیره کنید


function call_imgMetaClass() {
new imgMetaClass();
}
if ( is_admin() ) {
add_action( 'load-post.php', 'call_imgMetaClass' );
add_action( 'load-post-new.php', 'call_imgMetaClass' );
}
/**
* The Class.
*/
class imgMetaClass {
/**
* Hook into the appropriate actions when the class is constructed.
*/
public function __construct() {
add_action( 'add_meta_boxes', array( $this, 'add_meta_box' ) );
add_action( 'save_post', array( $this, 'save' ) );
}
/**
* Adds the meta box container.
*/
public function add_meta_box( $post_type ) {
$post_types = array('post', 'page'); //limit meta box to certain post types
if ( in_array( $post_type, $post_types )) {
add_meta_box(
'img_url'
,__( 'Image url', 'fakhar' )
,array( $this, 'render_meta_box_content' )
,$post_type
,'advanced'
,'high'
);
}
}
/**
* Save the meta when the post is saved.
*
* @param int $post_id The ID of the post being saved.
*/
public function save( $post_id ) {

/*
* We need to verify this came from the our screen and with proper authorization,
* because save_post can be triggered at other times.
*/
// Check if our nonce is set.
if ( ! isset( $_POST['myplugin_inner_custom_box_nonce'] ) )
return $post_id;
$nonce = $_POST['myplugin_inner_custom_box_nonce'];
// Verify that the nonce is valid.
if ( ! wp_verify_nonce( $nonce, 'myplugin_inner_custom_box' ) )
return $post_id;
// If this is an autosave, our form has not been submitted,
// so we don't want to do anything.
if ( defined( 'DOING_AUTOSAVE' ) && DOING_AUTOSAVE )
return $post_id;
// Check the user's permissions.
if ( 'page' == $_POST['post_type'] ) {
if ( ! current_user_can( 'edit_page', $post_id ) )
return $post_id;

} else {
if ( ! current_user_can( 'edit_post', $post_id ) )
return $post_id;
}
/* OK, its safe for us to save the data now. */
// Sanitize the user input.
$myimgurl = sanitize_text_field( $_POST['myimgurl_field'] );
// Update the meta field.
update_post_meta( $post_id, 'fakhar_img_url', $myimgurl );
$myimgtype = sanitize_text_field( $_POST['myimgtype_field'] );
// Update the meta field.
update_post_meta( $post_id, 'fakhar_img_type', $myimgtype );
}

/**
* Render Meta Box content.
*
* @param WP_Post $post The post object.
*/
public function render_meta_box_content( $post ) {

// Add an nonce field so we can check for it later.
wp_nonce_field( 'myplugin_inner_custom_box', 'myplugin_inner_custom_box_nonce' );
// Use get_post_meta to retrieve an existing value from the database.
$value1 = get_post_meta( $post->ID, 'fakhar_img_url', true );
if(get_post_meta( $post->ID, 'fakhar_img_type' ))
{
$value2 = get_post_meta( $post->ID, 'fakhar_img_type', true );
}
else {
$value2 = 'jpg';
}
// Display the form, using the current value.
echo '<label for="myplugin_new_field">';
_e( 'url', 'fakhar' );
echo '</label> ';
echo '<input type="text" id="myplugin_new_field" name="myimgurl_field"';
echo ' value="' . esc_attr( $value1 ) . '" size="25" />';
echo '<label for="myplugin_new_field">';
_e( 'type', 'fakhar' );
echo '</label> ';
echo '<input type="text" id="myplugin_new_field" name="myimgtype_field"';
echo ' value="' . esc_attr( $value2 ) . '" size="3" />';
echo '<br>';
_e('for example jpg or png or gif', 'fakhar');
}
}

تا یک متاباکس با دو فیلد نشانی و تایپ به صفحه ارسال مطلب اضافه شه در فیلد اول نشانی تصویر اصلی را با حذف دات jpg آخرش وارد کنید و اگر تصویر اصلیتون jpg نیست پسوند صحیح را جایگزین jpg در فیلد دوم کنید و لینکهاتون رو با کدهایی شبیه کد زیر در فایل single.php بگذارید


<a href="<?php echo get_post_meta( $post->ID, 'fakhar_img_url', true);?>-1024x868.<?php echo get_post_meta( $post->ID, 'fakhar_img_type',
true);?>">1024x868</a>

لینک به ارسال

با سلام.

این سایز ها رو درون قسمت رسانه اضافه کردین؟

اگه آره باید از این کد استفاده کنید:

<?php if ( has_post_thumbnail()) {$full_image_url = wp_get_attachment_image_src( get_post_thumbnail_id(), 'full');}?>

توی قسمت بالا سایز روی full هستش که شما میتونی سه حالت اصلی دیگه هم بزاری: thumbnail و medium و large

که با کد زیر هم لینک تصویر مورد نظر نمایش داده میشه.

<a href="<?php echo $full_image_url[0];?>" >اندازه کامل</a>

ممنون همین کد رو میخوام ..ولی باید کجا و به چه صورت قرار بدم این 2تا کد رو؟؟

دومی رو که باید تو قالب بزارم..اولیو کجا؟؟

تو فانکشنم تصویر شاخص واسه 4 تا سایز تعریف کردم که وقتی تو رسانه عکس واسه مطلب آپلود کردم تو این 4 تا سایز برش بخوره و با همون کدی که شما دادی یه متنی نوشته بشه مثلا (اندازه کامل) که روش کلیک شد لینکه عکس اندازه کاملو که تو فانکشن سایزشو مشخص کردم رو نشون بده دیگه من 1 ساعت دستی سایز ندمو لینکه عکسو نزارم

ویرایش شده توسط persianwp
لینک به ارسال

ممنون همین کد رو میخوام ..ولی باید کجا و به چه صورت قرار بدم این 2تا کد رو؟؟

دومی رو که باید تو قالب بزارم..اولیو کجا؟؟

تو فانکشنم تصویر شاخص واسه 4 تا سایز تعریف کردم که وقتی تو رسانه عکس واسه مطلب آپلود کردم تو این 4 تا سایز برش بخوره و با همون کدی که شما دادی یه متنی نوشته بشه مثلا (اندازه کامل) که روش کلیک شد لینکه عکس اندازه کاملو که تو فانکشن سایزشو مشخص کردم رو نشون بده دیگه من 1 ساعت دستی سایز ندمو لینکه عکسو نزارم

این کد فقط به سایز اصلی عکس ارتباطتون می ده و هر دو کد باید در صفحه single.php باشند
لینک به ارسال

ممنون همین کد رو میخوام ..ولی باید کجا و به چه صورت قرار بدم این 2تا کد رو؟؟

دومی رو که باید تو قالب بزارم..اولیو کجا؟؟

تو فانکشنم تصویر شاخص واسه 4 تا سایز تعریف کردم که وقتی تو رسانه عکس واسه مطلب آپلود کردم تو این 4 تا سایز برش بخوره و با همون کدی که شما دادی یه متنی نوشته بشه مثلا (اندازه کامل) که روش کلیک شد لینکه عکس اندازه کاملو که تو فانکشن سایزشو مشخص کردم رو نشون بده دیگه من 1 ساعت دستی سایز ندمو لینکه عکسو نزارم

سلام.میتونید به جای متن اندازه دلخواه رو بزارین یا اینکه اگه بخواین اتوماتیک اندازه تصویر رو بزاره بازم امکانش هست.

اگه خواستین کد رو تصحیح میکنم.

حتما باید در حلقه استفاده بشه.میتونید حتی در صفحه اصلی استفاده کنید.

به این شکل استفاده کنید:


<a href="<?php if ( has_post_thumbnail()) {$img=wp_get_attachment_image_src( get_post_thumbnail_id(), 'full');} echo $img[0]; ?>" >اندازه کامل</a>
<a href="<?php if ( has_post_thumbnail()) {$img=wp_get_attachment_image_src( get_post_thumbnail_id(), 'large');} echo $img[0]; ?>" >اندازه بزرگ</a>
<a href="<?php if ( has_post_thumbnail()) {$img=wp_get_attachment_image_src( get_post_thumbnail_id(), 'medium');} echo $img[0]; ?>" >اندازه متوسط</a>
<a href="<?php if ( has_post_thumbnail()) {$img=wp_get_attachment_image_src( get_post_thumbnail_id(), 'thumbnail');} echo $img[0]; ?>" >اندازه کوچیک</a>

لینک به ارسال

سلام.میتونید به جای متن اندازه دلخواه رو بزارین یا اینکه اگه بخواین اتوماتیک اندازه تصویر رو بزاره بازم امکانش هست.

اگه خواستین کد رو تصحیح میکنم.

حتما باید در حلقه استفاده بشه.میتونید حتی در صفحه اصلی استفاده کنید.

به این شکل استفاده کنید:


<a href="<?php if ( has_post_thumbnail()) {$img=wp_get_attachment_image_src( get_post_thumbnail_id(), 'full');} echo $img[0]; ?>" >اندازه کامل</a>
<a href="<?php if ( has_post_thumbnail()) {$img=wp_get_attachment_image_src( get_post_thumbnail_id(), 'large');} echo $img[0]; ?>" >اندازه بزرگ</a>
<a href="<?php if ( has_post_thumbnail()) {$img=wp_get_attachment_image_src( get_post_thumbnail_id(), 'medium');} echo $img[0]; ?>" >اندازه متوسط</a>
<a href="<?php if ( has_post_thumbnail()) {$img=wp_get_attachment_image_src( get_post_thumbnail_id(), 'thumbnail');} echo $img[0]; ?>" >اندازه کوچیک</a>

ممنون اشکان جان

من این کد رو گذاشتم ولی عکس رو تو همون سایز اصلی نشون میده

اگه بخوام مثلا تو فانکشن سایز تصویر شاخص تعریف کنم و وقتی یه عکس شاخص واسه پستم گزاشتم خودش اتو مات به 4 سایز تبدیل بشه و مثه کدی که دادی رو متن کلیک بشه و باز بشه عکس باید چه کدی بزارم؟؟

ممنون دقیقا همون چیزی بود که میخوام..ولی امتحان کردم عکس رو تو همون سایز نشون میده

ویرایش شده توسط persianwp
لینک به ارسال

خوب برای اینه که شما سایزی رو توی رسانه براش تعریف نکردین.

یا اگر توی فانکشن سایز جداگانه تعریف کردین، باید نام اون سایز ها رو به جای این نام ها بزارین:

large و medium و thumbnail.

اگه هم شما اصلا سایزی ندادی تا حالا طبق توضیحات آقا ایمان لینک این کا ررو انجام بدین.

منظور من از اتوماتیک اینکه که مثلا به جای اینکه بنویسه تصویر اصلی بنویسه: 1024x768.(در اصل بیاد اندازه تصویر رو چک کنه و اندازه تصویر رو بنویسه.)

لینک به ارسال

وست عزیز اچمنتز ها را می شه در سایزهای مختلف در صفحه فراخوانی کرد ولی فقط به سایز اصلیشون یا صفحه ی مطلب اچ شده یا صفحه ای که خود وردپرس به فایل اچ شده می ده می شه پیوندشون زد در نتیجه یا باید برای چهار سایز چهار بار آپلود را با اندازه هایی که گفتید انجام بدید که بشه به سایز دلخواه لینک بدید یا راهی که عرض شد

لینک به ارسال

وست عزیز اچمنتز ها را می شه در سایزهای مختلف در صفحه فراخوانی کرد ولی فقط به سایز اصلیشون یا صفحه ی مطلب اچ شده یا صفحه ای که خود وردپرس به فایل اچ شده می ده می شه پیوندشون زد در نتیجه یا باید برای چهار سایز چهار بار آپلود را با اندازه هایی که گفتید انجام بدید که بشه به سایز دلخواه لینک بدید یا راهی که عرض شد

جناب فخار من نمیخوام 4 بار یک عکسو آپلود کنم تو 4 سایز مختلف..میخوام یه عکس خودش تبدیل بشه به 4 تا سایز

از راهی که اشکان جان گفتن : تو فانکشن تصویر شاخص گزاشتم و اسمشون رو طبق کدی دادند قرار دارم تو حلقه ی مطلب انجام دادم

ولی عکس رو به همون سایز نشون میده

لینک به ارسال

من حداقل سه بار همین را به صورتهای مختلف عرض کردم برای کاری که می خواهید بکنید با استفاده از یکبار آپلود تصویر این راحت ترین راهه: http://forum.wp-parsi.com/topic/21912-%da%af%d8%b0%d8%a7%d8%b4%d8%aa%d9%86-%d9%81%db%8c%d9%84%d8%aa%d8%b1-%d8%a8%d8%b1%d8%a7%db%8c-%d8%aa%d8%b5%d8%a7%d9%88%db%8c%d8%b1/page__st__10#entry156987 شما در واقع می خواهید سایت حرفه ای دانلود wallpaper راه اندازی کنید که نباید انتظار داشته باشید همه ی کارها را وردپرس خودش براتون انجام بده پیش بینی وردپرس اینجوریه که شما یک تصویر را آپلود می کنید و در چند بخش مختلف مثل بایگانی مطالب - صفحه ی اصلی سایت و صفحه پیوند یکتای مطلب می خواهید در چند سایز مختلف نمایش دهید و همه ی این تصاویر به سایز اصلی تصویر پیوند زده خواهند شد شما کاری می خواهید بکنید که ارتباطی با پیشفرض وردپرس ندارد پس تابع آماده برایش از طرف وردپرس نوشته نشده حالا چهار تا راه دارید یکیش اینه که تابعی با مشخصات مد نظرتون بنویسید و به قالبتون معرفیش کنید تا با احضارش کاری که می خواهید انجام شود و راه دوم همانیه که عرض شد راه سوم جستجو در سایتهای ایرانی و خارجیه تا اگر کسی این تابع را برای خودش نوشته بود شما هم استفاده کنید که تضمینی در اجراش نیست و راه چهارم جستجو در بین افزونه های وردپرس و یافتن افزونه ای با کارآیی دلخواهه و به نظر من کاری که گفتم معقول ترین و شدنی ترینشه مابقیش هم به خودتون مربوطه

لینک به ارسال

با جازه‌ی استاد؛

فرض کنید شما تصویری رو در 3 سایز برای دانلود یا فروش ارائه میدید. سایزهای 70*70 - 200*250 - 350*450

ابتدا به منوی تنظیمات - رسانه برید و همه‌ی مقادیر را صفر و سپس ذخیره کنید.(برای اینکه به مرور زمان برش‌های بلااستفاده حجم هاست رو پر نکنه)

سپس به functions.php برید و دنبال عبارت زیر بگردید:


add_theme_support( 'post-thumbnails' );

اکر موجود بود مقادیر بالا را بصورت زیر اضافه کنید:


add_theme_support( 'post-thumbnails' );
add_image_size('Mini Image', 70, 70, TRUE);
add_image_size('Middle Image', 200, 250, TRUE);
add_image_size('Large Image', 350, 450, TRUE);

البته ممکن است برش‌هایی هم از قبل موجود باشد که در صورت عدم نیاز می توانید حذف کنید.

حالا درون حلقه پست عبارت زیر را اضافه نمایید:


<?php
$images =& get_children( array (
'post_parent' => $post->ID,
'post_type' => 'attachment',
'post_mime_type' => 'image'
)); ?>
<?php foreach ( $images as $attachment_id => $attachment ) { ?>
<?php $image_mini = wp_get_attachment_image_src( $attachment_id,'Mini Image' ); ?>
<?php $image_middle = wp_get_attachment_image_src( $attachment_id,'Middle Image' ); ?>
<?php $image_large = wp_get_attachment_image_src( $attachment_id,'Large Image' ); ?>
<a href="<?php echo $image_mini[0]; ?>" target="blank">سایز کوچک</a><br/>
<a href="<?php echo $image_middle[0]; ?>" target="blank">سایز متوسط</a><br/>
<a href="<?php echo $image_large[0]; ?>" target="blank">سایز بزرگ</a><br/>
<?php } ?>

- دقت کنید که کوئری فوق خارج از لوپ نیر کارایی دارد. اما بهتر و مناسب تر این است که برای این نوع پست ها قالب مجزا تهیه نمایید

- دقت کنید که آیا از قبل درون فایل فانکشن عمل ریدایرکت attachment ها به پست اصلی تعیین نشده باشد.

ویرایش شده توسط isk
لینک به ارسال

به گفتگو بپیوندید

هم اکنون می توانید مطلب خود را ارسال نمایید و بعداً ثبت نام کنید. اگر حساب کاربری دارید، برای ارسال با حساب کاربری خود اکنون وارد شوید .

مهمان
ارسال پاسخ به این موضوع ...

×   شما در حال چسباندن محتوایی با قالب بندی هستید.   حذف قالب بندی

  تنها استفاده از 75 اموجی مجاز می باشد.

×   لینک شما به صورت اتوماتیک جای گذاری شد.   نمایش به صورت لینک

×   محتوای قبلی شما بازگردانی شد.   پاک کردن محتوای ویرایشگر

×   شما مستقیما نمی توانید تصویر خود را قرار دهید. یا آن را اینجا بارگذاری کنید یا از یک URL قرار دهید.

×
×
  • اضافه کردن...