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

۲ مطلب با موضوع «نکات فنی» ثبت شده است

این روزها خیلی با وردپرس ور می‌رم. یکی از آخرین نیازهایی که پیدا کردم داشتن روتیتر و زیرتیتر بود. چند تا افزونه‌ی پیدا کردم اما فقط یکی از این دو تا رو داشتند. تصمیم گرفتم بگردم ببینم چه جور می‌شه این کار رو کرد، راهی که خیلی‌ها پیشنهاد داده بودند استفاده از زمینه‌های شخصی (Custom Fields) بود. این هک کوچولوست برای این که روتیتر و زیرتیتر رو به وردپرس اضافه کنید.

۱- پیدا کرد تیتر عنوان (تیتر) نوشته در فایل‌های قالب

برای این کار کافی است از فهرست وردپرس به قسمت نمایش (Appearance) و سپس ویرایش‌گر (Editor) برید و فایل index.php رو باز کنید و دنبال تابعی با نام single_post_title یا the_title بگردید.
دو نمونه از کدهای مربوط به عنوان به این شکل زیراند. پس باید کدهای بالا رو پیش و پس از این خط‌ها گذاشت.

<h2><a href="<?php the_permalink();?>"><?php the_title();?></a></h2>

یا این خط:


<h1 class="entry-title"><?php single_post_title();?></h1>

۲- اضافه کردن کدهای روتیتر و زیرتیتر

کافی است کد مربوط به روتیتر را پیش از این دستور و کد زیرتیتر را پس از آن بگذارید. نیاز به توضیح نیست که بسته به نیازتون می‌تونید از تگی غیر از h3 استفاده کنید. استفاده از classهای ticker و subtitle برای اینه که بتونیم از طریق CSS ویژگی‌های لازم رو بهشون بدیم و به تعبیری خوش‌گلشون کنیم.


// The Ticker: Before the main title

<h3 class="ticker">
  <?php
    $Ticker_value = get_post_meta( get_the_ID(), 'Ticker', true );
    if( ! empty( $Ticker_value ) )
      { echo $Ticker_value; }
  ?>

</h3>


// The Subtitle: After the main title

<h3 class="Subtitle">
  <?php
    Subtitle_value = get_post_meta( get_the_ID(), 'Subtitle', true );
    if( ! empty( $Subtitle_value ) )
      { echo $Subtitle_value; }
  ?>

</h3>

  • کربلایی مجید
مشکلی که تو فراخوانی داده ها از دیتابیس داشتم رو تونستم با این قطعه کد حل کنم.

برای پر کردن یک فیلد از روی سازنده ی انجمن به یک اسکریپت در ناحیه ی Default Value نیاز دارید .

برای مثال :

//<code>

$my = & JFactory::getUser();

$db = JFactory::getDBO(); $myid = $my->id;

if ($myid > 0)

{$db->setQuery("SELECT `firstname` FROM `jos_comprofiler` WHERE `user_id`='".$myid."' LIMIT 1");

$result = $db->loadResult(); }

return $result;

//</code>

اسکریپت بالا first name را که در جدول _comprofiler ذخیره شده است را برمی گرداند .

توجه : به جای استفاده از پیشوند jos شما باید از پیشوند واقعی جدول خود که قبلا در Site > Global Configuration > Server. پیکربندی شده است ، استفاده کنید .


  • کربلایی مجید