رفتن به مطلب

نمایش آیکون به عنوان تصویر شاخص


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

سلام

چه طور می تونم آیکون برنامه ها رو رویه مطلب قرار بدم ؟

مثل این سایت

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

ولی من می خوام که فقط تصویر اولی مطلب رو تویه اسلاید بار بالای سایت نمایش بده و آیکون ها رو هم روی معرفی مطلب

ممنون

لینک به ارسال

درود.شما یه کاری می تونید بکنید.اول از همه شما کد زیر رو در فایل functions.php کپی کنید.با این کار اولین عکس مطلب شما به عنوان تصویر شاخص در نظر گرفته می شه.


///***** get the first image attached to the current post *****///
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;
}

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


<img src="<?php echo catch_that_image() ?>" title="<?php the_title(); ?>" alt="<?php the_title(); ?>" />

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

ویرایش شده توسط افشیــــــن
لینک به ارسال
  • 3 هفته بعد...

درود.شما یه کاری می تونید بکنید.اول از همه شما کد زیر رو در فایل functions.php کپی کنید.با این کار اولین عکس مطلب شما به عنوان تصویر شاخص در نظر گرفته می شه.


///***** get the first image attached to the current post *****///
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;
}

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


<img src="<?php echo catch_that_image() ?>" title="<?php the_title(); ?>" alt="<?php the_title(); ?>" />

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

تشکر دوست عزیز درست کار کرد

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

نمی دونم کد نمایش رو چی بنویسم !

لینک به ارسال

سلام

از متاباکس یا زمینه دلخواه می‌تونید استفاده کنید

به این شکل مثلا در زمینه دلخواه یک تصویر وارد می‌کنید

بعد اون رو کنار عنوان مطالب‌تون فراخوانی کنید

(البته دقیقا متوجه نشدم می‌خواهد آیکون رو کنار دسته نشون بدید مثل اون سایت و یا کنار مطالب‌تون)

اگر نیازی هست بفرمایید بیشتر توضیح بدم

لینک به ارسال

سلام

از متاباکس یا زمینه دلخواه می‌تونید استفاده کنید

به این شکل مثلا در زمینه دلخواه یک تصویر وارد می‌کنید

بعد اون رو کنار عنوان مطالب‌تون فراخوانی کنید

(البته دقیقا متوجه نشدم می‌خواهد آیکون رو کنار دسته نشون بدید مثل اون سایت و یا کنار مطالب‌تون)

اگر نیازی هست بفرمایید بیشتر توضیح بدم

درود دوست عزیز

هنگام آپلود عکس دو تا عکس یکی با سایز اصلی و دیگری با سایز کوچک تر تویه هاست آپلود میشه

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

من می خوام برای نمایش از عکس کوچکی که توسط وردپرس درست دشه است نمایش بدم که سازش مثلا 200*280 هستش

لینک به ارسال

در مورد جواب آقای افشین لازم خودشون توضیح بدن چون من نمی‌تونم در همون راستا کمک‌تون کنم

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

ولی چون پ.خ داید من راهی رو که می‌دونستم خدمت‌تون گفتم

در هر صورت چرا راه‌حل پیشنهادی من رو انجام نمی‌دید؟

شاید این روش در ادامه راه‌حل آقای افشین جواب‌گو باشه

اگر از اندازه دلخواه استفاده می‌کنید

لازم بدونید تمام تصاویر کوچک‌شده (طبق اندازه‌ای که وارد کردید) اندازه‌شان در آدرس تصویر می‌‌آید

یعنی اسم تصویر شما مثلا image.jpg هست و اندازه دلخوا‌هتان

200*280 حال آدرس تصویر به این صورت هست

image-280x200.jpg

پس کد رو به این صورت امتحان کنید


///***** get the first image attached to the current post *****///
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/image-280x200.jpg";
}
return $first_img;
}

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

در مورد جواب آقای افشین لازم خودشون توضیح بدن چون من نمی‌تونم در همون راستا کمک‌تون کنم

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

ولی چون پ.خ داید من راهی رو که می‌دونستم خدمت‌تون گفتم

در هر صورت چرا راه‌حل پیشنهادی من رو انجام نمی‌دید؟

شاید این روش در ادامه راه‌حل آقای افشین جواب‌گو باشه

اگر از اندازه دلخواه استفاده می‌کنید

لازم بدونید تمام تصاویر کوچک‌شده (طبق اندازه‌ای که وارد کردید) اندازه‌شان در آدرس تصویر می‌‌آید

یعنی اسم تصویر شما مثلا image.jpg هست و اندازه دلخوا‌هتان

200*280 حال آدرس تصویر به این صورت هست

image-280x200.jpg

پس کد رو به این صورت امتحان کنید


///***** get the first image attached to the current post *****///
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/image-280x200.jpg";
}
return $first_img;
}

تشکر

کد کار نکرد

لینک به ارسال

دقیقا یعنی چه کار نکرد

وقتی کد زیر رو وارد کردید کار نکرد


$first_img = "/images/image-280x200.jpg";

اصل کد رو گفتید که کار می‌کنه

یا این‌که تصویری رو نشون نمیده؟

لینک به ارسال

دقیقا یعنی چه کار نکرد

وقتی کد زیر رو وارد کردید کار نکرد


$first_img = "/images/image-280x200.jpg";

اصل کد رو گفتید که کار می‌کنه

یا این‌که تصویری رو نشون نمیده؟

اصل کد کار می کنه

ولی باز هم عکس با سایز اصلی رو نمایش میده که می خوام عکس کوچک شده ی اون رو که که در اصل به دلیل crop شدن حجمشم کم شده هستش رو نمایش بده

اندارش عکس کوچک 280*200 هستش

کدی که شکا گفتین کار نکرد

لینک به ارسال

تشکر دوست عزیز

تا یکمی پیش رفتم و می خوام این کار رو انجام بدم

یا این کد عکسی که آپلود میشه رو ازش چند تا سایز بسازم

if ( function_exists( 'add_image_size' ) && !get_option( 'timthumb' ) ){
add_image_size( 'tie-small', 55, 55, true );
add_image_size( 'tie-medium', 272, 125, true );
add_image_size( 'tie-large', 290, 195, true );
add_image_size( 'slider', 660, 330, true );
add_image_size( 'big-slider', 995, 498, true );
}

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

کد زیر رو چه طور ویرایشش کنم تا یکی از اون سایز هایی که می خوام نمایش داده بشه

<img src="<?php echo catch_that_image() ?>" title="<?php the_title(); ?>" alt="<?php the_title(); ?>" />

تشکر

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

ببینید کدی رو که آقای افشین گذاشتن کارش این‌که اولین تصویر رو به یک کد به نام


catch_that_image()

متصل می‌کنه

بعد هم اون رو با کد زیر فراخوانی می‌کنه


<?php echo catch_that_image() ?>

توی این کد جایی برای انتخاب اندازه وجود نداره

ولی شما می‌تونید وقتی تصویر رو وارد کردید در اندازه دلخواه وارد کنید لینک

ولی بازهم بهتون میگم راه راحتر استفاده از زمینه دلخواه است ...

لینک به ارسال

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

بعد هر جایی که خواستید مثلا کنار عنوان مطلب‌تون اون تصویر رو فراخوانی می‌کنید با اندازه دلخواه

این جمله کارتون رو حل نکرد؟

ولی شما می‌تونید وقتی تصویر رو وارد کردید در اندازه دلخواه وارد کنید

لینک

لینک به ارسال

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

بعد هر جایی که خواستید مثلا کنار عنوان مطلب‌تون اون تصویر رو فراخوانی می‌کنید با اندازه دلخواه

این جمله کارتون رو حل نکرد؟

تشکر دوست عزیز

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

ممنون میشم

لینک به ارسال

این فایل رو دانلود کنید

فایل پیوست رو هم دانلود کنید

در پوشه قالب سایت‌تون پوشه‌ای با نام metabox درست کنید و محتویات این دو فایل دانلودی رو در اونجا بریزید

این کد رو در آخر فایل فانکشن قالبتون قبل از ?> اضافه کنید


// Add Meta Box
include (TEMPLATEPATH . '/metabox/meta-functions.php');

خوب در قسمت ارسال مطالب قسمتی با عنوان «تنظیمات آیکون» اضافه شده حالا آدرس تصویری رو که می‌خواهید کنار عنوان هر مطلب نمایش بدید رو در اونجا وارد کنید

حالا فقط مونده این تصویر رو فراخوانی کنید

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


<img src="<?php echo $iconurl ?>" alt="<?php echo $icontitle ?>" />

meta-functions.php

لینک به ارسال
این فایل رو دانلود کنید فایل پیوست رو هم دانلود کنید در پوشه قالب سایت‌تون پوشه‌ای با نام metabox درست کنید و محتویات این دو فایل دانلودی رو در اونجا بریزید این کد رو در آخر فایل فانکشن قالبتون قبل از ?> اضافه کنید
 // Add Meta Box include (TEMPLATEPATH . '/metabox/meta-functions.php'); 

خوب در قسمت ارسال مطالب قسمتی با عنوان «تنظیمات آیکون» اضافه شده حالا آدرس تصویری رو که می‌خواهید کنار عنوان هر مطلب نمایش بدید رو در اونجا وارد کنید حالا فقط مونده این تصویر رو فراخوانی کنید برای این کار این کد رو هر جا که خواستید اون تصویر نشون داده بشه اضافه کنید

 [img]<?php echo $iconurl ?>[/img] 

تشکر

متاباکس ها اضافه شدند

و به اون مثل لینک زیر آدرس میدم

http://127.0.0.1/wp-content/uploads/2014/03/281443-290x195.jpg

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

لینک به ارسال

به نظر شما این آدرس اصلا قابل نمایش هست؟

شما تصویرتون رو در کتابخانه خود وردپرس اضافه کنید بعد آدرس اون رو اضافه کنید

لینک به ارسال

به نظر شما این آدرس اصلا قابل نمایش هست؟

شما تصویرتون رو در کتابخانه خود وردپرس اضافه کنید بعد آدرس اون رو اضافه کنید

بله دوست عزیز

این آدرس رو تویه مزوزگر میزنم و عکس رو میاره

و روباره یک آدرس عکس از گالری گرفتم روباره نمایش نداد

لینک به ارسال

در لوکال‌هاست هستید؟

این کد رو در فایلی که اون کد نمایش تصویر رو اضافه کردید٬ اضافه کنید


<?php
$icontitle = get_post_meta($post->ID, 'icontitle', true);
$iconurl = get_post_meta($post->ID, 'iconurl', true); ?>

لینک به ارسال
در لوکال‌هاست هستید؟ این کد رو در فایلی که اون کد نمایش تصویر رو اضافه کردید٬ اضافه کنید
 ID, 'icontitle', true); $iconurl = get_post_meta($post->ID, 'iconurl', true); ?> 

تشکر کار کرد

یک تغییر کوچک تویه نمایش می خواتم انجام ردم

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

چون من پست های زیادی دارم و خیلی سخته که دوباره برای همه متا تگ های اونا آدرس تعیین کنم .

تشکر

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

این کد رو در فانکش قالبتون اضافه کنید (در اندازه دلخواه خودتون)


// add thumbnails
add_theme_support( 'post-thumbnails' );
add_image_size( 'icon-thumb', 65, 65, true);

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


<?php if ($iconurl != '') { ?>
<img src="<?php echo $iconurl ?>" alt="<?php echo $icontitle ?>" />
<? } elseif(has_post_thumbnail()){the_post_thumbnail('icon-thumb');}?>

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

لینک به ارسال
این کد رو در فانکش قالبتون اضافه کنید (در اندازه دلخواه خودتون)
 // add thumbnails add_theme_support( 'post-thumbnails' ); add_image_size( 'icon-thumb', 65, 65, true); 

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

 [img]<?php echo $iconurl ?>[/img] 

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

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

من این طوری نوشتم

<?php
$url = get_post_meta($post->ID, 'url', true); ?>

<?php if ($url != '') : ?>
<img src="<?php echo $url ?>" title="<?php the_title(); ?>" />
<?php else:?>
<img src="<?php echo catch_that_image() ?>" title="<?php the_title(); ?>" alt="<?php the_title(); ?>" />
<?php endif; ?>

خیلی ممنون بابت وقتی که گذاشتی

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

متوجه منظورتون نشدم

یعنی هر بار عرض تصویر فرق می‌کنه؟

مشکل حل شد

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

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

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

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

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

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

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

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

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

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

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