• @font-face

    ·

    نقطه؛ سر خط ته خط سرِ تهِ خط. نقطه بی نقطه!؟

  • Child theme برای وردپرس

    ·

    Child theme برای وردپرس یا چگونه بدون نگرانی از نابودشدن تغییرهایی که در پوسته‌ی خود داده‌ایم آن را به آخرین نسخه ارتقا دهیم و از زندگی لذت ببریم.

    یکی از بزرگترین نگرانی‌ها برای من همیشه این بود که باید حواسم به changelog وردپرس می بود که چه تغییرهایی داده شده و مهمتر کدوم یکی نیاز به ویراستن پوسته داره. چرا؟ خیلی ساده، فرض کنید شما (چه به عنوان طراح و توسعه دهنده‌ی پوسته برای وردپرس چه به عنوان کسی که پوسته‌ای رو برداشته و برای خودش Customize کرده) مجبور بودید که همیشه source اصلی رو دستکاری کنید که خوب این خودش سرمنشا هزار و یک جور دردسر بود. راه حل چیه؟ چه کنیم که با آپدیت شدن پوسته‌ی مربوطه تغییرهای ما از دست نره و در عین حال از آخرین نسخه هم استفاده کنیم؟ خیلی ساده، از Child Theme استفاده کنید.

    خوب این Child Theme اصلا چی هست؟یا چه جوری کار می‌کنه؟

    یک پوشه محتوی یک فایل style.css (و در صورت تمایل functions.php و تصویرهای مربوطه)، این کل چیزی هست که به اسم Child Theme می‌شناسیم. خصوصیات اصلی از روی Parent Theme خونده میشه و هر تغییری که شما توی Style.css بدید توی پوسته‌ی وردپرس شما اعمال میشه. و البته تمام ویژگی‌ها و امکانات پوسته‌ی مادر رو هم داره. فعال شدنش هم درست مثل پوسته‌های معمولیه.

    برای ساختن Child Theme چه چیزهایی لازم داریم؟

    دسترسی FTP به سایت!
    اندکی سواد CSS
    یک عدد Text/Code editor
    یک عدد پوسته‌ی مادر

    گام اول:

    یک نام یگانه برای Child Themeاتون انتخاب کنید (دقت کنید که این نام هیچ کدام از پوشه‌هایی که توی wp-content/themesهستند نباشه). توی مسیر پوسته‌اتون یک فایل style.css بسازید. اولین خطوط این فایل باید مشابه خطوط زیر باشه:

    [sourcecode language=”css”]/*
    Theme Name: Your-theme-name
    Theme URI: the-theme’s-homepage
    Description: a-brief-description
    Author: your-name
    Author URI: your-URI
    Template: parent-theme
    Version: a-number–optional
    .
    General comments/License Statement if any.
    .
    [/sourcecode]

    تقریبا تمام موارد مشخصه، فقط روی Template: parent-theme دقت کنید که اسم پوسته‌ی مادر رو دقیقا به همون شکلی که هست وارد کنید (روی کوچیک و بزرگ بودن حروف مخصوصا دقت کنید).

    خوب از اینجا به بعد دیگه همه چیز دست خودتونه که هرکاری خواستید بکنید. البته بسته به پوسته‌ی مادری که انتخاب می‌کنید می‌تونید مواردی رو هم اون پوسته وارد کنید. مثلا فرض می‌کنیم که شما از Thematic به عنوان پوسته‌ی مادر استفاده می‌کنید و با هم یه نمونه رو می‌ریم جلو.

    اسم پوسته‌امون رو می‌ذاریم Thematic custom، پس style.css رو اینجوری شروع می‌کنیم:

    [sourcecode language=”css”]
    /*
    Theme Name: Thematic custom
    Theme URI: https://kaam.biz/thematic-custom
    Description: A Child theme for Thematic theme framework
    Author: Kaambiz
    Author URI: https://kaam.biz
    Template: thematic
    Version: a-number–optional
    .
    General comments/License Statement if any.
    .
    */
    [/sourcecode]

    خوب thematic چندین و چند style رو برای استفاده داخل پوشه‌اش قرار داده که می‌تونیم اون‌ها را وارد پوسته‌ی خودمون بکنیم. مثلا با

    [sourcecode language=”css”]
    @import url(‘../thematic/style.css’);[/sourcecode]

    کل style پیش‌فرض رو وارد می‌کنیم و می‌تونیم بعد از اون تغییرهای خودمو نرو اعمال کنیم. یا می‌تونیم دستی کل style رو اینجا Copy/Paste کنیم و هرجاییش رو که خواستیم تغییر بدیم. این روش دوم یه مقدار شلوغتره ولی خوب راحتتر هم هست.

    حالا اگه می‌خواید که پوسته‌اتون رو از صفر شروع کنید می‌تونید از فایل‌های مفیدی که توی پوشه‌ی thematic هست استفاده کنید. پیشنهاد خود من برای اینکار اینه که این فایل‌ها رو وارد کنید و بلافاصله از بعد از این‌ها شروع کنید به ور رفتن با کدها:

    [sourcecode language=”css”]/* Reset browser defaults */
    @import url(‘../thematic/library/styles/reset.css’);

    /* Apply basic typography styles */
    @import url(‘../thematic/library/styles/typography.css’);

    /* Style the meta panel for logged-in users */
    @import url(‘../thematic/library/styles/sitemeta.css’);

    /* Apply a basic layout */
    @import url(‘../thematic/library/layouts/2c-r-fixed.css’);

    /* Prepare theme for plugins */
    @import url(‘../thematic/library/styles/plugins.css’)[/sourcecode]

    توضیحات بسیار ناقص و مسخره‌ای بود، می‌دونم. این پایینی‌ها رو بخونید بهتره:
    How to make a “child theme” for WordPress. A pictorial introduction for beginners
    Creating WordPress Child Themes
    http://codex.wordpress.org/Theme_Development#Theme_Style_Sheet

    پ.ن: این افزونه‌ای که برای syntax highlighting استفاده می‌کنم گویا یه خورده خل و چله!

  • آب‌نبات میوه‌ای

    ·

    – خوب, چهارتا از پنج تا دکتر موافقن که من راست راستی خلم.

    تلخی بعد از استفراغ رو که حتما تا الان تجربه کردید؟ مزه‌اش با هر تلخی دیگه‌ای فرق داره, عملا بدتره ولی یه حس خوبی بهت دست می‌ده, حس اینکه بالاخره خالی شدی، راحت شدی. تلخی‌ای که البته با هیچ چیزی هم برطرف نمیشه مگر با گذشت زمان. حالا این تلخی دقیقا همون حسی که بعد از دیدن Hard Candy داشتم, هر چهار بار! تلخ عین زهرمار ولی شیرین!!!

  • Dial m for moverios! – part I

    ·

    قبلا گفتم (یا نگفتم؟ یادم نیست) مدت بسیاری زیادیه که دارم (داریم فعل درست‌تریه، چرا که شهرام همیشه کنارم بود) روی Moverios.com کار می‌کنم.

    الان تقریبا به اون چیزی که مدنظرم بود (دست کم از نظر ظاهر) نزدیک‌تر شده.
    از وردپرس ۲.۷ (بتای ۳) به عنوان هسته‌ی کار استفاده کردم. پوسته با استفاده از Frameworkای به اسم Options کار شده. برای کامنت‌ها، اول می‌خواستم از پیش‌فرض خود وردپرس ۲.۷ استفاده کنم ولی با یه کم کند و کاو دیدم با استفاده از Intensedebate به نتیجه‌ی بهتری خواهم رسید، مخصوصا که با ادغام شدن توی مجموعه‌ی wordpress کار باهاش راحت‌تر هم شده.
    قطعا مشکل‌های زیادی خواهد داشت، مثلا همین کامنت‌ها که گفتم یه مقدار با style مشکل داره که در حال رفعشون هستم.

    همچنان: Viva WordPress!

    پ.ن: ایده‌ی اون میمون بامزه، محصول مشترک ذهن معیوب و مجنون من با مغز شهرامه.

  • If I only could, be running up that hill

    ·

    [flash https://kaam.biz/files/Running-Up-That-Hill.mp3 w=500 h=50]

    By: Placebo

    [Download]

    It doesn’t hurt me.
    You want to feel, how it feels?
    You want to know, know that it doesn’t hurt me?
    You want to hear about the deal I’m making.
    You, (If I only could, be running up that hill)
    You and me (If I only could, be running up that hill)

    And if I only could,
    Make a deal with God,
    Get him to swap our places,
    Be running up that road,
    Be running up that hill,
    Be running up that building.
    If I only could

    You don’t want to hurt me,
    But see how deep the bullet lies.
    Unaware that I’m tearing you asunder.
    There’s a thunder in our hearts, baby

    So much hate for the ones we love?
    Tell me, we both matter, don’t we?
    You, (If I only could, be running up that hill)
    You and me (If I only could, be running up that hill)
    You and me, won’t be unhappy

    And if I only could,
    Make a deal with God,
    And get him to swap our places,
    Be running up that road,
    Be running up that hill,
    Be running up that building.
    If I only could

    Come on, baby, come on, come on, darling,
    Let me steal this moment from you now.
    Come on angel, come on, come on, darling,
    Let’s exchange the experience

    And if I only could,
    Make a deal with God,
    And get him to swap our places,
    Be running up that road,
    Be running up that hill,
    With no problems.

    And if I only could,
    Make a deal with God,
    And I’d get him to swap our places,
    Be running up that road,
    Be running up that hill,
    With no problems.

    If I only could, be running up that hill
    If I only could, be running up that hill
    If I only could, be running up that hill
    If I only could, be running up that hill
    If I only could, be running up that hill
    If I only could, be running up that hill
    If I only could, be running up that hill

  • بتمنِ کوین اسمیث

    ·

    Kevin Smith رو که می‌شناسید؟ یکی از خل‌ و چل‌ترین موجودات هالیوود. کارگردان، نویسنده و بازیگر و Comic book writer!!!
    اسمیث که قبلا مینی‌سری‌هایی در موردGreen Arrow، Daredevil، Spiderman رو نوشته بود تازگیا یه مینی‌سری سه جلدی رو با محوریت batman رو آماده کرده به اسم Batman: Cacophoney. به قلم خودش و با طراحی Walt Flanagan و Sandra Hope.
    شرورهای داستان هم Onomatopoeia (خود اسمیث توی مینی‌سریش برای green Arrow خلقش کرده بود)، joker و Victor Zsasz هستند.
    خط قصه ی جلد اول اینه:

    “Practically from out of nowhere, the mysterious masked killer known as Onomatopoeia returns and sets his sights – and sounds – against The Caped Crusader!”

    جلد اول قراره ۱۲ نوامبر (چهار روز دیگه) منتشر بشه. عجالتا چندتا صفحه‌اشو ببینید:

    اینم کاور:

  • So say We all

    ·

    گاهی اوقات این‌قدر جورگیر می‌شوی که نمی‌دانی چه باید بکنی. این، شده جکایت من و BattleStar Galactica که بعد از دیدنش شدیدا جوگیر شده‌ام، شایدم نشده باشم که احتمال اینکه نشده باشم بسیار بیشتره، جوگیر شده‌ام که بهترین Sci-Fi تاریخ بشریت رو دیده‌ام. فکر می‌کنم خیلی هم چوگیر نباشم چرا که Entertainment Weekly هم پارسال BSG رو بعد از Matrix به عنوان بهترین Sci-fi ساخته شده از ۱۹۸۲ به اینور انتخاب کرده.
    اگه فکر می‌کنید که هر قسمت (مثلا) Lost پر از ایده است و خلاقیت زیادی درش به کار رفته سخت در اشتباهید. خلاقیت چیزیه که تیم سازنده‌ی BSG به معنای واقعی کلمه دارند، از خالقین کار (Ronald D. Moore و David Eick) گرفته تا تک‌تک عوامل سریال، مخصوصا آهنگ‌ساز جوان سریال (Bear McCreary) که یکی از بهترین حاشیه‌های صوتی‌ای که به عمرم شنیدم‌ام رو ساخته.
    حکایتی که برای سریال در نظر گرفته شده شاید از دور کمی غریب و غیرقابل باور به نظر برسه ولی کمی که جلو برید فراموش می‌کنید که این چیزی که درحال نگاه کردنش هستید نه در مورد ساکنین زمین که درمورد انسان‌هایی از دنیایی دیگه است. اشاره‌های زیاد و به جایی که به کهن‌آیین‌ها، فرهنگ‌ها و مذاهب بشری شده هم قابل یادآوری هستند. محض نمونه Kobol از وازه‌ای دری گرفته شده که معنای «بهشت» رو میده، adama در عبری ( دقیقا با همین تلفظ) معنای خاک و زمین رو میده. دیگه به اشاره‌های مستقیم‌تر مثل زئوس و ژوپیتر و … کاری نداریم.

    حکم: دیدن آن از واجبات بوده و قاصران در دوزخ جان خواهند گرفت.

    اینم دو نمونه از موسیقی‌هایی که خواهید شنید:
    A distant sadness:
    [flash https://kaam.biz/files/A-Distant-Sadness.MP3 w=600 h=50]

    All along watchtower:
    [flash https://kaam.biz/files/All-Along-The-Watchtower.MP3 w=600 h=50]

  • The Blog job

    ·

    یکی دیگه از معدود لذت‌های باقی‌مونده برام، انجام دادن کاری که به خیال خودم خوب بلدم. ممکنه بیشتر از یکی باشه، ممکن هم هست اگه از بیرون از دید یک ناظر بی‌طرف بهش نگاه کنم به سازنده‌اش، خالقش، کننده‌اش بد و بیراهم بگم بابت نابلدیش.
    یکی از این چیزهایی که فکر می‌کنم، خیال می‌کنم، بهتر بگم امیدوارم، خوب بلدم راه انداختن و علم کردن وب‌سایت و وبلاگه، مخصوصا وقتی که وبلاگی که راه می‌اندازم قبلا روی یکی از این سرویس‌دهنده‌های ابتدایی وطنی بوده باشه. لذت‌بخش‌ترین مرحله‌ی کار برام سر و کله زدن با Scriptایه که باهاش کار می‌کنم (این‌ها تعدادشون اوایل، سه-چهار سال پیش به شدت زیاد بود الان محدود شدن به یه تعداد انگشت‌شمار که بعدا اگه حالی بود و انگیزه‌ای در موردشون داد سخن خواهم پراکند). این مورد به خصوص مقصد عالی‌جناب WordPress بود و مبدا Persianblog. خلاصه‌ی کلام اینکه آخرای مراحل منتقل کردن ( شیوه‌ی انتقال رو می‌خواید بدونید؟ پست‌ها رو می‌ذاشتیم روی کولمون هلک‌هلک می‌آوردیم اینور خالی می‌کردیم! یعنی چی؟ یعنی دقیقا همونی که فکرشو کردید: Copy & Paste!!!) ارواح تمام رفتگان و نرفتگانم داشت جلوی چشمم می اومد.

    خوب این همه مزخرف بافتم که برسم به اینجا. با کمال مسرت و شادمانی یکی دیگر را از بند PB رهانیده و به دامان پرمهر WP آوردیم. باشد که از مومنان باشید. ایشان(Ringator) را از اینجا به اینجا آوردم. یه حسن بزرگی اینه که خوشبختانه خودش هم دست به آچارش خوبه. چیزی که من تحویل دادم کلا از نظر قیافه تعطیل بود، اینی که می‌بینید حاصل دست خودشه ولاغیر. البته یه ایراد کوچک داره که سعی دارم برطرفش کنم و بعدش دیگه perfect!

    و مهمتر اینکه این نخستین نمونه‌ای بود که تکمیل شد. سه چهار مورد دیگه هم هست که به محض تکمیل شدن توی بوق و کرنا خواهم کردشان. اولین مورد وحید خواهد بود. وحید کیه؟ آنان که می‌شناسند که خوب هج، آنان که نمی‌شناسند خواهند شناخت.
    تا بدانگاه،فعلا!

    پ.ن: فعلا رو از شهرام کش رفتم.
    پ.ن ۲: اصلا ایشان(Ringator) کی باشند؟ مانگاخوان عاشق بستنی که یکی از یاران حلقه‌ی تالکین در ایران است!