رفتن به مطلب

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

سلام

قبل از هرچیز پوزش بابت طولانی بودن پست به دلیل اینکه من دو مشکل در خطاهای w3c داشتم و این مشکل را در تاپیک مربوط به "مشكلات و سوالات رفع ارورهاي قالب در W3C" مطرح کردم که یکی از مدیران انجمن گفتند در تاپیک جدید سوال را مطرح کنم و تمامی سوالات آن قسمت را تبدیل به یک تاپیک کردم. و به دلیل اینکه سایت در مرحله تست و عیب یابی هست به همین منظور لینک آنلاین w3c و یا آدرس سایت رو قرار ندادم ممنون میشم در همین تاپیک راهنمایی کنید که مشکلات مشابه Seo و w3c برطرف شوند

1. مشکل اول با مقادیر Alt تصاویر بند انگشتی (Thumbnail) هست. زمانی که در پست جدید سایت قصد آپلود تصویر را داشته باشم قالب سایت بصورت اتوماتیک تصویر بند انگشتی (Thumbnail) با اندازه 60x60 می سازه. موقع آپلود تصاویر با اینکه مقادیر Alt , Discription , Title به تصویر می دهم تصویر بند انگشتی ساخته شده در خروجی سایت فاقد مقادیر Alt هستند. نصاویر بند انگشتی (Thumbnail) که بصورت اتوماتیک توسط قالب ساخته می شوند در بخش رسانه (Media) وردپرس وجود ندارند و به همین دلیل نمیتوان آنها را بصورت دستی ویرایش کرد و باید از تابعی استفاده کرد که هنگام ساخته شدن اتوماتیک مقادیر Alt را به تصاویر بند انگشتی اضافه کند

پیغام خطای w3c :


An img element must have an alt attribute, except under certain conditions. For details, consult guidance on providing text alternatives for images.
…/wp-content/uploads/Testing-2013-60x60.jpg' />

قسمتي از سورس واقع در فايل header.php (مرتبط با پيغام خطاي بالا) :


<?php
$image_id = get_post_thumbnail_id ( $post->ID );
if ( $image_id <> "" ) {
$image_url = cs_attachment_image_src($image_id, 60, 60);
echo "<img src='".$image_url."' />";
}
else {
echo "<img width='80' height='84' src='".get_template_directory_uri()."/images/no_image.jpg' />";
}
?>

یکی از مدیران انجمن (isk) گفتند :

وقتی تصویری فراخوانی میشه (به هر سایز دلخواه) چه این فراخوانی از طرف پوسته و چه از طرف افزونه ها باشه مقدار alt هم باید فراخوانی بشه....

اگر alt از قبل تعیین نشده باشه از حالت زیر باید استفاده شود :


// If no title is set, get the alt from the original image
$alt = $title;
if(empty($alt))
$alt = any($attachment->post_title);
if(empty($alt))
$alt = any($attachment->post_content);[/right]

[/color][/left]

[left][color=#282828][right]

من زمانی که تمامی کدهای بالا (که مدیر انجمن گفتند) را درون سورس ذکر شده قرار می دهم سایت با پیغام خطا مواجه می شود که مشکل از این کدها هست و زمانی که $alt = $title;

را بعد از

src='".$image_url."' />"; در سورس سایت قرار می دهم هیچ تغییری با گذشته نکرده و زمانی که پست جدید در سایت می گذارم و عکس آپلود میکنم و سایت را در w3c اسکن میکنم باز هم با پیغام خطای مقادیر Alt در w3c مواجه میشم.

ممنون میشم شکل صحیح این مقادیر و توابع مربوط به Alt , Discription , Title را بگید به چه صورت و در کدام قسمت سورس قرار بگیره

2. مشکل دوم ،

مربوط به لوگوی سایت هست و

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

دو پيغام مشابه در يک خط هست و متوجه نشدم دقیقا مشکل از کجاست


Bad value 197px for attribute width on element img: Expected a digit but saw p instead.
…M130/images/admin/logo.png" alt="Testing" width="197px" height="34px"/>
Syntax of non-negative integer:
One or more digits (0–9). For example: 42 and 0 are valid, but -273 is not.[/left]


[left]

و


Bad value 34px for attribute height on element img: Expected a digit but saw p instead.
…M130/images/admin/logo.png" alt="Testing" width="197px" height="34px"/>
Syntax of non-negative integer:
One or more digits (0–9). For example: 42 and 0 are valid, but -273 is not.

قسمتي از سورس واقع در فايل header.php (مرتبط با پيغام خطاي بالا) :


<!-- Logo Start -->
<div class="five columns left">
<a href="<?php echo home_url() ; ?>" class="logo">
<img src="<?php echo $cs_logo?>" alt="<?php echo bloginfo( 'name' )?>" width="<?php echo $cs_width?>px" height="
<?php echo $cs_height?>px"/>
</a>
</div>
<!-- Logo End -->

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

منتظر راهنمایی هایتون هستم

http://forum.wp-pars..._180#entry51179

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

دوست عزیز یک پیشنهاد میکنم بهتون که هم رفتار دوستانه ای با سرورتون داشته باشید و هم کاری کنید که گوگل ازتون راضی باشه . این کدهای php رو خیلی راحت میتونید به html تبدیل کنید تا بدون جنگ و خونریزی مشکلاتتون حل بشه . مثلاً بجای کد زیر :


<?php
$image_id = get_post_thumbnail_id ( $post->ID );
if ( $image_id <> "" ) {
$image_url = cs_attachment_image_src($image_id, 60, 60);
echo "<img src='".$image_url."' />";
}
else {
echo "<img width='80' height='84' src='".get_template_directory_uri()."/images/no_image.jpg' />";
}
?>

میتونید از یک زمینه دلخواه استفاده کنید و بسادگی داخل هر پست مقدار بدید . البته میتونید در کد بالا alt رو هم در تگ a تعریف کنید .


<?php
$image_id = get_post_thumbnail_id ( $post->ID );
if ( $image_id <> "" ) {
$image_url = cs_attachment_image_src($image_id, 60, 60);
echo "<img src='".$image_url."' alt="عنوان سایت یا هر عبارت دلخواه" />";
}
else {
echo "<img width='80' height='84' src='".get_template_directory_uri()."/images/no_image.jpg' />";
}
?>

دوستانی که آشنا به کد نویسی php هستند باید نظر بدند که این کد اضافه شده مشکلی ایجاد میکنه یا نه .

همچنین در کد :


<!-- Logo Start -->
<div class="five columns left">
<a href="<?php echo home_url() ; ?>" class="logo">
<img src="<?php echo $cs_logo?>" alt="<?php echo bloginfo( 'name' )?>" width="<?php echo $cs_width?>px" height="
<?php echo $cs_height?>px"/>
</a>
</div>
<!-- Logo End -->

خیلی راحت بجای کدهای php مقادیر استاتیک رو جایگذاری کنید . لوگو که ثابت هست و تغییری نمیکنه . پس چه بهتر که استاتیک هم بشه


<!-- Logo Start -->
<div class="five columns left">
<a href="ادرس لینک لوگو (ترجیحاً آدرس صفحه اصلی سایت)" class="logo">
<img src="آدرس لوگو" alt="عنوان سایت" width="عرض عکس" height="
طول عکس"/>
</a>
</div>
<!-- Logo End -->

لینک به ارسال

ممنون از راهنمایتون

با قرار دادن مقادیر Alt مشکل تصاویر بند انگشتی حل شد فقط مشکلی اصلی این هست که این مقادیر ثابت و بصورت HTML هستند و هر مقداری به Alt تصاویر داده شود به همه اعمال می شود (به عنوان مثال عنوان سایت یا اسم سایت یا...) اگه بخواهیم عنوان هر پست را به عنوان مقادیر Alt در نظر بگیریم از چه تابع PHP باید استفاده کرد ؟ در تست سئو از (chkme) در بخش توضیحات تصاویر (Image Descriptions) هیچ پیغام خطایی از تصاویر نمیگیرد ولی در قسمت عناوین تصاویر (Image Titles) از تمامی تصاویر موجود ایراد گرفته راهی برای حل عناوین تصاویر هست ؟

پیغام خطای سئو (Chkme) به عناوین تصاویر به همراه سورس تصاویر بند انگشتی واقع در Header.php

به صورت عکس در سه سرور آپلود کردم


http://knl.site88.net/photos/3187550749e6.jpg
http://upload.tehran98.com/img1/v6uzxixcpsfk0y8z13a.jpg
http://uploadtak.com/images/e5339_thumbnailmissing2.jpg

در مورد اخطارهای w3c از لوگوی سایت ، کدهای html رو جایگزین کدهای php کردم مشکل و پیغام های خطا همچنان پا برجاست

سورس فایل header.php ، بخش مربوط به لوگو



<div class="five columns left">
<a href="#" class="logo">
<img src="/wp-content/themes/ZM130/images/admin/logo.png" alt="Example" width="197px" height="34px"/>
</a>
</div>

پیغام خطاهای مجدد w3c از قسمت لوگو ، به صورت عکس در سه سرور مختلف آپلود کردم


http://knl.site88.net/photos/f4d5fbbafdf9.jpg
http://upload.tehran98.com/img1/1hiw1snfz5jk2s09gps4.jpg
http://uploadtak.com/images/e2572_w3clogo3.jpg

ویرایش شده توسط kkizkk
لینک به ارسال
اگه بخواهیم عنوان هر پست را به عنوان مقادیر Alt در نظر بگیریم از چه تابع PHP باید استفاده کرد ؟

میتونید کد php عنوان رو از فایل های index.php یا single.php بگیرید و در قسمت Alt عکس مورد نشرتون استفاده کنید (دقت کنید عکس باید در حلقه پست باشه )

همچنین می تونید از افزونه SEO Friendly Images استفاده کنید . این افزونه عنوان و توضیحات رو به عکس اضافه میکنه .

راهی برای حل عناوین تصاویر هست ؟

بله . برای عکس ها هم title در نظر بگیرید :


<img . . . . . . . . title="عنوان مورد نظر شما" />

در مورد اخطارهای w3c از لوگوی سایت . . .

قسمت سایز عکس کدش رو درست قرار ندادید . برای طول و عرض لازم نیست px قرار بدید . تک img رو اینطوری بزارید :


<img src="/wp-content/themes/ZM130/images/admin/logo.png" alt="Example" width="197" height="34"/>

لینک به ارسال

ممنون از راهنمایتون

مشکل لوگو و عنوان برطرف شد ولی در مورد مقادیر Alt و عنوان همچنان مشکل جاگزینی کدهای php وجود دارد. افزون Seo Friendly Images هم قبلا استفاده کردم ولی عنوان و توضیحات رو به تصاویر بندانگشتی اضافه نمیکنه. در مورد مقادیر Alt که بصورت php میخواهم جایگزین HTML کنم در ابتدای این تاپیک هم عرض کردم که روش های گوناگونی را تست کردم ولی کار نکردند در تاپیک "مشكلات و سوالات رفع ارورهاي قالب در W3C" هم سوال کرده بودم که دوستان عزیز جملات زیر را عنوان کرده بودند


// If no title is set, get the alt from the original image
$alt = $title;
if(empty($alt))
$alt = any($attachment->post_title);
if(empty($alt))
$alt = any($attachment->post_content);

- در مقادیر Alt تصاویر پستها بهتر است از "عناوین پست" استفاده شود یا در Tite و یا در هر دوی آنها ازعنوان استفاده شود

- یا مقادیر Alt تصاویر "عنوان پست" و Title همیشه ثابت باشد کدامیک (بهترین راهکار برای سئو) خواهد بود

ممنون میشم در کد مورد نظر راهنمایی کنید که به چه شکل قرار گیرد

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

alt مهمتر از title هست اما میتونید مقادیر alt رو برای title هم قرار بدید .

در مورد سوال بعدی منظورتون رو متوجه نشدم .

لینک به ارسال

ممنون از راهنمایتون

در مورد سوال بعدی ، مقادیر Alt که هم اکنون بصورت HTML در سایت قرارگرفته شده را میخواهم بصورت PHP و توابع از آن استفاده کنم که تمامی Alt ها و Title ها یک نواخت نباشند و از عناوین هر پست به خصوصیت Alt و Title تصاویر نسبت دهد. افزونه

Seo Friendly Images را نیز تست کردم ، بر روی تصاویر بند انگشتی جواب نمی دهد

قصد دارم به کد زیر (مربوط به تصاویر بند انگشتی) مقدار PHP نسبت دهم که از عنواین هر پست به Alt و Title تصاویر هم نسبت دهد

در حال حاظر مقادیر Alt و Title تصاویر بصورت یکنواخت هستند ، ممنون میشم راهنمایی کنید کدهای php در زیر به چه صورت در مقادیر Alt و Title قرار بگیرند


<a href="<?php echo get_permalink();?>">
<?php
$image_id = get_post_thumbnail_id ( $post->ID );
if ( $image_id <> "" ) {
$image_url = cs_attachment_image_src($image_id, 60, 60);
echo "<img src='".$image_url."' title='examplee' alt='example' />";
}
else {
echo "<img width='80' height='84' src='".get_template_directory_uri()."/images/no_image.jpg' title='noimage' alt='noimage' />";
}
?>
</a>

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

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

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

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

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

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

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

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

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

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