July 27, 2005 at 01:50 am
این روزها ایمیل های زیادی مبنی بر طراحی قالب وبلاگ دریافت می کنم. متاسفانه گرفتاری های روزانه آن قدر زیاد شده که کمتر فرصت می کنم به این کارها برسم. با این وجود، گه گاهی سرم خلوت می شه و کارهایی از این قبیل به طور غیر رسمی انجام می دم. اما از امروز تصمیم گرفت بخش دیگری بنام طراحی وب فعلا در یه صفحه جداگانه در اینجا ایجاد کنم. دوستانی که سفارش طراحی قالب وبلاگ (فعلا فقط وردپرس، به زودی موبیل تایپ هم اضافه خواهد شد) دارند، به این قسمت رجوع کنند. ضمنا فکر نکنید وردپرس تنها برای وبلاگ بدرد می خوره به قول برو بچز، ما با وردپرس فیل که چه عرض کنم، بزرگ ترش رو هم هوا می کنیم. لابد می گید محاله! شما $ رو بده بیاد اون با ما، دو سه تا پلاگین همه چیزو جمع و جور می کنه.
در طی دو سه روز اخیر الوان وب لنگ در هوا بود. یه بار میگن حمله DOS صورت گرفته یه بار قوانین رو زیر پا گذاشتن و سرور خاموش شده. در هر صورت امیدوارم کمتر از این مشکلات رخ بده.(هر چه پول بدی همون قدر هم آش می خوری برادر من، نبایستی توقعات بی جا داشت)
نکته دیگر اینکه اگر شما هم مثل من عاشق تصنیف ها و ترانه های سنتی ایرانی هستید، برنامه شبستانه شبکه فرهنگ (دایرة المعارف شنیداری) را از دست ندهید. کمتر آدمی هستم که سراغ تلویزیون و رادیو و امثالهم بروم. دیشب در حین کار بر روی یک پروژه مخابراتی، هنگامی که تیونر مدار را برای جستجوی نتیجه مورد نظر می چرخاندم بر حسب تصادفی عجیب با این برنامه آشنا شدم. شنیدن این برنامه که از ساعت 0 بامداد به وقت ایران شروع و تا 2 ادامه دارد خالی از لطف نخواهد بود.
July 17, 2005 at 06:20 pm
در پست قبلی مقدمه ای در مورد CSS Hacks بیان شد، حال در این پست قصد داریم راه حل باکلاس و بسیار جالبی را به کمک php برای شناسایی مرورگر و ارسال کدهای CSS متناسب با آن ارائه کنیم. برای آنکه بتوانیم دستورات PHP را در یک فایل css بکار ببریم، نیازمند این هستیم که از طریق شیوه نامه پیوندی (Linked Stylesheet) محتویات فایلی با پسوند php را در برچسب head صفحه، به شکل زیر قرار دهیم:
<link rel="stylesheet" href="styles.php" type="text/css" />
اکنون شما باید فایلی با نام styles.php در همان دایرکتوری که فایل صفحه تان قرار دارد ایجاد کنید. در اولین خط این فایل، با استفاده از تابع header نوع محتویات به صورت text/css تعریف می شود. هنگامی که این فایل در صفحه فراخوانی می شود اطلاعاتی از مرورگر کاربر به وسیله پارامترهای از پیش تعریف شده در php دریافت می شود و سپس کد css متناسب با آن مرورگر، ارسال خواهد شد. بدین منظور تابع detect را جهت شناسایی مرورگر، نسخه آن و پلتفرم (نوع سیستم عامل) به شکل زیر تعریف می کنیم: ادامه مطلب …
July 15, 2005 at 08:28 pm
اگر شما یک طراح وب هستید یا در این شاخه فعالیت می کنید، شاید تاکنون متوجه این مطلب شده باشید که در میان مرورگرهای متفاوت هر کدام به نحوی طرحتان را نمایش می دهند. برای مثال شما بادقت پیکسل ها را کم و زیاد و مو به مو تمام نقص ها را برای مرورگری مثل فایرفاکس برطرف می کنید. اما در هنگام ارائه طرحتان در یک مرورگر دیگر مثل اینترنت اکسپلرر، صفحات بهم می ریزند!
طراحی با CSS نیز از این قاعده مستثنا نیست. برعکس در بیشتر موارد به نظر می رسد مرورگرها بیشتر با طرح بندی برپایه جدول (table based layout) سازگارند. شاید یکی از این دلایل این باشد که هنوز چندین نام بزرگ در طراحی صفحاتشان از طرح بندی بر مبنای جدول بهره می گیرند.
برای حل این مشکلات بسیاری از طراحان CSS از تنظیماتی در کدهایشان بهره می گیرند که CSS Hack نام دارد. در واقع CSS Hack راهی است برای اینکه برخی از مرورگرها را مجبور کنیم تا کدهای css معینی را نادیده بگیرند. ما این کا را با قرار دادن کاراکترهای و نشانه های ویژه ای در فایل CSS تعریف می کنیم. برای مثال، یکی از بدترین حالات در هنگام طراحی با CSS، مدل جعبه ایی (Box model) است. IE5 و IE5.5 ویندوز در CSS1 این مدل را با گذاشتن لبه و لایه گذاری (border and padding) درون عرض مشخص شده بجای بیرون، به غلط تفسیر می کنند.
برای مثال کد زیر را در نظر بگیرید که بر اساس آن در همه مرورگرها برای عنصر header عرضی به پهنای 10em خواهیم داشت بجز IE5 که عرضی به پهنای 5em را بر می گرداند.
( IE5 دو مقدار padding و border را در هنگام برآورد طول در هم می آمیزد) ادامه مطلب …
July 13, 2005 at 06:09 pm
این روزها به مانند تابستان گذشته بد جور جو پی اچ پی بازی ام گل کرده است. هر چند نصب دو سه کتابخانه منجمله pear کلافه ام کرده اند اما باز نمی شود دست از آن برداشت. هر چه پیش تر می روی و در عمل آن را تجربه می کنی، لب به اقرار می گشایی که شگفتا عجب زبانی است این! اگر از این زبان هیچ نمی دانید و در پی راهی برای فراگیری آن هستید کتاب PHP/MySQL Programming for the Absolute Beginner می تواند منبعی عالی برای شما باشد. اگر هم با مقدمات و اصول برنامه نویسی php آشنا هستید، کتاب Advanced PHP for Web Professionals در نوع خود بی نظیر است.
بخصوص اگر از وردپرس یا سیستم های دیگر تحت php/mysql برای مدیریت محتوای خود استفاده می کنید بر شما لازم است که php را فراگیرید. البته کار با دیگر زبان های تحت وب همچون ASP نیز جالب بنظر می رسد البته اگر حوصله یادگیری اش را داشته باشید. چرا که این زبان به دانستن زبان های VBScript و CGI که خود نیازمند فراگیری C یا Perl می باشد، محتاج است. برای آموزش زبان ASP کتاب ASP.Net Web Developers Guide واقعا جامع و کامل است. افسوس که سرعت ناچیز کانکشن من قدرت آپلود این کتاب ها را ندارد. اگر $ دارید بخرید اگر ندارید هم عکس جلدش را تماشا کنید. اگر مشتاق آموختن این زبان ها هستید دست بکار شوید، تابستان فرصت مناسبی است.
بسیاری از دوستان در ایمیل ها یا کامنت شاکی از این هستند که پلاگین های معرفی شده برای وردپرس درست نصب نمی شود یا در کارایی اشکال دارد. باید خدمت شما عرض شود که اگر نگاهی به تاریخ پست و ورژن آن روز وردپرس بیندازید مشکل حل است. اغلب پلاگین هایی که معرفی کرده ام مربوط به زمانی است که هنوز نسخه 1.5 و بالاتر از آن عرضه نشده بود. همانگونه که می دانید در نسخه 1.5 و بالاتر از آن تغیرات چشمگیری ایجاد شده است. خوشبختانه بیشتر پست های مربوطه، لینک منبع پلاگین را شامل هستند و اگر نداشتند حتما در فایل read me آن ها موجود است. برای رفع مشکلتان بهتر است به سایت نویسنده پلاگین سر بزنید و نسخه های جدید پلاگین را که با ورژن وردپرس شما بخواند دریافت کنید.