آموزش طراحی قالب وردپرس #۵(حلقه)

سلام

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

لیست آموزشهای قالب وردپرس

wamp،مرورگر وب و فولدر آموزش ما مثل همیشه باز هستن تا درس شماره ۵ رو شروع کنیم!

نفس عمیق!

در درس قبلی ساخت هدر رو تموم کردیم و حالا میخواهیم بریم پایین!

یک تگ نامرئی(div) زیر هدر میسازیم و id اون رو content می نهیم!!! که معنای محتوا رو میده!

در مجموع جلسه قبل و امروز داریم:

<body>
<div id=”header”>
<h1><a href=”<?PHP bloginfo(‘url’);?>”><?PHP bloginfo(‘name’);?></a></h1>
<h2><?PHP bloginfo(‘description’);?></h2>
</div>

<div id=”content”>

</div>
</body>

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

خوب حالا در content کد زیر را بنویسید.

<?PHP if (have_posts() ) : while (have_posts() ) : the_post(); ?>

<?PHP endwhile; ?>

<?PHP endif ?>

میدونین حلقه چیه؟

حلقه یعنی اینکه تا زمانی که به چیزی که مد نظر ماست برسیم یک کد تکرار میشه!

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

یعنی نوشتیم اگر ( if ) ما پستی (مطلبی) داشتیم برو به مرحله ی بعد اگر نداشتیم برو تا بعد از شرط یعنی بعد از endif !!

حالا در مرحله ی بعد while یک حلقه ایجاد میکنه که تا زمانی که پست داریم یعنی have_posts برقرار است این حلقه تا endwhile میره سر راه the_post رو فراخوانی میکنه و باز برمیگرده!

یادتون هست که گفته بودم هر چیزیو که باز میکنیم به ترتیب میبندیم؟

دلیل اینکه while قبل از if بسته شد هم از اون قانون نشأت میگیره!

خوب میریم و قبل از endwhile تابع the_title رو فراخوانی میکنیم تا مثل درس قبلی که عنوان وبلاگ رو فراخوانی کردیم اینبار عنوان پست یا پست هامون رو فراخوانی کنیم تا داشته باشیم:

<?PHP if(have_posts()): while(have_posts()):the_post();?>

<?PHP the_title() ?>

<?PHP endwhile; ?>

<?PHP endif ?>

کار خودمون رو ذخیره میکنیم و میریم در داشبورد یا همون پیشخوان خودمون تا چند پست امتحانی بدیم!

حتما میدونین که محل پست کردن مطالب جدید در این آدرس است:

http://localhost/wordpress/wp-admin/post-new.php

بعد از اینکه دو،سه تا پست دادیم میریم ببینیم سایتمون در چه وضعیتی است!

در این عکس صفحه ی ما تا اینجای کار رو میبینید به همراه تابع هایی که در کنار هر کدوم از اثرات خودشون با رنگ قرمز مشخص شده اند!

و میبینیم که عنوان پست های ما پشت سر هم و بیریخت و… در کنار هم توسط the_title فراخوانی شده اند!

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

حالا ما همونطور که عنوان سایت رو تبدیل به لینک کردیم این کارو با عنوان مطلب هم میکنیم:

<a href=”#”> <?PHP the_title() ?> </a>

با این کار عنوان هامون تبدیل به لینک هایی شدن که همه سر به یک بیابان میگذارند! و آن بیابان # است!

میتونین با ذخیره کردن صفحه و دیدن صفحه سایت این نکته رو تست کنین.

میبینیم که همه ی عنوان ها تبدیل به لینک های به درد نخوری تبدیل شدن که هیچ غ.. نمیکنن!

اما برای اینکه یه غ… بکنن و لینکشون تبدیل به آدرس اون پست بشه از تابع the_permalink استفاده ، و اون رو جایگزین # میکنیم.

این تابع چون تابع php است میدونیم که چه کنیم:

<a href=” <?PHP the_permalink() ?>”> <?PHP the_title() ?> </a>

حله؟

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

نوش جان!

حالالینکهامون درست شدن! میدونین که تا اینجا چی شد؟!

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

حالا با این شکل ناجور چه کنیم؟!

یادتون هست که گفته بودم header چیست و تگ مربوط به اون در xhtml چیه؟

این عنوان ها هم header هستند دیگر!؟

خوب خط کدی که نوشتیم رو بین تگ h میگذاریم تا ابهت یک عنوان رو داشته باشه! اما این بزرگی به عظمت نام و عنوان سایت ما نیست!! پس به جای h1 از h2 که کمی کوچکتر است استفاده میکنیم! سپس save و refresh!!

دیدین چی شد؟

<h2> <a href=” <?PHP the_permalink() ?>”> <?PHP the_title() ?> </a> </h2>

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

در درس بعدی کار قشنگی میکنیم که اونم نشون دادن متن پست های قشنگون است!!

برای این درس فکر میکنم بس باشد.

موفق باشین

مواظبت نمایید!

بابای…

‏35 دیدگاه برای ”آموزش طراحی قالب وردپرس #۵(حلقه)

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

    1. خیلی ممنون از توجهی که دارین!
      آقای برادر به خدا من شاغل و محصل رو با هم یه جا هستم!:D سعی میکنم سریعتر پیش برم اما اگه بشه!!
      در یک جمله چشم! سعی میکنم

  2. سیاوش دمت گرم، من که شخصاً خیلی دوستت دارم، البته دل به دل راه داره نه؟؟؟
    در یک جمله ی مشهدی خیلی جیگر طٍلایی برار!!!
    مواظبتِ خودت باش…

  3. با سلام
    من یک فروم ساختم که فعلا آدرسش این هست: http://www.travian.parsbox.com
    مایلم آن را با شما اشتراک بگذارم و بخشی خواست را به شما و سایت شما اختصاص بدهم. اگر شما هم به این امر مایل هستید از طریق ایمیل من را در جریان بگذارید.
    این موضوع باعث جلوگیری از قرار گرفتن نظرات بیهوده و پرششی و کلکل های بی مورد می شود.
    اگر مایل هستید این نظر را پاک کنید و تایید برای نمایش نکنید.
    من منتظر پاسخ شما هستم :d
    با تشکر

    1. بهادر جان من که کسی نیستم بخوای بخش بهم اختصاص بدی اما اگه خواستی از سایت استفاده کنی مانعی نداره و من نه تنها مشکلی ندارم خیلی هم خوشحال میشم افراد بیشتری از این مطالب استفاده کنن 😉

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

        1. آره ولی فکر کنم اولین زمینه ی پیشرفت یک سایت و فروم اینه که واقعا سایت باشه! به نظرم یک هاست و دومین اختصاصی که این روزها خیلی هم گرون نیست تهیه کنید. منم هر فرومی بگی عضوم اما کلا ۳۰ تا پست هم ندادم چون خیلی سرم شلوغه
          موفق باشی

  4. چرا وقتی این کد رو اجرا می کنم‘ این پیغام رو میده؟
    Object not found!

    The requested URL was not found on this server. The link on the referring page seems to be wrong or outdated. Please inform the author of that page about the error.

    If you think this is a server error, please contact the webmaster.
    Error 404
    localhost
    ۰۷/۲۳/۰۹ ۰۹:۵۷:۵۶
    Apache/2.2.11 (Win32) DAV/2 mod_ssl/2.2.11 OpenSSL/0.9.8i PHP/5.2.9

    1. یعنی فقط با تمی که شما ساختی مشکل داره یا اصلا وردپرس رو هم لود نمیکنه؟! به نظرم اشکال از برنامه ی wamp یک بار پاک کنید و دوباره نصب کنید شاید درست شد!

  5. سیاوش جان بابت دیشب متاسفم!یه سوال پست جدیدی که مینویسم جای پست قبلی رو میگیره یعنی تو سایت یه پست بیشتر ندارم اونم آخرین پستی که نوشتم!؟راهکار؟

  6. با سلام و خسته نباشید. بابت این آموزش خوبتون. اجرتون با امام زمون.

    فقط توضیح ندادید که من این خط کد را کجا قرار بدهم ؟داخل حلقه ،بیرون یا بالای حلقه.

    ”& gt ;

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

  7. خب این درس رو هم یاد گرفتیم فقط به نظرتون بهتر نیست برای برجسته شدن عناوین مطالب از h3به جای h2استفاده کنیم
    چون اگه یادتون باشه قبلا از h2برای نمایش توضیحات استفاده کردیم

    1. این تگ ها کاربردی که خیلی مهمه در موردشون برای موتورهای جستجو هست، باید سعی کنیم تیتر های اصلی بزرگتر و تیترهای بعدی به ترتیب h2 h3 و … باشن

  8. نظرتون راجع به طراحی قالب
    با برنامه artsteer
    چیه؟>؟؟
    جمولا
    وردپرس
    نیوک و …
    همه رو داره
    کامل کامل

    ولی من میخوام یاد بگیرم

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

  9. سلام استاد
    به خدا همه ی کد ها رو خودم نوشتم،اصلا تقلب(کپی) نکردم ولی بازم هیچ پستی رو نشون نداد ؟!!!! کمکم کن تو رو خدا .

    1. خب فقط اون دلیلش نیست که:)) دقت کن، خط به خط چک کن، اگه نفهمیدی چیه جریان بفرست برام همه چیو ، استادم خودتی:))

  10. متاسفانه من از این درس چیزی نفهمیدم اگه ممکنه مثل درسهای قبلی کدهایی را تا اینجا نویشتیم را یکجا بیارید عالی میشه

  11. سلام
    تابع the_post چه کاری انجام میدهد the_title , عنوان رو لود میکنه , the_content هم محتوای پست , پس the_post چه کاری انجام می دهد ؟ تشکر

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

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

    Parse error: syntax error, unexpected T_ENDIF in C:\wamp\www\wordpress\wp-content\themes\amoozesh\index.php on line 35

    لطفا راهنمایی بفرمایید
    ممنون از زحماتتان

    1. سلام، خواهش میکنم 🙂
      مشکلات اینجوری که براتون پیش میاد کافیه قسمت اولش رو سرچ کنین تا مشکل رو پیدا کنین مثلن در این مورد باید عبارت
      Parse error: syntax error, unexpected T_ENDIF
      رو سرچ کنین ببینین مشکل از چیه معمولن مشکلاتی از قبلی جا انداختن } { ها یا درست باز و بسته نکردن باعث این ارور ها میشه کدتون رو چند بار بررسی کنین و مشکل رو پیدا کنین

  13. سلام خسته نباشید
    درسته که مدت زیادی از انشار این اموزش میگذره اما من تازه رسیدم بهش و فقط خواستم بگم دمت گرم خیلی مغز داری چون انتقال داشته هات به دیگران رو به نحو احسن پیاه کردی داداش… الانم هرجا هستی موفق و سربلند باشی

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد.